
一、对于参加工作1年到2年的程序员
这部分时间段的同学,已经对Java有了一个更加深入的了解。但是对于面向对象的体会可能还不够深刻,编程的时候还停留在完成功能的层次,很少会去考虑设计的问题。
于是这个时候,设计模式就来了。我当时看的是《大话设计模式》这本书,并且写了完整版的设计模式博客。因此,我要求大家,最多在你工作一年的时候,必须开始写博客,而设计模式就是你博客的开端。
这一年,你必须对于设计模式了如指掌,《大话设计模式》可以作为你的开端。
此外,设计模式并不是你这一年唯一的任务,你还需要看一些关于代码编写优化的书。比如《重构 改善既有代码的设计》,《effective java》。
总而言之,这个阶段,你的核心任务就是提高你的代码能力,要能写出一手优雅的代码。
二、参加工作2年到3年的程序员
有的同学在这个时候觉得自己已经很牛逼了,于是忍不住开始慢慢松懈。请记住,你还嫩的多。
这个阶段,有一本书是你必须看的,它叫做《深入理解Java虚拟机》。这本书绝对是Java开发者最重要的书,没有之一。在我眼里,这本书的重要性还要高于《Java编程思想》。
这本书的内容是帮助你全面的了解Java虚拟机,在这个阶段,你一定已经知道Java是运行在JVM之上的。所以,对于JVM,你没有任何理由不了解它。
另外,在过去2年的工作当中,你肯定或多或少接触过并发。这个时候,你应该去更加深入的了解并发相关的知识,而这部分内容,我比较推荐《Java并发编程实战》这本书。只要你把这本书啃下来了,并发的部分基本已经了解了十之六七。
与此同时,这个阶段你要做的事情还远不止如此。这个时候,你应该对于你所使用的框架应该有了更深入的了解,对于Java的类库也有了更深入的了解。因此,你需要去看一些JDK中的类的源码,也包括你所使用的框架的源码。
这些源码能看懂的前提是,你必须对设计模式非常了解。否则的话,你看源码的过程中,永远会有这样那样的疑问,这段代码为什么要这么写?为什么要定义这个接口,它看起来好像很多余?
首先一点,其实不单单是C++,很多其他语言类编程人员,也会有同样的迷惑。
比如我一个同事,原来是做java网站后台的,偏向某一类业务,写了两年代码,来来回回都是那些业务流程,基本的java架构,反复的使用,然后就开始疲惫,觉得java就那么回事,学不到什么东西。
我正好需要做一些java网站类的项目,就询问他,比如做一个在线的设计网站、一个在线地图网站,会不会?
他说,这些很多呀,去某某网站找源码,很多的。
交代一下背景,他现在转学C++,入门级别,很痛苦的感觉,因为真正的工作中,实际上更多的,还是涉及更多的所谓“业务”的东西。假如一个人,从来都是在做别人分配的任务,写一辈子类似的代码,那么,终究结果都是一样的。
那么,如何改变这种状况呢?
首先,你要想着去改变。而不是像我上面描述的同事那样,从一个语言跳到另一个语言,就觉得自己改变了。你可以多一种选择,但请不要随意将你曾经抛弃的东西,认定为无用的东西。
Linux C++可学的内容很多,基本的文件管理、多线程、IO以及网络编程等等,看题主的问题,很可能是受到项目的影响与局限,甚至于,题主可能不是那么主动愿意去探索新事物的人。那既然题主提出来了迷惑,证明题主还是有一定的自省能力的。
第一,尝试新的。题主说没做过界面编程,又说自己想做独立项目。那么一个完整的界面开发必不可少,为什么不去尝试写一写呢?QT、wxWidgets等等都是不错的界面开发库,你可以尝试去搭建这些环境,去写一点,说不定就会喜欢上。python,gtk等等等等,实在太多。
第二,不要刻意去抉择C还是C++。语言的东西,本质上共通,学语言,主要是思维方式。光针对一个语言,学语法、词法,不做其他尝试,和没学没什么区别。语言毕竟只是工具,真正培养的,是你的整体架构思维,是你对自己认知的清理、整理。
第三,其实题主的路很明确,只是缺乏执行力。
祝题主早日动起手来,写下自己独立项目的第一行代码。
哪怕只是“Hello World!”
以上就是关于Java工作两年需要掌握什么技术或者说需要会什么全部的内容,包括:Java工作两年需要掌握什么技术或者说需要会什么、2013毕业工作两年多的c/c++程序员的迷茫、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)