关于软件设计的一些可参考原则
摘自:阮一峰的开发手册
-
工业设计三原则
-
- 日本设计公司Information Architects表达了他们最基本的信念:
-
- 你为用户提供的界面,就是你的品牌。(Brand=Interface)
-
- 设计的作用,就是告诉用户工作如何进行。(Design is how it works)
-
- 简单的设计,就是最好的设计。(Simple is best)
制作工具的原则
-
- 开放性,即标准的所有细节向所有人开放。
-
- 扩展性,即标准应该是容易扩展的。
-
- 尽量容易理解和实现。
-
- 保持语言和平台中立
-
- 我觉得这几条原则具有一般性,可以推广到任意的开发工具的过程中。如果我要向其他人提供一个工具,我就应该努力做到这几点。
MVC模式
-
- 如何设计一个程序的结构,这是一门专门的学问,叫做"架构模式"(architectural pattern),属于编程的方法论。
-
- MVC模式就是架构模式的一种,它对我的启发特别大。我觉得它不仅适用于开发软件,也适用于其他广泛的设计和组织工作。
-
- 下面是我对MVC模式的一些个人理解,不一定正确,主要用来整理思路。
-
- MVC是三个单词的首字母缩写,它们是Model(模型)、View(视图)和Controller(控制)。这个模式认为,程序不论简单或复杂,从结构上看,都可以分成三层:
-
- 最上面的一层,是直接面向最终用户的"视图层"(View)。它是提供给用户的操作界面,是程序的外壳。
-
- 最底下的一层,是核心的"数据层"(Model),也就是程序需要操作的数据或信息。
-
- 中间的一层,就是"控制层"(Controller),它负责根据用户从"视图层"输入的指令,选取"数据层"中的数据,然后对其进行相应的操作,产生最终结果。
骆驼拼写法(CamleCase)
-
- 在英语中,依靠单词的大小写拼写复合词的做法,叫做"骆驼拼写法"(CamelCase)。比如,backColor这个复合词,color的第一个字母采用大写。
-
- 这种拼写法在正规的英语中是不允许的,但是在编程语言和商业活动中却大量使用。比如,sony公司的畅销游戏机PlayStation,play和station两个词的词首字母都是大写的。
-
- 它之所以被叫做"骆驼拼写法",是因为大小写的区分使得复合词呈现"块状"(bump),看上去就像骆驼的驼峰(hump)。
-
- "骆驼拼写法"又分为两种:
-
- 第一个词的首字母小写,后面每个词的首字母大写,叫做"小骆驼拼写法"(lowerCamelCase)。
-
- 第一个词的首字母,以及后面每个词的首字母都大写,叫做"大骆驼拼写法"(UpperCamelCase),又称"帕斯卡拼写法"(PascalCase)。
-
- 在历史上,"骆驼拼写法"早就存在。苏格兰人的姓名中的Mac前缀就是一例,比如著名歌手Paul MacCartney的名字中,M和C都是大写的,如果将C小写就是错误的。另一个例子是,著名化学品公司杜邦公司的名字DuPont。
-
- 但是,这种拼写法真正流行,还是在80年代以后,那时正是计算机语言开始兴起的时候。许多著名的计算机语言依靠单词不同的大小写来区分变量。在计算机语言中,还有一种"匈牙利拼写法"(Hungarian Type Notation),变量中每个单词的首字母都大写,然后变量名的最前面再加一个小写字母,表示这个单词的数据类型。比如,iMyTestValue这个变量名,就表示它是一个整数变量(integer)。据说,微软公司最喜欢使用"匈牙利拼写法"。