新手之路
什么是好代码?好代码是没有止境的,代码的等级层级分为三级。1,初级:可读。可读即让别人知道你写的代码是干什么的,命名是否规范,是否整洁,能不能让人一看就懂,注释是否解释的清楚等。2,中级:可扩展。一段代码写出来不是一成不变的,他要能根据需求的变化而变化。3,高级:可复用。你写的代码是否具有通用性,例如古人发明了轮子,而现在人们使用汽车,飞机等工具,虽然有所改进但都用到了。
编程应该遵守的原则有哪些?1,避免重复的原则。程序员需要做的就是将一些复杂的事务变得简单由机器来执行。如果出现了两个相似的代码片段,我们就要想办法将它提取出来,然后用一段代码来解决多种问题。2,单一职责原则。单一职责原则指的是一个类或者模块应该有且只有一个职责。单一职责是为了将问题简单化、模块化,同时也是为了让你更好的驾驭它。3,高内聚、低耦合原则。内聚指的是一个模块的各个原件彼此的依赖程度,耦合指的是不同模块之间的依赖程度。例如灯泡和开关。灯泡只负责亮与灭,开关只负责通电与断电,这就是高内聚。开关的类型,如手动、光控、声控你根本不需要考虑用它来控制什么,这就是低耦合。
进阶道路
到了进阶阶段,你不在止于做执行,而是要学会思考,能将项目从头至尾进行拆解找到最优的解决方案。同时你也要协调内外部的各做关系,学会与人对接的能力
处于这个阶段的人需具备的能力很多,总的来说应该是解决事务的能力,这不仅仅是项目方面的。做项目要明确自己的目的,避免产生模糊不定的问题,同时能过谋篇布局也是重中之重。处理问题建议从最难的问题,好比上学时期老师布置的作业,你是第一天完成还是最后一天完成的感受一样,如果你是第一天完成,之后的项目推进会非常顺利。管理方面因为公司需求的不同,管理模式也不相同,但大致可以分为三类。第一种是瀑布式开发模式,是一种传统的开发模式,一层一层的开发,缺点就是时间慢,一个项目往往需要五六个月甚至半年。第二种是敏捷式开发模式,由一个高手把框架开发出来,然后让后续的任务拆解成一个个小模块,接着让每一个团队负责其中的一块,最后大家拼在一起。第三种是班车模式。每周发布一次,如果没有跟着一起发就等下一班车。第四种是分布式微服务开发模式。就是将代码库,数据库全部分开,每个服务都由一个全功能的团队来负责。
高手修养
处于这阶段的人在各大论坛生就会发现他们在讨论“做技术还是做管理”“35岁还不管人,是不是晚了”“天天熬夜敲代码没有前途”这类问题讨论的非常多。
其实这类问题很好解决。你已经走过10年左右的路了,在这分岔口的两天路多多少少都已经接触过了,你自己感觉哪一个做的顺手就向着那个方向发展就可以了。
行业大神
里奇--C语言之父。有人说C语言能长久不衰的理由是实际更复杂,壁垒更大,但真正的原因在于简洁。C语言遵循KiSS原则,有许多小程序组成,各个组件中非常灵活,最终聚合成一个完整的项目。托瓦兹--Linux之父,仅仅因为喜欢编程,就创建了Linux,他的人生格言是:为了好玩,快乐至上,它曾经出过一本自传,就叫做《只是为了好玩》。范罗苏姆--Python之父。不必刻意追求完美,足够好就是完美,为此他避免了绝大多数可能失败的设计。玛格丽特--登月计划的拯救者。在飞船丢失数据要毁灭之际,带领团队连夜奋战9个小时,设计出一份全新的导航数据让它回到正轨,化险为夷。梳理错误,明白他们的原因成了她做事的准则。贝拉--天才工程师,一个人便是一个队伍。贝拉从1989年平均每两年就会开发出一个开源软件,在诸多领域中取得了令人惊讶的成就。