Unix哲学基础
2017-07-14 16:59
204 查看
1、模块原则:使用简洁的接口拼合简单的部件,保持清晰和简洁,保持紧凑性和正交性
如一部机器一样,分成多个小零件,让多数问题仅局限在某个局部,不至于牵一发而动全一身。
2、清晰原则:清晰胜于投机取巧
清晰的代码不仅不容易出错,也便于阅读。
3、组合原则:设计时要考虑拼接组合
若想程序具有组合性,那就必须要使程序彼此独立。
4、分离原则:策略同机制分离,接口同引擎分离
莫要单个进程实现全部,在必要的时候进行分离实现,如前端实现策略后端实现机制。
5、简洁原则:设计要简洁,复杂的能低则低
每个接口功能尽量单一,实现尽量
6、吝啬原则:除非确无他法,否则不要编写庞大的程序
体积大、复杂度高的程序是较难维护的
7、透明性原则:设计要可见,以便审查和调试
如果一眼就能看到软件在做什么以及是怎么做的,且带有监视和显示内部状态的功能,这样的程序会大大减少调试的时间
8、健壮原则:健壮源于透明与简洁
程序越复杂越容易出问题
9、表示原则:把知识叠入数据以求逻辑质朴而健壮
宁愿选择复杂的数据而不是复杂的代码,100个节点的指针树要比50行的代码流程图要清除明了得多
10、通俗原则:接口设计避免标新立异
减少用户的学习成本
11、缄默原则:如果一个程序没什么好说的,就保持沉默
不该输出的东西就不要输出,重要的数据信息不应该混杂在冗长的信息之中
12、补救原则:出现异常时,马上退出并给出足量的错误信息
就算是发生错误的情况也要有透明的逻辑去处理,就算无法补救,也要以一种容易诊断错误的方法终止
13、经济原则:宁话机器一分,不花程序员一秒
14、生成原理:避免手工hack,尽量编程程序去生成程序
15、优化原则:雕琢前先得有原型,跑之前先学会走
先制作原型,再精雕细琢,优化之前先确保能用,然后再进行系统地调整,寻找那些可以通过牺牲最小局部简洁性而获得较大性能提升的地方。
16、多样原则:绝不相信所谓的“不二法门”的断言
不要局限想象力,要open
17、扩展原则:设计着眼未来,未来总比预想快
可扩展性毋庸置疑是软件很重要的一个原则
如一部机器一样,分成多个小零件,让多数问题仅局限在某个局部,不至于牵一发而动全一身。
2、清晰原则:清晰胜于投机取巧
清晰的代码不仅不容易出错,也便于阅读。
3、组合原则:设计时要考虑拼接组合
若想程序具有组合性,那就必须要使程序彼此独立。
4、分离原则:策略同机制分离,接口同引擎分离
莫要单个进程实现全部,在必要的时候进行分离实现,如前端实现策略后端实现机制。
5、简洁原则:设计要简洁,复杂的能低则低
每个接口功能尽量单一,实现尽量
6、吝啬原则:除非确无他法,否则不要编写庞大的程序
体积大、复杂度高的程序是较难维护的
7、透明性原则:设计要可见,以便审查和调试
如果一眼就能看到软件在做什么以及是怎么做的,且带有监视和显示内部状态的功能,这样的程序会大大减少调试的时间
8、健壮原则:健壮源于透明与简洁
程序越复杂越容易出问题
9、表示原则:把知识叠入数据以求逻辑质朴而健壮
宁愿选择复杂的数据而不是复杂的代码,100个节点的指针树要比50行的代码流程图要清除明了得多
10、通俗原则:接口设计避免标新立异
减少用户的学习成本
11、缄默原则:如果一个程序没什么好说的,就保持沉默
不该输出的东西就不要输出,重要的数据信息不应该混杂在冗长的信息之中
12、补救原则:出现异常时,马上退出并给出足量的错误信息
就算是发生错误的情况也要有透明的逻辑去处理,就算无法补救,也要以一种容易诊断错误的方法终止
13、经济原则:宁话机器一分,不花程序员一秒
14、生成原理:避免手工hack,尽量编程程序去生成程序
15、优化原则:雕琢前先得有原型,跑之前先学会走
先制作原型,再精雕细琢,优化之前先确保能用,然后再进行系统地调整,寻找那些可以通过牺牲最小局部简洁性而获得较大性能提升的地方。
16、多样原则:绝不相信所谓的“不二法门”的断言
不要局限想象力,要open
17、扩展原则:设计着眼未来,未来总比预想快
可扩展性毋庸置疑是软件很重要的一个原则
相关文章推荐
- Unix哲学基础:Philosophy matters
- 提炼精粹 UNIX哲学之17条基础原则
- Unix 设计哲学基础
- Unix的基础哲学
- unix哲学基础(unix 编程艺术摘录)
- unix网络基础-TCP时间获取客户程序
- c/c++unix/linux基础学习笔记-常用命令和vi的使用
- UNIX入门——基础命令
- Unix程序设计哲学-KISS
- unix基础知识
- UNIX编程 - 基础
- Unix哲学相关资源汇总
- Unix高级编程:线程基础、线程的创建、退出、分离、汇合、同步问题
- Unix哲学
- 最近研究UNIX收获:(高手免进,挺基础的)
- 01.UNIX基础知识
- 《UNIX环境高级编程》第1章 UNIX基础知识
- unix哲学同其他哲学的比较(unix编程艺术摘录)
- Unix操作系统基础:Unix文件系统之文件
- Unix 基础