课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
我们在上文中给大家简单介绍了高级程序员的职业能力等内容,而今天我们就在来了解一下,成为高级程序员需要哪些条件。
1、打造自己的“T型”专业技能
可能很多人都听过“T型人才”的概念,我们程序员在专业技能的打造上也适合用这种模型。
但是对于“先竖再横”还是“先横再竖”可能不同的人有不同的看法。
我的观点是,大多数情况下,先竖再横。特别是某个技术、领域发展得越成熟,越应该如此。
因为很多事物的本质是一样的,所以对某一个领域达到非常深入,洞察到一些本质的东西之后,对其它相邻的领域有触类旁通的效果。可以加速自己在“广度”上的扩展。
2、“设计”代码而不是“写”代码
一般人可能拿到需求,就开始写代码了,写着写着由于页面功能越来越多,感觉代码越来越复杂,自己都会觉得难以维护了。
虽说要做好设计离不开大量的实战经验的积累,但还是有些方法可以让塑造这个能力的过程更快一些。比如:
先就是前面提到的一点,多关注业务。不了解业务,你啥都设计不出来,或者把马设计成了驴……
如果某个功能的开发/修改,以“天”为工时单位,一定要先画图。
搞明白每个设计模式的特点和适用场景,注意,不需要把代码怎么写背下来。只要你每次写代码之前扫一眼设计模式的列表,看看有没有适用的。如果有的话,再去“依样画葫芦”按照设计模式去实现,经过时间的积累,慢慢地,你真正掌握的设计模式就越来越多了。这有助于锻炼你的设计能力。
3、“接”需求之前会先“砍”需求
要做这点还得依赖于一点,否则,你提出的“砍”需求建议大多是不会被采纳的。
很多人在听需求讲解的时候,思考的是,这个功能能不能实现、怎么实现、难不难。大多数的提问也是基于这个思路展开的。
可能也会提出“砍”需求的问题,但是理由大多是这个实现起来太麻烦了,这个没法实现之类。
其实只要你时刻保持着“做这个需求的目的是什么”这个问题去思考,“砍”需求会变成一件更容易成功,而且自然而然的事情。
4、解决一类问题而不是一个问题
很多人觉得,每天看到bug清完就万事大吉了,哪怕同一个问题在生产环境出现多次,多也就说一句“不会吧,怎么又出问题了”。
这种对待问题的方式只会让你越来越忙,因为你的解决问题效率与投入的时间多少是成同比变化的。
我们要习惯于解决掉一个bug之后,想一下能否通过什么方式找到现有代码中的同类问题,并把它们处理掉。
甚至是考虑有没有什么办法能够一劳永逸地避免此类问题再次发生,比如封装一个SDK或者写一个组件,尽可能用一种低侵入的通用方式将问题扼杀在摇篮里。不但让自己轻松了,也造福了大家。
5、选择忍受某些问题
在人工智能还不能代替我们coding之前,我们永远要亲自面对无穷无尽的、这样那样的问题。
然而,任何事物都有两面性的,一个方案在解决一个老问题的同时,总会带来新的问题。所以,我们一定要意识到,忍受某些问题是必然的。
那些你现在看起来很傻逼的设计,可能就是当时的人做出的妥协。
所以,既然如此,你更应该考虑的是,当前的这个问题现在到底有没有必要解决?值不值得,为什么之前没去解决?它是不是你当前所有待解决问题列表中优先级高的?
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请在707945861群中学习了解。