软件设计的通用原则

David Hooker提出的关注软件工程整体实践的 7 个原则

原则:某种思想体系所需要的重要的根本规则或假设。

存在价值

一个软件系统因能为用户提供价值而具有存在价值

保持简洁

所有的设计都应该保持简洁,但不是过于简化。这有助于理解和维护系统,通常,简洁是经过大量思考才能得到的效果。

保持愿景

清晰的愿景是软件项目成功的基础。没有愿景,项目将会由于它有“两种或多种思想”而永远不能结束。

关注使用者

在需求说明、设计和实现过程中,让别人理解你所做的事情。通常你所设计的软件是由开发人员以外的人使用、维护和编制文档。尽可能简化用户的工作会大大提高软件的价值。

面向未来

永远不要把设计局限于一隅,经常问问“如果出现这种情况怎么办”,编写可以解决通用问题的代码。提高这个软件的可复用性。

提前计划复用

提前做好复用计划将降低开发费用,并增加可复用构件和构件化系统的价值。(但是把这个建议发展到极致比较危险,构建通用方案通常会带来性能损失,并降低特定解决方案的效率)

认真思考

在行动之前清晰定位、完整思考通常能产生更好的结果。