我比较崇尚的Unix程序设计哲学。摘自< Art of Unix Programming>
-
Rule of Modularity: Write simple parts connected by clean interfaces.
-
Rule of Composition: Design programs to be connected to other programs.
-
Rule of Separation: Separate policy from mechanism; separate interfaces from engines.
-
Rule of Simplicity: Design for simplicity; add complexity only where you must.
-
Rule of Parsimony: Write a big program only when it is clear by demonstration that nothing else will do.
-
Rule of Transparency: Design for visibility to make inspection and debugging easier.
-
Rule of Robustness: Robustness is the child of transparency and simplicity.
-
Rule of Representation: Fold knowledge into data so program logic can be stupid and robust.
-
Rule of Least Surprise: In interface design, always do the least surprising thing.
-
Rule of Silence: When a program has nothing surprising to say, it should say nothing.
-
Rule of Repair: When you must fail, fail noisily and as soon as possible.
-
Rule of Economy: Programmer time is expensive; conserve it in preference to machine time.
-
Rule of Generation: Avoid hand-hacking; write programs to write programs when you can.
-
Rule of Optimization: Prototype before polishing. Get it working before you optimize it.
-
Rule of Extensibility: Design for the future, because it will be here sooner than you think.