最近一直在加班,做一家全国 top 10 高校的项目,深深体会了面向领导编程的「快乐」。A 领导看完,需要改动这些东西,添加哪些需求。改完之后,A 给领导 AA 看,需要改动什么,要求今天改完,明天开会给 AAA 看。


最 high 的是,想让 AAA 大领导直接看,把问题都提出来,一次性改完,那是不可能的。


带着这份「快乐」,心里还是惦记着手上那个烂代码的项目,一心就想把它重构好。有缘遇见,善始善终,最好搞出一款开源工具;然后换个起点,刷一波技术栈,开始新的征程。


每每看到这些烂代码,就会想到烂的反面,什么是好代码?好坏代码的评判标准是什么?可维护性、可读性、可扩展性是三个最重要的指标


如何提高代码的可维护性、可读性、可扩展性?这里就涉及到了代码规范、设计原则、编程风格、设计模式、代码重构。


看了 2 本书,GOF 的《设计模式》、《HEAD_FIRST设计模式》。第一本是设计模式的开山之作,它的诞生比 Java 还早,所以书中例子用了 C 和 Smalltalk 语言编写,桌面应用为主;这次反倒觉得《HEAD_FIRST设计模式》更容易理解一些,吸收更多。


刷了 3 遍《设计模式之美》专栏,梳理的很清楚,且有实战案例,让写出高质量的代码变得有章可循。最大的收获恐怕是,坚持打卡第五名 + 评论点赞 top 3,被极客时间退回了购买专栏的钱(笑晕)。


在学习这块内容的时候,我还思考了一个问题:如何才能记住,并且理解更深刻,融入自己的代码中?


我觉得,仅仅是看书、理解理论、写设计模式的模板代码是不够的,所以我更热衷于在实际的开源代码扒出设计模式的应用,了解了大师们的实战玩法,就可以照猫画虎了。


工作以来,第一次花大精力去完整地、系统地去学习与探索一块知识。感觉最大的收获就是,阅读源码更轻松了,明白了作者为什么这样设计代码的用意。


一图胜千言,我把对这块的探索,都汇总到了脑图里

如何写高质量的代码(完结)_java


像这种内功心法,易懂难精,能打出多大的威力,全看个人修为。


想到一个片段,《倚天屠龙记》里,张无忌忘了所有的招式,学会了太极拳,打倒了玄冥二老。代码规范、设计原则、编程风格、设计模式,都是招式,只有学通了这些,忘掉招式,才可以随心所欲,成为真正的高手。


经过 26 年的发展,这块资料,网上多如牛毛,不废话了。


下一站,刷遍全网 Java 面试题...



↓↓  查看脑图