那些年薪40W以上的优秀程序员,所共同具备的12个要点

作为Java小白究竟该如何才能成长为一名年薪40W的大牛而不是一个优秀的码农呢?下面的12个要点可以让你在众多Java开发人员中脱颖而出。

1.扎实的基础和深刻理解 OO 原则

对于Java程序员而言,扎实的基础是不可或缺的,基础的牢固程度决定了Java这条路你能走多远,所以要掌握并精通Java基础知识。在Java中,面向对象思想是这门语言的核心,所以重点是要深刻理解Object Oriented Programming(面向对象编程)这一概念。但是只学习OO(面向对象)原则的定义用处并不大,关键是要领悟面向对象语言的思维方法,要学会如何应用这些原则并运用面向对象的方式去设计解决方案。

因此,我们应该对对象建模、继承、多态、封装、设计模式、多线程及并发有一个全面的学习与掌握。

那些年薪40W以上的优秀程序员,所共同具备的12个要点_第1张图片

2.掌握核心API

如果你不知道语言结构和核心API(目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节),那么即使你在理论知识上再怎么彪悍也是独木难成林。

在Java中,我们最好能对核心API,如I/O、异常、集合、泛型、线程、JDBC等有很强的实战经验。要是涉及到Web应用的开发,无论你使用的是对Servlet有多大关系的框架,JSP都是必须的。

3. 保持编程习惯

保持编程习惯,即动手能力。陆游曾说过,“纸上得来终觉浅,绝知此事要躬行”。从理论上想出一个解决方案很简单,但是真到了实施的时候,才会意识到问题有多难实施中,在所有的bug和error都搞定之前,有很多的编译工作要做。此时,你才会明白编码过程中存在的语言限制,从而设计出最好的实践方案。因此,保持编程习惯,也就是说要坚持不懈,要有韧性,要勤于动手练习。

那些年薪40W以上的优秀程序员,所共同具备的12个要点_第2张图片

4.阅读开源框架的源代码

好的开发人员总知道如何使用框架,当然成长为这一步必须有前期的积累,对框架的掌握熟练,这些也是远远不够的。如果你想成为一个优秀的开发人员,那么你需要研究各种成功和流行的框架源代码(如:核心框架Spring,MVC框架Spring MVC,ORM框架MyBatis,Spring Boot等),去了解它的内部工作机制和最佳实践形式,这是一种高效的使用框架的方法。

5.了解相关技术的发展趋势

在开源环境中,软件开发技术总是在不断发展变化。现在所谓的新框架,可能很快就会过时,甚至于淘汰。所以要学会不断进步,持续给自己充电,除了掌握现有的框架并熟悉工作机制以外,多多关注新的框架的衍生,例如Spring MVC,Spring Boot。在技术的迭代中,很有可能当前框架上解决不了的问题,可能在新框架上就不再是问题。所以要时刻注意着新事物的诞生和旧事物的消亡。

6.了解不同的开发方法

熟悉不同的开发方法,例如Agile、SCRUM、XP、Waterfall等等。现在,选择哪种开发方法是由客户说了算的。有的客户偏好Agile,而有的则更喜欢Waterfall模型。所以对各种方法都能有所涉猎绝对让人刮目相看。

那些年薪40W以上的优秀程序员,所共同具备的12个要点_第3张图片

7.编写程序文档

许多程序员认为代码才是最关键的,但是在代码旁边添加恰当合理的注释会提供很大的便捷,无论是对自己还是对后来人。如果不添加注释,很多自己写过的代码,过一段时间返回去看的时候,很可能自己都不知道是什么,或许有一点模糊的印象,但是要庆幸是你自己写如果是别人写的,又如何看得懂。这应该是工作中的一个小习惯的养成,这样不仅方便自己,对公司也有益。

8.全局性思维

就算你是普通的Java工程师,如果你想要成长的话,就要把自己从代码的世界,从螺丝刀的位置抽出来,置换到全局思考的位置,锻炼自身的全局性思维。

因为现代项目的开发,很少说只用到一两种技术的,特别是移动互联网大潮下。随便一个互联网项目中用到的技术,就会需要用到后端开发、前端开发、界面设计、产品设计、数据库、各种移动客户端等等,甚至一些比较前卫的项目,可能会用到Single Page Application、Web Socket、HTML5/CSS3这些技术,还有像第三方开发像微信公众号微博应用等等。

所以说一个现代化的项目,是一个非常复杂的构成,对于一个团队特别是互联网企业来说,有一个全局性思维的人非常重要。

9.学习能力

学习能力的定义很广泛,在此我们所说的学习能力就是把新知识融入已有的知识、从而改变已有知识结构的能力。

作为一个Java工程师,学习能力是你的核心竞争力。

如今互联网技术发展太快,基本每3年就更新一次,要想不被淘汰,你应该不断地学习新知识,努力提升学习能力,保持技术水平能跟上技术革新的步伐。

那些年薪40W以上的优秀程序员,所共同具备的12个要点_第4张图片

10.关注主流技术论坛

我们并非踽踽独行者。很多人都和我们一样在研究着相同的技术。只是对某个框架概念做验证是不难的,但是当你将这些概念应用到实际的项目中时,那么各种各样的问题,各种在官方文档上找不到解决方法的难题就会接踵而来,所以我们有必要订阅相关的技术社区论坛来拓展知识的宽度以及深度,以便我们在遇到技术难题时能很快获得解决办法。

下面我们推荐一些比较主流的技术社区。

国内的推荐:

51CTO技术论坛 http://bbs.51cto.com/ 聚焦企业级IT技术及应用。

博客园 https://www.cnblogs.com/ 有些优秀的博客可以关注,质量挺高的

CSDN论坛 http://bbs.csdn.net/home 拥有全球最大的中文IT技术社区。

开源中国社区 http://www.oschina.net/ 有开源软件库、代码分享、资讯、讨论区。

国外的推荐(英文要好哟~):

http://www.github.com 找开源项目必去的网站。

https://stackoverflow.com/ 这是一个与程序相关的IT技术问答网站。

11.追博客并附上自己的评论

正如前一点所说的,并不是孤独的技术者。成千上万来自世界各地的技术爱好者将他们的技术见解发表在博客上。在博客上我们可以找到很多相同技术的不同观点。有人会觉得这是一个强大的技术功能,而有的人可能会觉得这是一个愚蠢的框架,仁者见仁智者见智。所以对于同一种技术你会在博客中听到两种不同的声音。看到好的博客可以写点自己的看法回复在评论上。通过这样的交流,不同意见的交换,不同想法的碰撞,一点点促使着你的进步,逐步积累,要相信量变势必会产生质变的。

12.学会总结

学会总结,总结我们学习到新的东西,新的做事方法、实践形式和架构理念。可以将这些想法记录到文档或者博客中,分享给大家,也可以以写日记的方式记录。

因为你现在解决问题的方法可能正是世界上另一个角落另一个开发人员“寻寻觅觅上下求索”的难题,你的分享将完全不亚于一场久旱的甘霖。

总而言之,想向上发展成为一名优秀的Java工程师,就不单单是敲代码,需要学会思考很多方面的问题,例如善于总结问题并提供解决方案,认真与PM交流需求等等,这些都是一个优秀的Java工程师所具备的条件。

你可能感兴趣的:(那些年薪40W以上的优秀程序员,所共同具备的12个要点)