等我从家回来时看到还有一个公司在招聘兼职,而且做的项目也比较大,我就去了,很幸运,有一次通过了,我想幸运是一方面,更重要的还是自身的努力吧。可能有人会说我怎么没有呆在之前那个公司呢,我主要是考虑现在是兼职,想多接触一些东西为以后的就业打下基础,而之前的那个公司的技术框架已经很熟悉了,在呆下去学到的东西有限,所以就离开了,当然公司的领带还是很希望我能留下的,呵呵。
来到了新公司,这个项目是上海市公安局治安管理系统,采用的技术架构是struts+hibernate,当时hibernate在国内用的也不是非常多,所以我还是比较早的接触了该框架,这个项目规模非常大,业务逻辑非常复杂。也就是这个项目让我学到了最多的东西。这个项目干到了一半时,项目经理走了,而在公司里面我对这个项目是最熟悉的,无论从技术层次还是从业务需求来说,所以公司领导希望我能负责完成这个项目,这是我第二次负责一个项目,而且这个项目也是一个比较大的项目,自然感觉到肩上的担子更重了,自己也去客户那里谈需求,回来做设计,当时真的感觉每天都非常忙, 但也非常充实,这个时候也是我技术能力提升最大的阶段。经常加班,晚上有时候就在公司睡了,呵呵,因为当时只有一个念头,一定要把这个项目完成好,经过半年多的努力,这个项目终于顺利完成了,项目中java类的数量有400多个,jsp页面有300多个,数据库表有30多个,事后想想自己也真强,这么大项目在自己手上完成,真的好有成就感,呵呵!
我自我感觉我这个人表达能力还是比较强的,在这其中我在上海的不少培训学校担任过培训讲师,主要讲J2EE方面的课程,还给不少公司做过企业培训,比如西门子(上海)移动有限公司,上海华腾软件系统有限公司,浙江人本集团,贵州电力系统有限公司等等,在这期间自己的技术又得到了很大提高,而且表达能力也不断加强。因为你自己会一个东西不难,难的是给别人讲出来,还要讲明白,要将复杂的技术讲的浅显易懂。这期间,我在这方面的能力得到了加强。
其实在上研的2年多时间里,我大部分时间是在外面度过的,很少在学校,自己也确实做了很多事情,可以这么说,计算机系的学生用了4,5年时间学的东西,我用了2年多,而且掌握的还非常扎实,无论从理论的细节,还是宏观的架构,都有一定的积累。这其中的艰辛只有我才能体会到。每个人都不笨,智商也都差不了太多,决定你是否能够成功很大程度上在于你的努力和付出,我是一直坚信这一点。在公司里面时我也发现了很多问题,那就是现在社会上很多都太浮躁了,都太急功近利了。无论学什么都浅尝辄止,不想去深入研究,拿我之前的第一个struts项目来说,其实我从用struts到最后掌握,花的时间并不多,只是由一般的jsp,servlet到struts的过度开始让我不太适应,不过这个阶段过后,后面就一马平川了,为什么这样呢?因为我之前jsp和servlet以及http协议与原理性的东西掌握的很好,这些都是最最重要的基础,可以说任何web框架都是构建在这上面的,有了好的基础再去学习其实会很快的,而且也不会觉得特别困难。但是这些基础的东西是不会给你带来直接的收益的,他们的作用都是隐性的,会在你不知不觉中给你带来帮助。真的是这样的。就像现在很多人上来就struts,hibernate,spring,然后会发现这些东西好难,其实并不是这些东西难,而是你该有的基础还不具备,比如很多人连HttpServletRequest是什么都不知道,request与session是什么关系也不知道,request.getParameter与request.getAttribute也不清楚是什么区别,这种情况就去学那些优秀的框架无异于高中数学还没学就去学高等数学一样,也许你能看着别人的例子自己照猫画虎的做出来,可是一旦让你自己去做你就无法下手了。为什么这样呢?还是基础不行的缘故。甚至有很多人连最重要,最基本的HTTP协议都不了解就敢作项目。所以在这里我希望这些人能静下心来好好学一下基础的东西,原理清楚了再去学习高级的东西是水到渠成的事情。
不知不觉到了找工作的时候了,自己也和很多同学一样每天去笔试,面试到处的奔波,还好我的找工作也还是比较顺利的,签下了现在这个公司,后来又有cisco,hp等公司邀请我去面试,也都被我婉言谢绝了。
不知不觉中写了这么多,也很感谢大家能耐着性子坚持看完,最后我给大家提一些建议,这些建议都是我的切身体会,未必适合每一个人,但是只有能对大家起到帮助的作用我就满足了
1. 基础的重要性。我总是不断强调基础的重要性,因为我是有切身体会的。基础的东西可以让你受用一生。struts出来了,webwork出来,tapestry出来了,jsf出来了,struts2也出来了,等等等等。但是这些框架或者标准都是新东西吗?其实每个人都知道并不是的,他们都是基于HTTP协议的,欢聚换说都是构建在jsp与servlet基础之上的,有很多人连这两个基础都没掌握好,就去学这些框架,这真是难以想象的。有了好的基础会让你学习新东西更快,也更扎实,走的也更远,否则你永远都是在跟着别人的脚步。
2. 还是基础。我们都知道Spring是非常优秀的框架,也是很多公司采用的技术选型。但是你是否真的了解Spring的核心IOC与AOP了吗?适当看些设计模式的书会让你受益匪浅。其实你只要掌握了java的动态代理对于AOP的理解就是自然而然的事情了。
3. 舍得投入。 有时间的话买些书看看,好书可以让你系统的学习一些技术,而不是一些支离破碎的技术点。
4. 抓紧时间。 将游戏的时间控制的少一些,把精力放在学习上吧,如果你想投身it行业,做好不断学习的准备
5. 要有激情。 没有激情的人生是惨淡的人生。生活和学习要有激情,否则你体会不到淋漓尽致的快乐与苦痛。
6. 要有耐心。 没有耐心是无法成为一个优秀的程序员的。其实写程序的时候大部分时间是与错误,异常相伴的,不要幻想一下就能将程序写对,优秀的程序实际上是不断重构的过程。
7. 要能耐得住寂寞。 很多时候我们都是与计算机为伴的,如果你没有对程序的兴趣与热情,时间长了你会坐不住的。
8.英语的重要性,如果你想进外企的话,那么英语是必须要过的一关(主要体现在听说上)。
9. 最后一点,坚持学习。活到老学到老是对程序开发人员最好的描述。
以上就是我的一些学习感悟与走过的路,希望与你共勉!(完)
张龙 2008-9-27
置底广告:大家好,我在Itcast的视频教程已经发布了,名为《Java常见笔试、面试题目深度剖析》,可以到下面的地址免费学习:
http://www.itcast.net/portal/courses/unit/187
部分学员留言:
1)第二讲也听完了,里面的练习也都跟着张龙老师的进度做了思考,做对了俩^0^。最后一个思考题中还展示了考试中会出现的一些陷阱!很好的课程呦!
2)今天,从同学的口中得知了有这样的课程,感到非常的高兴,特别是抱着试听的心态听完了试讲的部分,我就知道我离不开它了,特别是张龙老师抑扬顿挫的讲解,深深的吸引了我,只是我还是一个新的学员,对冲值购买及学习的流程还不太清楚,请多多帮助!谢谢
3)张龙老师讲课的风格真是干脆利落!我非常喜欢。我只有一些计算机基础,但是听这个课我都听明白了,并且里边的练习我都做对了,非常高兴!讲解也很清晰透彻。期待你的下一讲!!
分享到:
相关推荐
从今日起我们将不断接着求索,学习之路也好,人生之路也罢。 七、结语 我们从这次课程设计中受益匪浅。我们学到了C语言程序设计的基础知识和技能,也学到了团队精神和坚持不懈的品质。我们会继续学习和求索,提高...
例如,“人生路长漫漫,五千年火陪伴,恰用火送温暖,如大意受灾难”强调火的两面性,既要利用好,也要防止火灾发生。 总之,这个主题队会方案设计全面,富有教育性和趣味性,旨在让队员们在互动和表演中深入理解...
6. **决策与控制** - “人生静好,谁的时光,掌握在谁的手里”,在编程和系统设计中,用户或程序的控制权至关重要,如何合理分配和管理控制权是设计的核心问题。 7. **承诺与变更管理** - “曾经许下的誓言,说好的...
例如,在学习.NET Framework时,可以通过查阅MSDN文档来了解如何使用System.IO命名空间下的类来进行文件操作。 #### 2. 学习最佳实践 MSDN上不仅包含了技术文档,还有很多关于最佳实践的文章和示例代码。这些资源...
吕鑫老师MFC教学视频,随书附赠光盘内容,包含教学视频,测试代码
7. 工作流设计器的重新托管(Chapter 10: Rehosting the Workflow Designer):WF 4.5提供了对工作流设计器进行重新托管的能力,允许开发者在自己的应用程序中集成工作流设计器,提供更加灵活的用户体验。...
在实际开发中,结合`jstack`和TDA,我们可以定期收集线程堆栈,分析应用在高负载或特定条件下的行为,及时发现并修复潜在的问题。这不仅可以提升应用质量,也有助于提升开发团队的故障排查能力,减少因多线程问题...
SiteMesh 是一个开源的 Web 应用程序框架,主要用于页面布局和装饰,它可以帮助开发者创建一致的用户界面,实现页面的统一布局。SiteMesh v2.4.1 是该框架的一个稳定版本,提供了许多增强的功能和修复了已知的问题。...
例如,当产品用于室外、潜在的化学污染或电气损害环境中,或者在产品样本和操作说明书等资料中未记载的条件和环境下使用时,必须与制造商的营业人员协商,并在按照设计书等资料进行确认的同时,对产品的额定值和性能...
计算机工作原理
Java从入门到精通
AP微观经济学总结