通过模式化降低程序的复杂度

今天在饭堂排队时看到了一篇文章《程序的核心--复杂度》,再加上最近开始做起了游戏客户端的开发。二者交错,似乎是把之前感觉有型却又说不清的东西想明白了。

简单来说程序的复杂度就是字面意思,复杂度越高说明代码越混乱,复杂度越低则越简单。受限于程序员的理解能力、记忆力等因素,程序的维护成本与复杂度成正相关。因此复杂度高的程序,通常也意味着更难维护、更难保证正确性、更难调试、更多bug、更不可靠等。因此,如何编写质量更高的代码,一定程度上等价于如何降低程序的复杂度。

模式化,在这里我认为与之等价的同义词是:套路化!程序的功能可以被套路地拆解为一个一个相互独立的组件,而组件的独立性带来的好处就是定义了组件修改的边界,从而控制了修改模块的复杂度。又因为模块的代码是套路的,不同模块都有遵循类似的模式(套路)。因此对之前模块的维护经验可以很自然的移植到新的模块上,于是乎降低了理解的模块的复杂度。

posted @ 2019-07-29 22:50  adinosaur  阅读(110)  评论(0编辑  收藏