Unix Philosophy

2013-04-18

KISS

无论管理还是开发linux/unix系统,理解Unix哲学(Unix Philosophy)都会提高生产力。

部分Unix哲学:
1、 皆为文件:everything is a file;
2、 简单原则:KISS Principle(keep it simple, stupid), 尽量用简单的方法解决问题;
3、 Make each program do one thing well一个程序只做一件事,并做好;
4、 糟糕更好(Worse is better)。程序随需求而增长
5、 优化原则:先求运行,再求正确,最后求快。(Make it run, then make it right, then make it fast.)
6、 小既是美:Small is beautiful. Write programs that do as little as is consistent with getting the job done.

三条Write programs哲学:
Write programs that do one thing and do it well.   
Write programs to work together.   
Write programs to handle text streams,because that is a universal interface.

Basics of the Unix Philosophy:

1.Rule of Modularity: Write simple parts connected by clean interfaces.

2.Rule of Clarity: Clarity is better than cleverness.

3.Rule of Composition: Design programs to be connected to other programs.

4.Rule of Separation: Separate policy from mechanism; separate interfaces from engines.

5.Rule of Simplicity: Design for simplicity; add complexity only where you must.

6.Rule of Parsimony: Write a big program only when it is clear by demonstration that nothing else will do.

7.Rule of Transparency: Design for visibility to make inspection and debugging easier.

8.Rule of Robustness: Robustness is the child of transparency and simplicity.

9.Rule of Representation: Fold knowledge into data so program logic can be stupid and robust.

10.Rule of Least Surprise: In interface design, always do the least surprising thing.

11.Rule of Silence: When a program has nothing surprising to say, it should say nothing.

12.Rule of Repair: When you must fail, fail noisily and as soon as possible.

13.Rule of Economy: Programmer time is expensive; conserve it in preference to machine time.

14.Rule of Generation: Avoid hand-hacking; write programs to write programs when you can.

15.Rule of Optimization: Prototype before polishing. Get it working before you optimize it.

16.Rule of Diversity: Distrust all claims for “one true way”.

17.Rule of Extensibility: Design for the future, because it will be here sooner than you think.

参考:
http://www.linfo.org/unix_philosophy.html
http://ph7spot.com/musings/in-unix-everything-is-a-file
http://www.faqs.org/docs/artu/ch01s06.html

分类:操作系统 | 标签: |

相关日志

评论被关闭!