二、框架采用哪些支持工具?
一般而言,没有支持工具的框架很难被使用。任何一个框架的提出总是配有一系列工具软件,这样基于框架的应用开发才切实可行。这些工具允许用户与应用框架交互、配置和构筑新的应用。下列工具通常被使用:
浏览工具 用户可以利用它浏览框架的类层次结构等信息。
编辑工具 用户用来调整和修改框架元素的属性等,如修改类或构件等。
帮助系统 为用户使用本框架系统提供向导功能,如可以采用HTML格式。
测试系统 用来测试生成的应用系统,通常支持仿真操作。
文档工具 帮助创建应用系统的文档,如Javadoc工具。理解并学会使用框架是一件费时的工作,这也是框架设计方法的唯一不足之处,因此要求框架的文档必须齐备。
配置管理工具 使用框架而不是具体的对象虽然提供了复用性,但它同时也带来了开发上的复杂性。框架内包含各种构件或构件库,一个框架可能需要和其他框架通信。一个框架也可能由其他子框架系统组成,这样一种组成结构必然提出配置管理的问题。例如,如何在多个框架内共享构件?如何由构件或子框架组装新框架?框架内的构件如何通信与协作?不同的框架间如何交互?
使用这些高级工具的最终目的就是减少编码和记忆的工作量,简化用户的操作。理想情况下,用户可以不用编一句代码而实现新系统的构建。例如,在一可视化界面上,通过选取一些图标就能生成可执行程序。目前已有一些类似的工具,如University of Geneva开发的Vista系统。
三、都有哪些著名的框架系统?
目前有许多框架系统,例如用户界面方面的框架有MVC、ET++等,其中ET++采用C++语言实现,运行于Unix等系统中;针对其他领域的则有FOIBLE、MacApp、FACE (Framework Adaptive Composition Environment)等。
早期一些框架系统多采用传统的面向过程语言实现,现在面向对象语言为软件和设计的重用提供了更强有力的支持。由于框架开发的学习曲线较复杂,因此框架开发的语言最好能对框架的文档建立提供有效的方法;框架的使用要求开发语言具备高可移植性;框架的设计其实也是一些高层的决策,很自然采用高级语言来实现。Java语言由于具有平台独立性以及轻量级的链接过程、自动垃圾回收、简单语言结构、标准软件包、面向对象等特性,因此可以说Java是进行框架构筑的合适语言。现在市场上已出现了许多采用Java语言编写的框架系统。
LEC India Software Centre Pvt. Ltd.公司研制了一个面向EJB 构件的应用框架系统。它主要面向基于EJB的应用程序,是一个服务器端的框架,能在EJB构件的开发中解决稳定性以及其他一些企业级的特性等问题。
现在又出现了许多采用J2EE编程环境的应用框架,如Pacific技术服务公司开发的一套多层框架,能用来开发Web应用服务器;Jcorporate公司开发的Expresso Framework是一使用java来建造分布式、重用、基于构件的安全的Web应用程序的应用框架。