频道栏目
读书频道 > web开发 > php > PHP框架高级编程——应用Symfony、CakePHP和Zend
1.3.1 设计模式的定义
2013-01-04 13:31:59     我来说两句
收藏   我要投稿
尽管学习如何使用单个PHP框架生成动态网页相对简单,但确定这3种主流Web应用程序框架中哪一个最能满足您的要求却并不容易。《PHP框架高级编程——应用Symfony、CakePHP和Zend》一书对3种最受欢迎的开源框架进行了...  立即去当当网订购

1.3  Web框架中的设计模式

有一些抽象化概念能够在应用程序之间传送,从而能够加快开发过程。本节将详细介绍这些抽象化概念以及它们创造Web应用程序框架的方法。

使用框架之前不一定要理解设计模式,因此如果你觉得本章没有意义,那么可以跳到下一章。然而,对于框架和应用程序开发整体而言,设计模式还是非常重要的,因此我们认为,如果现在跳过本节,以后还会回到这里。

1.3.1  设计模式的定义

设计模式的定义是:它是软件设计中常见问题的通用解决方案。其实没有规范的基础,因为设计模式通常是一种实践方式,用以弥补规范机制的缺失。当编程语言不能提供抽象机制,而这些机制在现实应用程序开发过程中又非常有用时,通常会创造设计模式。

设计模式与国际象棋游戏类似,初学者只要知道规则就行了,类似于学习编程语言的基本语法。当然,知道“象”如何移动并不能使你成为优秀的象棋选手,就像知道如何用括号并不能使你成为PHP程序员一样。熟练的选手能够预测下面几步,再运用相应的取胜方案,就像经验丰富的编程人员能够创造工作软件一样。

随着对象棋游戏的进一步熟悉,你就会发现有一些模式。你只用看一眼棋盘就知道这种情形属于哪种模式,然后依据现在的情况和未来的风险做出反应。你可以直观地理解这些模式,也可以命名它们。这与软件设计模式很类似:如果你非常熟悉这些模式,那么可能会一直使用它们,有时也会在毫无察觉的情况下使用它们。

虽然不一定要命名设计模式,但命名有两个好处。首先,它有助于认识模式,因为在命名抽象事物之后,在实践中才更容易实现它。然后可以进一步分析这种模式,画出它的示意图,并充分利用这种模式。另一个好处是这么做能够共享经验。象棋选手喜欢讨论各种开局和第一着棋,编程人员也可以通过交流设计模式来相互学习。

更重要的是,如果要其他编程人员为固定类添加一些功能,并告诉他使用Decorator模式,那么可以用你确定的方式(而不是使用随机解决方案)来实现。设计模式具有防止未来出现问题的巨大潜力。

您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.2.3 其他框架
下一篇:1.3.2 模型-视图-控制器作为主要的结构设计模式
相关文章
图文推荐
排行
热门
最新书评
文章
下载
读书
特别推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站