1.5 小结
构建可重用的框架是一件相当困难的工作,因为框架不能只迎合某些客户的需求,不能太死板而没有扩展性,但是又不能具有太多的伸缩性。而一个能够让你的开发团队可以在最大程度上满足用户需求的框架才是你真正的选择。在本书中,我们将向你展示很多WebWork的特性、使用技巧和相关技术,目的在于告诉你:如果你使用WebWork构建应用程序,哪怕是前文所说的最后期限为下星期的情况也不见得是一件让你为难的事情了。
之前你已经了解了MVC的历史与发展,以及将其应用到Web环境的原因与时机。除此之外,我们还讲述了MVC能够帮助你做出重要的有关设计的决定,让你更轻松地面对以后的Web应用程序开发。由于WebWork提供了对前端控制器(Front Controller)和页面控制器(Page Controller)的支持,你可以根据自己的需要自由地运用WebWork,而不会受制于框架本身。
除了WebWork所提供的框架之外,我们还探究了容器中资源被动管理(Passive Management)的概念。由于WebWork本身既是框架又是容器,它能够满足缩小特定功能性范围(譬如一个WebWork action)和扩大其他功能性范围的需要(譬如一个被动管理的持久层)。
以上所提到的需求有时候应该受限,有时候则应该完全没有约束,对这两种情况区别对待是WebWork的重要特性之一。WebWork已经取得了相当的进步,而且还会不断地向前发展,而这个关键的特性始终是WebWork和所有务实的程序员的推动力。
我们也解释了使用新版本的CaveatEmptor应用程序来介绍WebWork的目的。本书绝大部分例子都专注于User这个域模型,但也有少量例子与User是无关的。有一点需要强调,虽然我们将本书范例的范围缩小到User方面,但是所讲述的概念对于其他任何域模型同样适用。
在深入研究CaveatEmptor之前,让我们先稍微热身一下。在第2章中,你将要利用WebWork构建一个简单的“Hello,World”Web应用程序。当你进入状态之后,我们将探究一些有关WebWork架构的知识,以便让你在构建基于WebWork的应用程序时,能够深思熟虑,做出理由更为充分的决定。随后,我们将专注于WebWork所提供的丰富特性,借助这些特性,你的工作将会变得更简单。总之,我们的目标是向你演示如何更快、更巧妙地构建更具伸缩性的Web应用程序。







