1、模块原则:使用简洁的接口拼接简单的部件

2、清晰原则:清晰胜于机巧

3、组合原则:设计时考虑拼接组合

4、分离原则:策略同机制分离,接口同引擎分离。

5、简洁原则:设计要简洁,复杂度能低则低

6、吝啬原则:除非确无他法,不要编写庞大的程序。

7、透明性原则:设计要可见,以便审查和调试。

8、健壮原则:健壮源于透明与简洁。

9、表示原则:把知识叠入数据以求逻辑质朴而健壮

10、通俗原则:接口设计要避免标新立异

11、缄默原则:如果一个程序没有什么好说的,就沉默。

12、补救原则:出现异常时,马上退出并给出足够错误信息。

13、经济原则:宁花机器一分,不花程序员一秒

14、生成原则:避免手工hack,尽量编写程序去生成程序。

15、优化原则:雕琢前要现有原型,跑之前先学会走。

16、多样原则:绝不相信所谓”不二法门”的断言。

17、扩展原则:设计着眼与未来,未来总比预想来的快。

Unix 哲学的更多相关文章

  1. 根据Unix哲学来编写你的HTML5 Websocket服务器来实现全双工通信

    websocketd代表WebSocket的守护进程 websocketd处理的是浏览器和服务器之间的WebSocket连接,它会启动你所指定的服务器端应用来对WebSockets进行处理,然后在浏览 ...

  2. 回顾一下Unix哲学

    Unix哲学是一些先哲们多方位阐述的,有多种说法.可以概括为以下几点: 模块原则:使用简洁的接口拼合简单的部件. 清晰原则:清晰胜于机巧. 组合原则:设计时考虑拼接组合. 分离原则:策略同机制分离,接 ...

  3. [Linux] 关于Unix哲学

    reference : http://www.ruanyifeng.com/blog/2009/06/unix_philosophy.html 先讲两个很老的小故事. 第一个故事. 有一家日本最大的化 ...

  4. 关于Unix哲学

    http://www.ruanyifeng.com/blog/2009/06/unix_philosophy.html 这几天,我在看Unix,发现很多人在谈"Unix哲学",也就 ...

  5. Unix哲学

    01. 模块原则:使用简洁的接口拼合简单的部件. 02. 清晰原则:清晰胜于机巧. 03. 组合原则:设计时考虑拼接组合. 04. 分离原则:策略同机制分离,接口同引擎分离. 05. 简洁原则:设计要 ...

  6. unix设计哲学

    说到Unix为我们所带来的软件开发的哲学,我必需要说一说.Unix遵循的原则是KISS(Keep it simple, stupid).在http://en.wikipedia.org/wiki/Un ...

  7. Unix的哲学

    先讲两个很老的小故事. 第一个故事. 有一家日本最大的化妆品公司,收到了用户的投诉.用户抱怨买来的肥皂盒是空的.这家公司为了防止再发生这样的事故,很辛苦地发明了一台X光检查器,能够透视每一个出货的肥皂 ...

  8. 【转载】Unix设计哲学 & 回车换行八卦 & EOF八卦 & UNIX目录结构八卦

    昨天看了这篇文章 <关于Unix哲学> 首先用了两个例子,用风扇吹出空肥皂盒 和 太空铅笔,来说明简单设计也能派上作用吧. Unix哲学,Wikipedia上列出了好几个版本,不同的人有不 ...

  9. Dennis与Ken爷爷的UNIX/C世界

     沉寂了很久了,时间在不断地逝去,转眼又到了新的一年,2013的发生了太多,Beta版本.辞职.职位转换.ARM.Driver.初级厨艺.Dx11.GPU.CPU.登山.GNU/Linux.Cross ...

随机推荐

  1. sublime exclude folder?

    在sublime的项目中,其配置文件实际上是一个json文件,如果希望将某些文件夹或者文件排除在项目有效文件外,有以下方法: 在folder_exclude_patterns中输入对应的文件夹或者正则 ...

  2. DOM应用

    父级.removeChild(子节点);父级.appendChild(子节点);父级.insertBefore(子节点, 在谁之前); 创建元素: <script> window.onlo ...

  3. windows 勾子简介

    近段时间因朋友催促让试着写一个监控系统,主要是用来管理孩子使用电脑,帮助孩子合理使用电脑.在网上查询了相关内容发现没有这方面的资料,所以只有自已来试试,要用到钩子来对windows应用程序进行监控,也 ...

  4. gcc与g++

    gcc和g++都是GNU(组织)的一个编译器. 误区一:gcc只能编译c代码,g++只能编译c++代码两者都可以,但是请注意:1.后缀为.c的,gcc把它当作是C程序,而g++当作是c++程序:后缀为 ...

  5. HDU 5375 Gray code 格雷码(水题)

    题意:给一个二进制数(包含3种符号:'0'  '1'  '?'  ,问号可随意 ),要求将其转成格雷码,给一个序列a,若转成的格雷码第i位为1,则得分+a[i].求填充问号使得得分最多. 思路:如果了 ...

  6. 【英语】Bingo口语笔记(69) - 脏话的表达

  7. JS面向对象组件(四) -- 面向对象的继承

    什么是继承 •在原有对象的基础上,略作修改,得到一个新的对象 •不影响原有对象的功能 //父类 createPerson function createPerson(name,sex){ this.n ...

  8. js+css实现带缓冲效果右键弹出菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. 解决 RaspberryPi 树莓派 NTP服务异常 无法自动同步时间

    sudo nano /etc/ntp.conf 然后找到 # pool.ntp.org maps to about 1000 low-stratum NTP servers. Your server ...

  10. 最新 Arduino 驱动 12接口/户外 LED显示屏/LED点阵屏/LED单元板

    起因 现有的驱动LED显示屏的资料,比较好的只有这个.但是它驱动的是08接口的室内显示屏,而我要驱动的是12接口的户外显示屏.两种屏幕的区别在于户外屏幕点阵比较稀疏,而且二者的扫描方式,驱动方式都不太 ...