freeBSD中的一些设计思想
2009-09-18 13:20
375 查看
指导性架构设计原则
下面的指导性设计原则描述了我们的设计理念
只要某一功能的缺失不会导致无法完成某个实际的应用程序, 就不新增该功能。
决定系统不做成什么样子, 与决定将它做成什么样子同样重要。 不去满足所有的需要,而是让系统具备可扩展性, 使其能够向上兼容。
尽可能抽象代码中的通用部分, 除非没有可以用来抽象的实例。
如果没有完全理解一个问题, 最好干脆不提供任何解决方案。
如果能用 10% 的工作完成 90% 的工作, 则选择较简单的解决方案。
尽可能隔离复杂性。
提供机制而非策略。 具体而言, 将用户界面策略交由客户去选定。
摘自 Scheifler & Gettys: "X Window System"
--------------------------------------------------------------------------------------------------------------------------------------------------
安全的设计方法
编写安全的应用程序要带着谨慎和略有悲观的生活观点。程序应该本着 “最小特权”的原则运行,这样就不会有带着大于足够能完成其功能的权限的进程在运行。预先测试的代码应该随时可以重用以避免遇到一些本已经修复的通常错误。
UNIX®环境的陷阱之一就是很容易的制造一个稳健环境的假象。程序应该永远不要相信用户的输入(以各种形式),系统资源,进程间通讯,或者 触发事件的时钟。UNIX进程不是同步运行,所以逻辑操作很少是原子类型。
下面的指导性设计原则描述了我们的设计理念
只要某一功能的缺失不会导致无法完成某个实际的应用程序, 就不新增该功能。
决定系统不做成什么样子, 与决定将它做成什么样子同样重要。 不去满足所有的需要,而是让系统具备可扩展性, 使其能够向上兼容。
尽可能抽象代码中的通用部分, 除非没有可以用来抽象的实例。
如果没有完全理解一个问题, 最好干脆不提供任何解决方案。
如果能用 10% 的工作完成 90% 的工作, 则选择较简单的解决方案。
尽可能隔离复杂性。
提供机制而非策略。 具体而言, 将用户界面策略交由客户去选定。
摘自 Scheifler & Gettys: "X Window System"
--------------------------------------------------------------------------------------------------------------------------------------------------
安全的设计方法
编写安全的应用程序要带着谨慎和略有悲观的生活观点。程序应该本着 “最小特权”的原则运行,这样就不会有带着大于足够能完成其功能的权限的进程在运行。预先测试的代码应该随时可以重用以避免遇到一些本已经修复的通常错误。
UNIX®环境的陷阱之一就是很容易的制造一个稳健环境的假象。程序应该永远不要相信用户的输入(以各种形式),系统资源,进程间通讯,或者 触发事件的时钟。UNIX进程不是同步运行,所以逻辑操作很少是原子类型。
相关文章推荐
- 同事整理的对于系统架构设计时的一些指导思想
- 关于软件系统架构设计的一些新思想
- 开发设计的一些思想总结
- 关于网站系统性能的一些设计思想
- 记录一些比较有趣的网站,来给自己的网站设计积累思想
- 一些大型工具软件的设计思想
- 一些设计思想
- 一些设计思想的汇集(1)
- 框架设计的一些思想(应用框架的设计和实现上摘)
- 系统架构设计时的一些指导思想
- [原创]无聊,谈一些面向对象设计思想的高级话题
- 一些设计思想的汇集(2)
- Hibernate一些变态的设计思想
- Android的一些设计思想(201603)
- Redis初识、设计思想与一些学习资源推荐
- 卡尔曾写道,“作为一种技术,书让我们的注意力集中,使我们免受充盈于生活中的分心事所干扰。而一台联网的电脑却做着完全相反的事,它设计出来就是用来分散我们的注意力的……在知道我们的思想深度与专注程度直接相
- Kafka/Metaq设计思想学习笔记[转]
- 使用kettle设计一些ETL任务的经验
- 面向对象设计思想(C#)
- LSM树由来、设计思想以及应用到HBase的索引