分类:
2012-12-03 20:36:00
第一次看到这句话,是在高德纳的《具体数学》中。无疑,命名在数学上是很重要的。恰当地为一个概念指定名字(通常为一个代表符号),让问题描述得清晰,或让答案更容易理解。记得以前在学校的时候,解数学题得第一步经常就是,“假设 x= ... 那么 ...”什么的。
在软件设计中,“命名并征服”同样适用。
无论是结构化设计方法还是面向对象的设计方法,都可以理解为“分割并征服”的过程。把复杂的系统,分割成相对独立的组成部分,并构成一个多层次的结构。这就要求每一个组成部分指定名字,无论是类名,函数名或者是变量名。分割的过程,其实也就是命名的过程。分割并征服的过程,同时也是命名并征服的过程。
许多人认为名字不过是一个标记,是不重要的。但在软件开发中,名字对开发人员心理上的影响是巨大的,坏的名字或者甚至没有名字,是导致误解的罪魁祸首,常常会毁掉一切。
名字是对一个东西内部所有信息和逻辑的概括。给你创建的东西一个好的名字,能让你在整体上理解它,精确地把握它的含义。尝试去命名,也是检验你设计是否正确的一个重要手段,如果一个东西不好起名字,脑中就要有个问号:这个东西的存在是不是合理的?