2)设计模式使人们可以更加简单方便地复用成功的设计和体系结构,将已证实的技术表述成设计模式也会使新系统开发者更加容易理解其设计思路。设计模式使得重用成功的设计更加容易,并避免那些导致不可重用的设计方案。
3)设计模式使得设计方案更加灵活,且易于修改。
4)设计模式的使用将提高软件系统的开发效率和软件质量,且在一定程度上节约设计成本。
5)设计模式有助于初学者更深入地理解面向对象思想,一方面可以帮助初学者更加方便地阅读和学习现有类库与其他系统中的源代码,另一方面还可以提高软件的设计水平和代码质量。
设计模式不是学出来的,是用出来的。为了学习设计模式而学习,效果可能不是很好。一般框架都会使用设计模式。如PHP 的ZF用来很多设计模式,框架里面的类名或者目录名,都以某种设计模式的名称命名,这样大家一看到这个类名或者文件名,就知道它的代码组织结构了。如果精通了语言,剩下的编码自然是很简单,随着编码经验积累,对设计模式和原则的理解也就越透彻,其过程就是山穷水复疑无路,而结果柳暗花明又一村。
另外需要注意,熟练模式后,切勿因模式二去模式。如果像著名数学家华罗庚谈到读书的三个境界所说,“读书是由薄到厚,再由厚到薄的过程”。说明你练到家了。
优秀程序设计的18大原则
良好的编程原则与良好的设计工程原则密切相关。本文总结的这些设计原则,帮助开发者更有效率的编写代码,并帮助成为一名优秀的程序员。作者Diggins是加拿大一位有25年编程经验的资深技术人员,曾效力于Microsoft和Autodesk,并创办过两家赢利的互联网公司。
1.避免重复原则(DRY - Don't repeat yourself)
编程的最基本原则是避免重复。在程序代码中总会有很多结构体,如循环、函数、类等等。一旦你重复某个语句或概念,就会很容易形成一个抽象体。
2.抽象原则(Abstraction Principle )
与DRY原则相关。要记住,程序代码中每一个重要的功能,只能出现在源代码的一个位置。
3.简单原则(Keep It Simple and Stupid )
简单是软件设计的目标,简单的代码占用时间少,漏洞少,并且易于修改。
4.避免创建你不要的代码 Avoid Creating a YAGNI (You aren't going to need it)
除非你需要它,否则别创建新功能。
5.尽可能做可运行的最简单的事(Do the simplest thing that could possibly work)
尽可能做可运行的最简单的事。在编程中,一定要保持简单原则。作为一名程序员不断的反思“如何在工作中做到简化呢?”这将有助于在设计中保持简单的路径。