首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

在本章中,我们引入了重构的概念,将它作为一种改善代码的质量和灵活性的方法。我们的第一个重构是将Ajax技术体系中最为核心的XMLHttpRequest对象封装起来,成为一个简单的、可重用的对象。

我们考察了很多设计模式,可以应用它们来解决一些在进行Ajax开发时通常会遇到的问题。设计模式为我们提供了一个非正式的方法,通过它可以获得其他遇到过相同问题的程序员所积累的知识,并且帮助我们向着具体的目标进行重构。

Façade模式和Adapter模式为掩盖不同实现之间的差异提供了很有用的方法。在Ajax中,这些模式特别有用,通过它们可以为跨浏览器不兼容性提供一个绝缘层,而这正是长期以来一直困扰JavaScript开发者的一个主要问题。

Observer模式对于事件驱动的系统是一个很灵活的模式。在第4章中,当考察应用的UI层时,我们还会回到这个模式。通过联合使用Observer模式和Command模式,我们可以很好地封装用户的交互,从而有可能开发出健壮的框架,以处理用户的输入和提供撤销的功能。Command模式还可以用于组织客户/服务器之间的交互,我们在第5章就会看到。

Singleton模式为控制对于特定资源的访问提供了一种简单的方法。在Ajax中,我们可以有效地使用Singleton模式来控制对网络的访问,我们在第5章就会看到。

最后,我们引入了MVC模式,这是一个在Web应用中有很长使用历史的架构模式(至少从因特网的时间来看是这样)。我们讨论了MVC模式如何通过使用一个抽象的数据层和一个模板系统,来改善服务器端应用的灵活性。

服装店的例子也展示了设计模式和重构是如何协同工作的。第一次就写出具有完美设计的代码是困难的,但是重构类似代码清单3-4的丑陋但能用的代码,逐渐引入设计模式的好处,是完全有可能的,最终的结果也非常令人满意。

最后,我们考察了一些第三方的库和框架,使用这些库和框架也可以为Ajax项目引入秩序。目前这个阶段,很多库和框架正在茁壮成长,从简单的跨浏览器的封装到完整的UI组件套件,再到跨越客户端和服务器的端到端解决方案。我们简要介绍了几个较为流行的框架,在后面的章节还会回到其中的一些框架上。

在后面的两章中,我们会将对于重构和设计模式的理解应用到Ajax客户端应用和客户/服务器的通信系统之中。这将有助于我们发展出一套词汇表,找到使得开发健壮的、多功能的Web应用更加容易的一些最佳实践。

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论