程序员高手和菜鸟,不仅仅是技术上的差距,还体现在习惯、经验、看问题的角度等各个方面。
1.代码规范:代码写得不好,其实一眼就能看出来;辩好比如代码里面的各种命名(包、类、方法、变量等等)。在最初写程序的时候,很多人都会起没有含义的变量命名,比如 String str其实我们完全可以把变量名称起成带业务含义的,比如在运用中慢慢发现用String username我们会越来越熟练,写的也越来越好。
2.经验:软件开发,经验还是很重要的。一是技术上的积累,高手技术的广度和深度都会比较强一些;当遇到一个问题,高手会想到N种解决方案,然后再选择出一条最适合的,而菜鸟可能就一条路走到底了。二是积累业务知识,对项目的理解程度会更深;接到一个需求,高手可以快速的想到到需要修改哪些地方,而菜鸟还需要重新处理一遍程序吧。
3.善用工具:很多时候,我们会依靠一些辅助的软件去帮助我们完成一些“体力劳动”。高手程序员对IDE更熟悉,熟悉每一个快捷键,进而开发效率会更高。高手程序员有更完善的代码库,有时候开发一个功能租正,直接从代码库里面Copy出来就好了。高手程序员有更多顺手的辅助软件,比如对比两个文件夹内所有文件的不同之处,我们只要用beyond compare一弊灶悔对比,就能得到答案。
4.心态:不和需求或者产品经理吵架,是一个高手的必须课;不和测试吵架,是一个高手的必修课……高手不是一日养成的,菜鸟也不会一辈子都是菜鸟。与各位共勉,共同进步。
刚做了一年开发我是做cobol语言IBM大机这方面的。圆袭
经验:1.善于总结。2.向比自己强的人学习。3.有一个目标。(你不可能做一拿腔宏辈子PG吧,我现在的目标就是尽快考过日语二级然后跳槽到北京IBM或北京CSC公司)。
4.说消册实话什么语言无所谓只要你掌握的好做的精,不用担心以后没饭吃。
呵呵,楼主一看应该是做过开发的,如果我没猜错的话。
程序员是从事程序开发、维护的专业人员。一般我们将程序员分为程序设计人员和程序编码员,但两者的界限并不非常清楚,特别是在中国。作一个真正合格的程序员,应该具有的素质。
1:团队精神和协答滑穗作能力
团队精神和写作能力是作为一个程序员应具备的最基本的素质。软件工让宴程已经提了将近三十年了,当今的软件开发已经不是编程了,而是工程。独行侠可以写一些程序也能赚钱发财,但是进入研发团队,从事商业化和产品化的开发任务,就必须具备这种素质。可以毫不夸张的说这种素质是一个程序员乃至一个团队的安身立命之本。
2:文档习惯
文档是一个软件系统的生命力。一个公司的产品再好、技术含量再高,如果没有缺乏文档,知识就没有继承,公司还是一个来料加工的软件作坊。作为代码程序员,必须将30%的工作时间写用于技术文档。没有文档的程序员势必会被淘汰。
3:规范化的代码编写习惯
知名软件公司的代码的变量命名、注释格式,甚至嵌套中行缩进的长度和函数间的空行数字都有明确规定,良好的编写习惯,不但有助于代码的移植和纠错,也有助于不同技术人员之间的协作。 一些所谓的高手甚至叫嚣高手写的代码一般人看不懂,我只能说他不是一名合格的程序员。
4:需求理解能力
程序员要能正确理解任务单中描述的需求。在这里要明确一点,程序员不仅仅要注意到软件的功能需求,还应注意软件的性能需求,要能正确评估自己的模块对整个项目中的影响及潜在的威胁,如果有着两到三年项目经验的熟练程序员对这一点没有体会的话,只能说明他或许是认真工作过,但是没有用心工作。
5:模块化思维能力
作为一个优秀的程序员,他的思想不能在局限当前的工作任务里面,要想想看自己写的模块是否可以脱离当前系统存在,通过简单的封装在其他系统中或其他模块中直接使用。这样做可以使代码能重复利用,减少重复的劳动,也能是系统结构越趋合理。模块化思维能力的提高是一个程序员的技术水平提高的一项重要指标。
6:测试习惯
测试是软件工程质量保证的重要环节,但是测试不仅仅是测试工程师的工作,而是每个程序员的一种基本职责。程序员要认识测试不仅是正常的程序调试,而要是要进行有目的有针对性的异常调用测试,这一点要结合需求理解能力。
7:学习和总结的能力
程序员是很容易被淘汰的职业,所以要善于学习总结。许多程序员喜欢盲目追求一些编码的小技巧,这样的技术人员无论学了多少语言,代码写起来多熟练,我们只能说他是一名熟练的代码民工,他永远都不会有质的提高。一个善于学习的程序员会经常总结自己的技术水平,对自己的技术层面要有良好的定位,这样才能有目的地提高自己。这样才能逐步提高,从程序员清卜升级为软件设计师、系统分析员、项目经理。
作为高级程序员,乃至于设计师而言,除了应该具备上述全部素质之外,还需要具备以下素质:
1、 需求分析能力
2、 整体框架能力
3、 流程处理能力
4、 模块分解能力
5、 整体项目评估能力
6、 团队组织管理能力
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)