首先讨论下,有多少实际工作经验叫老程序员呢?我这里定义5年吧,毕竟我才在公司开发了5年多点.(真真实实的开发了5年多,极少出差,一坐一天的开发.毕业前两年没从事开发,不算)
我写的博客关于具体的技术,实现的详细说明或代码的方式写出来的极少.因为我擅长的只是.net,桌面开发方向,新入行的程序员web开发或app开发等都比我技术NB.
但是,但是,我的优势在哪里?我认为我这5年多工作经验,最大的优势就是养成了程序员的工作习惯或工作态度及解决问题的办法.
比如,我在公司接手一个新的项目,我首先会在电脑上建一个这个项目的文件夹,然后分门别类的把涉及这个项目的所有资料,都放在一这个文件夹里.
然后在后续的开发,及修改过程中,我会把自己的分析,及解决办法,业务的理解,客户的需求等等统统记录下来.这样,就算我让其他同事负责这个项目了,他也会有资料看,或者我辞职了,接手的程序员也会很快上手的.假如我去一个新公司,接手一个项目的维护工作,如果没资料,我很难上手的话,我会很快再辞职的.(这对公司来说也是一个很大的损失)
再者,我能坚持写这么多年代码,只有一个原因,那就是我喜欢,享受写代码.这个很重要,很多程序员坚持不下去的原因就是做开发根本没兴趣.
NB程序员还有一个重要的原因,就是善于总结,善于思考技术点.假如思考这么多年的话,关于底层的,很多技术的来龙去脉都会很清楚.也会举一反三进行创新.
今天我突然想到,像C,C++这些程序,编译链接后生产二进制可执行代码,而二进制命令是针对CPU,RAM,IO等硬件的,与操作系统无关,所以可以移植.我是这样想的.
搞C#,我只有一个认识,就横走.net,那就是把引用类型理解成地址变量.
最后,经验的积累,会让我举一反三,更好的解决问题,比如我没学过C++,照样把C++翻译成C#来操作硬件,安装一个ORACLE,报错不断,我不用问别人,而是自己解决.再比如,我没开发过Delphi程序,但是慢慢看代码,也能开懂6,7成.还有,我没有用ado连接过informix数据库,但是我曾经见其他同事用odbc联oracle,那举一反三,也就连接成功了等等
再总结一下,老程序员的优势就在于,这么多年的开发,已经养成了自己的工作(开发)习惯和自己的处理问题的解决方式.
这才是宝贵的,新手程序员无法体会和竞争的优势.
路漫漫其修远兮,技术日新月异的变化,但是,根本的东西都不会变,变的只是表面.精通一门语言,其他都类似.
年纪大了,好记性不如记到电脑上.
我想终身搞开发,搞技术,写代码!
再者,我能坚持写这么多年代码,只有一个原因,那就是我喜欢,享受写代码.这个很重要,很多程序员坚持不下去的原因就是做开发根本没兴趣.
有兴趣想学习web前端的可以来web前端qun“189394454”可以免费获取2018最新web前端学习资料。