首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > Linux > X系统背后的七条程序设计原则
【标  题】:X系统背后的七条程序设计原则
【关键字】:系统,程序,设计,设计
【来  源】:网络

X系统背后的七条程序设计原则

1988 年 X 系统被设计之时, 有 7 条原则,
我觉得非常好, 供给写系统的人作为参考:

3m1 Do not add new functionality unless an implementation cannot complete
a real application without it.m

除非一件真正的应用程式非用某种功能否则无法完成, 不然就不要添加新的功能.

按: 太多功能却处处相似劣於将他们整合为一个功能, 太多相似的功能往往造成
程式设计的选择困扰, 也就是去芜存菁, 方能显现功能的真正实用价值.

3m2 It is as important to decide what a system is not as to decide what it
is. Do not serve all the world's needs, but make the system extensible
so that additional needs can be met in an upwardly compatible fashion.m

要决定一个系统是什麽跟决定一个系统不是什麽是同等重要的. 不须满足全世界
的需求, 而应让系统能够延伸扩张, 以便额外的需求能以往上相容的方式被满足.

按: 往上相容的意思是, 系统只须再做微小修改便可以将功能更新或扩充.

3m3 The only thing worse than generalizing from one example is generalizing
from no example at all.m

唯一比从一个例子中归纳做出结论更糟只有从完全无例子中归纳做出结论.

按: 也就是说, 从许多例子中归纳做出结论是好的, 优於自己凭空造想.

3m4 If a problem is not completely understood, it is probably best to
provide no solution at all.m

如果不能完全了解一个问题, 大概最好别提供任何解决之道.

按: 可能解决之道不符合问题本意, 误入歧途, 浪费精力.

3m5 If you get 90 percent of the desired effect for 10 percent of the work
required to get 100 percent, use the simpler solution.m

如果因为一件工作的百分之十(该工作要求做到 100%), 你得到想要的效果之 90%,
则使用比较简单的解决之道.

按: 10% work -> 90% effect (easy) ; 剩馀 90% work 才 10% more effect (hard) ;
10% work 是比较好的解决之道, 简单, 有效率, 纵使不能尽善尽美.

3m6 Isolate complexity as much as possible.m

尽可能把复杂性独立出来.

3m7 Provide mechanism rather than policy. In particular, place user interface
policy in the client's hands.m

与其提供施行方针不如提供处理机制. 特别将使用者介面的施行方针交由客户处理.

按: policy => 大纲, 处理规定.
mechanism => 细则, 处理流程.
Beej's 网络编程指南 Internet Sockets(1):【上一篇】
如何在Linux中添加新的系统调用:【下一篇】
【相关文章】
  • 使用 perl 编写 GNOME 应用程序入门
  • 从程序员的角度看x windows
  • Linux下的汇编程序设计
  • Linux平台的下载程序
  • 如何共享两台LINUX系统的根目录?
  • 什么是NFS文件系统
  • 基于Linux的网络试验系统的设计(三)
  • NIS网络信息系统简介
  • 基于Linux的网络试验系统的设计(一)
  • 系统的安全检查
  • 【随机文章】
  • ASP小偷(远程数据获取)程序的入门教程
  • 关于子类对象的实例化过程
  • (日文)vb6于vb.net对比(长期更新)
  • 面试问题之 按单词反转字符串
  • 模块常用的事务代码--FI(1)
  • 常用地图投影转换公式
  • 常见设置域名方法
  • 项目开发不能没有开发文档,同时要降低开发文档的使用和管理成本
  • PE教程3: File Header (文件头)
  • 围棋天才的另一面
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.