程序员水平的5个层次!

2021-05-31 10:08:28 浏览数 (1)

最近总有粉丝问我,程序员进阶,核心要做些什么?感觉每天都有很多重要的事要做,但总结下来发现什么都没做到很好。

正好最近阅读时看到个有趣的观点,一会儿跟大家分享一下。首先带大家简单了解下马斯洛需求理论。

马斯洛需求层次结构从下往上,分为:生理(食物、空气、睡眠等),安全(稳定、受保护、有秩序等),归属和爱(社交、感情),尊重(自尊、尊重他人),自我实现(完善能力、潜能)。

据介绍,这种五阶段模式可分为不足需求和增长需求。前四个级别通常称为缺陷需求,而最高级别称为增长需求。

马斯洛认为需求层次越低,力量越大,潜力越大。随着需求层次的上升,需求的力量相应减弱。高级需求出现之前,必须先满足低级需求。

这个理论同时也告诉大家:人在每一个时期,都有一种需求占主导地位,而其他需求处于从属地位。

而有趣的是,有工程师发表了一个观点提到:代码质量也可以用类似方式衡量,从下往上分为5个层次。

就像在马斯洛的金字塔中一样,每一层都需要上一层。衡量代码的质量,不是单一维度就能判断的,代码应该也要分层级:

正确

代码是否可以如期执行?是否考虑到了边缘情况的解决方案?

是否经过开发自测以及QA充分测试,确保其他工程师修改代码后也不会出大差错?

对于测试用例,这段代码的性能是否足够好?

undefined

安全

代码是否存在漏洞?数据是否安全存储?

用户信息是否正确处理?代码是否可用于诱发DOS?

输入验证是否足够全面?

可读

代码是否易于阅读和理解?实现是否符合产品需求?

测试是否足够简洁?变量、函数和类的名称是否恰当?

优雅

代码使用的是否是众所周知的模式?是否用相对简单、简洁的方式满足需求?

写完这段代码是否让你感到兴奋或者有成就感?

利他

其他工程师是否能从这段代码里学到东西?是否能激励其他工程师改进他们的代码?

是否会清理无用代码、改进文档、通过小规模重构引入更好的模式?

程序员进阶之路漫漫,需上下而求索。

0 人点赞