编写测试友好型代码

有些代码,很容易测试。有些代码,很难测试。单元测试

容易测试的代码一定是高度解耦的代码,不容易测试的代码一定是高度耦合的代码。测试

对于高度耦合的代码,你只能进行通测,难以进行单元测试,由于代码自己拆不开、剪不断、理还乱、很愁。递归

解耦的重要技术就是反射。让主程序经过反射的方式去发现它有哪些模块,它的子模块都是独立的、是无关紧要的、是可插拔的。数学

测试友好型代码就是高度解耦的代码,高度解耦的代码就是易于扩展的代码。模板

整个项目由不少可复用的零件组成,它的复杂来源于零件众多,而不是零件之间错综复杂的关系。复杂有两种:一种是简单拼起来的复杂,一种是事物盘根错节造成的复杂。天上的星星不少,可是每一个星星都很类似,这是简单拼起来的复杂,它虽然内容繁多,可是很容易让人触类旁通,快速了解事物的全貌;九连环的每个环都互相影响,华容道每一个木块都互相影响,这就是事物盘根错节造成的复杂。扩展

谁要是能把错综复杂的关系转化为单一的同构的简单组件,那即是对复杂实现了“降维”,把高维复杂变成了低维复杂。软件

递归是单一同构的复杂。为何人们认为单一同构的复杂更为简单?由于事物的总体结构便于理解。技巧

读一首诗,人对即将读到的事物会有总体的把握,好比下一句包含的字符个数,下一句包含的字数。反射

人对单一同构的事物会充耳不闻、视而不见,由于人脑已经进化得更为关注那些奇特、没有规律的内容。因而,生活中常常见到读了一首古诗,只是单纯的读了一遍,对内容没有进行理解。读宋词则彻底不同,宋词错落有致,句句奇特,让人很容易集中注意力。程序

人对工整、单1、同构的事物有一种自然的崇敬之心。一样的意思用韵文表达出来就让人感受这话乃是天意,是天然而然造成的,是好的。

诗是一种规范、一种模板、一种套路,离散数学中的代数系统也是一套模板、一套规范。只要几个运算之间符合某种运算性质,那么就能够断言这个代数系统是否存在幺元、零元、所属的代数系统的类型,一旦代数系统的这些特性肯定了,人们就可以对这个代数系统有直观而全面的认识。

人虽然没法理解高维空间,可是人会进行类比推理。类比推理是人们认知事物的重要手段。而运用类比推理的前提就是:事物必须单1、同构。

单元测试是一种技巧。在建造房子的过程当中,须要设置许多脚手架,一旦房子盖完了,就要移除这些脚手架。不一样的软件系统有不一样的单元测试方法。

相关文章
相关标签/搜索