关于 UNIX 的哲理名言(中英文对照)
UNIX 的特点:
Everything (including hardware) is a file.
所有的事物(甚至硬件本身)都是一个的文件。
Configuration data stored in text.
以文本形式储存配置数据。
Small, single-purpose program.
程序尽量朝向小而单一的目标设计。
Avoid captive user interfaces.
避免过于复杂花哨的界面。
Ability to chain program together to perform complex tasks.
将几个程序连结起来,处理大而复杂的工作。
Doug McIlroy(UNIX 管道的发明人、UNIX 传统的奠基人之一) 认为 UNIX 的哲学是这样的:
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.
写处理文件流的程序。因为这(处理文件流)是一个通用接口。
《The Art of Unix Programming》 总结了下面这些哲学:
Rule of Modularity: Write simple parts connected by clean interfaces.
模块化原则:写简单的,能够用清晰的接口连接的代码。
Rule of Clarity: Clarity is better than cleverness.
清晰化原则:清晰的代码要好过“聪明”的代码。
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 Diversity: Distrust all claims for “one true way”.
多样性原则:怀疑所有所谓的“不二法门”。
Rule of Extensibility: Design for the future, because it will be here sooner than you think.
扩展原则:为未来设计,因为未来来的比你想象的要早。
Mike Gancarz (X Windows 的设计者)给出了下面九条哲学思想:
Small is beautiful.
小即是美。
Make each program do one thing well.
让每个程序(方法)只做一件事情,并把它做好。
Build a prototype as soon as possible.
尽早建立原型。
Choose portability over efficiency.
注重可移植性,而非效率。
Store data in flat text files.
将数据存储在存文本文件中。
Use software leverage to your advantage.
利用软件来发挥你的优势。
Use shell scripts to increase leverage and portability.
使用Shell脚本提高编程的手段和程序的可移植性。
Avoid captive user interfaces.
避免过于复杂花哨的界面。
Make every program a filter.
使每个程序(方法)称为一个过滤器(筛选器)
P.S. 姑妄言之姑妄听之。翻译的不对之处,欢迎指正。
关于 UNIX 的哲理名言(中英文对照)的更多相关文章
- linux 命令中英文对照,收集
linux 命令中英文对照,收集 linux 命令英文全文 Is Linux CLI case-sensitive? The answer is, yes. If you try to run L ...
- FFMpeg ver 20160219-git-98a0053 滤镜中英文对照 2016.02.21 by 1CM
FFMpeg ver 20160219-git-98a0053 滤镜中英文对照 2016.02.21 by 1CM T.. = Timeline support 支持时间轴 .S. = Slice t ...
- FFMpeg ver 20160213-git-588e2e3 滤镜中英文对照
1 FFMpeg ver 20160213-git-588e2e3 滤镜中英文对照 2016.02.18 by 1CM 2 T.. = Timeline support 3 支持时间轴 4 .S. = ...
- FFMpeg 滤镜中英文对照
FFMpeg ver 20160213-git-588e2e3 滤镜中英文对照 2016.02.17 by 1CM T.. = Timeline support 支持时间轴 .S. = Slice t ...
- (原创)LAMP搭建之二:apache配置文件详解(中英文对照版)
LAMP搭建之二:apache配置文件详解(中英文对照版) # This is the main Apache server configuration file. It contains the # ...
- css font-family常用的黑体宋体等字体中英文对照
资料来源: https://www.cnblogs.com/EnSnail/p/6792853.html 在实现网页效果时,细节很重要,字体也不例外,CSS:font-family常用字体中英文对照如 ...
- CSS:font-family常用字体中英文对照
CSS:font-family常用字体中英文对照如下: 推荐网址:https://www.cnblogs.com/EnSnail/p/6792853.html 微软雅黑: Microsoft YaHe ...
- [DT] 数据结构术语中英文对照
数据结构术语中英文对照 数据 Data 数据元素 Data element 数据项 Data item 数据结构 Data structure 逻辑结构 Logical structure 数据类型 ...
- 布斯(Steve Jobs)在斯坦福大学的演讲稿,中英文对照版
2005年6月14日,苹果CEO史蒂夫·乔布斯(Steve Jobs)在他的母校斯坦福大学的毕业典礼发表了著名的演讲,关于这段演讲,你会看到N多人的推荐(比如同样喜欢在大学演讲的李开复先生).此前曾经 ...
随机推荐
- 其它综合-VMware虚拟机安装Ubuntu 19.04 版本
Ubuntu 19.04 版本安装过程 1. 环境: 使用的虚拟机软件是VMware,版本为 12 .(网上一搜一大推,在此不再演示.) 使用的 ISO镜像为Ubuntu 19.04.(自己也可以在网 ...
- BZOJ 2200 道路与航线 (算竞进阶习题)
dijkstra + 拓扑排序 这道题有负权边,但是卡了spfa,所以我们应该观察题目性质. 负权边一定是单向的,且不构成环,那么我们考虑先将正权边连上.然后dfs一次找到所有正权边构成的联通块,将他 ...
- Hdoj 1850.Being a Good Boy in Spring Festival 题解
Problem Description 一年在外 父母时刻牵挂 春节回家 你能做几天好孩子吗 寒假里尝试做做下面的事情吧 陪妈妈逛一次菜场 悄悄给爸爸买个小礼物 主动地 强烈地 要求洗一次碗 某一天早 ...
- 学习Spring Boot:(十五)使用Lombok来优雅的编码
前言 Lombok 是一种 Java™ 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO).它通过注解实现这一目的. 正文 添加依赖 在 pom.xml ...
- html页面中引入自签名证书的js web资源出现net::ERR_CERT_AUTHORITY_INVALID
其实是浏览器客户端对自签名的内容认为不安全引起的,临时方法可以再浏览器中先直接访问下那个自签名的https地址,然后再访问有引用的那个页面就可以了. 以下内容引用自https://www.morong ...
- JS学习笔记Day13
一.cookie (一)什么是cookie: 1.就是会话跟踪技术,存放在客户端浏览器中的一段文本信息 2.会话:从浏览网站开始到结束的这个过程称为一次会话,浏览器关闭,表示会话结束 3.会话跟踪技术 ...
- python 发送post和get请求
摘自:http://blog.163.com/xychenbaihu@yeah/blog/static/132229655201231085444250/ 测试用CGI,名字为test.py,放在ap ...
- python14 1.带参装饰器 | wrapper 了了解 # 2.迭代器 ***** # 可迭代对象 # 迭代器对象 # for迭代器 # 枚举对象
## 复习 '''函数的嵌套定义:在函数内部定义另一个函数 闭包:被嵌套的函数 -- 1.外层通过形参给内层函数传参 -- 2.验证执行 开放封闭原则: 功能可以拓展,但源代码与调用方式都不可以改变 ...
- 状态压缩动态规划 状压DP
总述 状态压缩动态规划,就是我们俗称的状压DP,是利用计算机二进制的性质来描述状态的一种DP方式 很多棋盘问题都运用到了状压,同时,状压也很经常和BFS及DP连用,例题里会给出介绍 有了状态,DP就比 ...
- C++回顾day03---<异常>
一:传统错误处理机制(C中通过函数返回来处理) int CalcRes(int n, int m, char ch, int& res) { ; switch (ch) { case '+': ...