选择一个优秀的Web网站开发框架?

使用Web开发框架,可以帮助开发者提高Web开发工作的质量和效率,大大减少开发工作量。但是目前互联网中充斥着各种各样的Web开发框架,这些框架都可以为开发者的项目提供各种功能扩展,如何选择成为了棘手的问题。 

软件工程师Ricardo Zuasti所在的公司目前正在评估未来几年内将使用的Web开发框架,他认为这次评估是非常重要的。他还给出了上一次评估的结果,“通过评估,我们最终使用Struts 2驱动的Java应用程序服务器作为MVC,Tiles作为模板引擎,jQuery作为Javascript特效,DWR用于AJAX调用,MyBatis作为ORM”。 

对于此次Web开发框架的选择,Ricardo给出了他们公司的选择依据。此次他们只评估基于Ruby、Python和Java的框架,而且由于公司有很多Java平台上的经验和知识积累,所以基于Java的框架会多一些。Ricardo指出,这并不表示基于.NET、PHP和其他技术的框架不行,相反,它们也非常棒,选择这三种框架只是从公司业务上考虑。 

Ricardo从大量框架中筛选出了候选方案,筛选原则: 

引用

所有框架必须是免费使用的,并且最好是开源的。此外,使用这些框架进行开发时,无需使用专有IDE、应用服务器或数据库。

候选方案如下: 
Play Framework 2.0
Ruby on Rails
Django
Google Web Toolkit
Spring Roo
Spring Framework
Struts 2
JBoss Seam

评估标准: 将根据以下标准对这些框架进行评估: 

学习曲线
针对简单任务的开发效率
针对复杂、特殊任务的开发效率
依赖管理
代码性能/安全优化调整的能力
平台升级/冗余能力
在企业市场中的认同度
开发、使用SOAP和REST服务的复杂性
在评估的每个环节中,会为每个框架标记上差、中、好的成绩。根据上面的标准,Ricardo会为每个框架执行下面的具体

任务: 
在开发工作站上安装框架
使用免费的IDE、应用服务器和数据库来配置一个开发环境
开发“Hello World”或框架教程中描述的类似示例
修改示例,在自定义结构上执行特定的数据库查询,并显示结果
添加一个依赖项到第三方库中,并在我们的应用程序中使用它执行一个计算
开发一个“Hello world”REST服务
执行我们的应用程序中的服务
Ricardo称,目前准备从Play Framework 2.0框架开始评估,将在后续文章中带来评估结果。 

需要注意的是,本文列出的这些评估项可作为个人开发者选择框架时的参考,而企业开发者在实际的选择中,还需要考虑到公司的主要开发环境、业务需要、协作等因素。笔者也会跟踪Ricardo的评估过程,并在后面的文章中公布最终评估结果。 

你可能感兴趣的:(选择一个优秀的Web网站开发框架?)