![99531398ac3465efa74f1bc204b237c3.png](https://i-blog.csdnimg.cn/blog_migrate/d4bd7753aaadc4f27565e5c70f70713a.jpeg)
Linus大神21岁就写出了Linux内核的雏形,缔造了一个自由主义的开源世界;张小龙28岁写出了foxmail,在2000年就卖出了1200万的价格;今天介绍的虽没有这两位如此的闪耀,但他的这些建议却远远比听这些名人成绩有价值多了。
前言
最近确实很迷茫,由于各种原因吧总是感觉自己在编写代码这一块儿如果不加紧练习的话可能确实就out了,因为入职的公司大多都是二次开发,而项目使用的框架也都是比较老旧的,说实在的,要不是因为给的薪资还算可以根本不想在这儿呆下去,时间一长如果自己不能坚持学习的话,那以后跳槽都不敢了,因为对一些新技术真的没有多少实操的经验,所以平时也会看一些前辈们的总结经验来让自己充实下,也希望对和我一样状态的有帮助,我们共勉!
![0d734bf3ac1f484a04d4960047edb18e.png](https://i-blog.csdnimg.cn/blog_migrate/71770ef2b5b249f74840db4f91f12d5c.jpeg)
好代码长什么模样
好的代码并不需要有多炫,它往往循着最简单的原则:简洁、逻辑清晰、函数职责单一、合理的数据结构设计,易于阅读和维护。
华为的徐宏伟已经撸了十几年的代码了,他总结到所谓的代码简单并不是代表没有思考,恰恰相反,更需要我们在写代码之前谋定而后动、三思而后行。人们常说唯一不变的就是变化,客户需求一直在变化,我们的代码也会被动或者主动地在变化。设计出可扩展、自动适应客户需求变化的软件架构,是软件工程师永恒的追求。这说说容易,做起来却很难。需要我们不停积累业务知识,扩展知识面,勤于思考,识别技术未来演进趋势。我们无法从一开始就做一个无所不能的架构,来包含未来的千变万化,即使能,交付节奏也不一定允许。满足当前及未来一定时间内业务需要的设计,或许就是最合适的。
练好扎实的基本功
一个好的程序员并不是说多么的会写代码,会写代码仅仅是工作中需要的一项技能,而这项技能的根本来源还是要靠扎实的基本功。
就像华为撸代码的工程师徐宏伟所说:“去年底,我跟部门几个软件高手一起,去外部参加了一次互联网架构大会。AI、区块链、物联网、云、中间件等时尚、热点、风口相关的议题非常多。但是我没想到,最火爆的却是一些基础软件设计、架构设计和演进之类的专题。就像武侠小说写的一样,练好基本功、练好内功,后续无论什么精妙招式,都会信手拈来。”
保持对于新兴技术的好奇心
作为一个程序员,除了要提升自己的基础软件能力,我们也要始终保持对于新兴技术的好奇心,孜孜不倦的追求,不断拓宽自己的视野。而这方面的能力和诉求,在5G时代更是如此。
当前华为5G面临的网络安全问题,虽然有着很大的政治因素,但也从侧面反映了5G的战略意义。超高速率、超大连接数、超高可靠低时延,对我们在软件处理时延、可靠性、安全、韧性等方面的能力都提出了更高的要求。同时,5G承载的垂直行业应用、接口开放和硬件“白盒化”等趋势,也必将对我们当前的知识和技术体系,提出更大的挑战。
而华为通过五年的时间,全面提升软件工程能力,对徐宏伟这样撸了十几年代码的工程师是考验,也是机会。统一编程规范、整洁代码、整洁优雅的架构,不同的人有不同的追求,需要我们有持之以恒、水滴石穿的决心。五年或者十年后,当我们回首时,会发现自己曾经的付出是值得的。正如,清代著名学者王国维提出的读书三境界之第三境:“众里寻她千百度,蓦然回首,那人却在灯火阑珊处。”
结语
程序员的自我修养是需要不断的去加强的,也许我们绝大多数人终其一生也无法成为Linus、张小龙这样的大神,然而,我们能够做一个有修养的程序员,去因为我们的一些小的习惯去改变别人、甚至改变一个行业的规范,这是何其幸哉。