Unix哲学的理解

网友投稿 1070 2022-09-22

Unix哲学的理解

Unix哲学的理解

Unix哲学

摘选自《Linux程序设计(第三版)》

简单性:

许多很有用的Unix工具是非常简单的,因此也是很小并易于理解的。“小而简单”是值得学习的,更大、更复杂的系统注定包 含更大、更复杂的bug,而调试是所有人都想避免的。

集中性:

通常,让一个程序很好地执行一项任务要好过把所有的功能都乱七八糟地堆在一起。功能肿胀的程序难于使用和维护。单一目标的程序更容易随着更好的算法或界面被开发出来而得到改进。在UNIX中,当用户出现新的需求时,通常是把小工具组合起来已完成更复杂的任务,而不是试图将一个用户可能期望的所有功能放在一个大程序里。

可重用组件:

将应用程序的核心实现为库。具有简单而灵活的编程接口、文档齐备的库可以帮助其他人开发出同类程序,或者把这些技术应用到新的应用领域。

过滤器:

许多Unix程序可用作过滤器。也就是说,它们对输入进行转换并产生输出 。正如我们将在后面看到的,Unix提供了一些机制,让我们可以把一些Unix程序通过一种新颖的方式组合起来,以开发出相当复杂的应用程序。当然,这种类型的作用是靠前面提到的开发方法支撑的。

开放的文件格式:

比较成功并流行的Unix程序都使用纯ASCII码的文本文件作为配置文件和数据文件。如果你在开发程序时采用了这种做法,那你就对了!它使用户可以用标准工具修改和搜索配置项,并且可以开发出在数据文件上执行新功能的新工具。

灵活性:

你不能期待用户都能正确地使用你的程序。所以,在编程时要尽量考虑到程序的灵活性;尽量避免对字段长度或记录数目作人为地限制。如果你能做到的话,则你编写的程序既能在单机上运行,也能跨网路运行。永远不要认为你知道用户想做的一切事。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Unix调试的瑞士×××:lsof
下一篇:nginx,tomcat,apache三者分别用来做什么,有何区别
相关文章

 发表评论

暂时没有评论,来抢沙发吧~