`

如何选择一个优秀的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的评估过程,并在后面的文章中公布最终评估结果。 

英文原文:Choosing a Web Development Framework: Options and Criteria
分享到:
评论

相关推荐

    jQuery1.6优秀的Web前端开发框架

    ASP.NET 3.5商用开发架构;JQuery1.6

    WEB开发框架LMLPHP.zip

    LMLPHP是一款可爱滴WEB开发框架,为自由灵活高性能的WEB开发而生。它拥有体积小,纯面向对象,MVC架构,强大的路由,强大的Debug工具,代码安全,使用方便,自动更新等优点。LMLPHP在设计之初,作者特别重视代码体积...

    10大优秀的移动Web应用程序开发框架推荐

    10大优秀的移动Web应用程序开发框架推荐。用于android ,Ios开发。

    AspMvc框架 Web快速应用开发

    AspMvc是一个快速、简单的面向对象的轻量级Asp开发框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。 借鉴了国内外很多优秀的(Java Ssh/Net NetMvc3.5 ThinkPhp)框架和模式,使用面向对象的开发结构和MVC...

    jeeweb 敏捷开发框架源码

    JeeWeb是一款基于SpringBoot 2+Spring+Mybatis+Hibernate的敏捷开发系统;它是一款具有代码生成功能的智能快速开发平台;是以Spring Framework为核心容器,Spring MVC为模型视图控制器,Hibernate为数据访问层, ...

    基于Vue.js框架的Web前端开发工具的设计与实现

    另一方面,随着前端技术的不断发展,诞生了许多优秀的前端开发框架,其中Vuejs开发框架以其简单易学易用的特性,吸引了大量开发者,框架的完善程度和流行程度都在不断提升。本课题利用Vue.js框架开发了一...

    Java Web框架Play Framework v2.1.0.zip

    Play Framework是一个full-stack(全栈的)Java Web应用框架,包括一个简单的无状态MVC模型,具有Hibernate的对象持续,一个基于Groovy的模板引擎,以及建立一个现代Web应用所需的所有东西。   Play Framework的...

    JessMA Java Web 应用开发框架 (v3.2.2-20130815).pdf

    JessMA Java MVC & REST应用开发框架(简称 JessMA)是一套功能完备的高性能Full-Stack Web应用开发框架,内置稳定高效的MVC基础架构和DAO框架(已内置Hibernate、MyBatis和JDBC支持),集成 Action拦截、Form Bean ...

    优秀的开源Web开发资源

    精选开源领域里的优秀技术和开发框架,为实现低成本高效率的web开发提供非常有价值的参考。

    2014值得推荐的10个移动 Web 应用程序开发框架

    Sencha Touch 是世界上第一个基于 HTML5 的移动 Web 开发框架,支持最新的 HTML5 和 CSS3 标准,全面兼容 Android 和 Apple iOS 设备,提供了丰富的 WEB UI 组件,可以快速的开发出运行于移动终端的应用程序。...

    轻量级快速开发框架KanaPHP.zip

    为什么需要另一个框架? 市面上已经有很多框架,为什么我们还需要另外一个框架?Laravel、Yii 2、Symfony等都是非常优秀的框架,通过composer引入开源库,使用框架进行封装后提供丰富的功能组件;但是其中的问题也...

    ThinkPHP轻量级PHP开发框架v5.1RC2核心版

    ThinkPHP是一个性能卓越并且功能丰富的轻量级PHP开发框架,本身具有很多的原创特性,并且倡导大道至简,开发由我的开发理念,用最少的代码完成更多的功能,宗旨就是让WEB应用开发更简单、更快速。遵循Apache2开源...

    基于Python+Flask框架开发的微信公众号和web应用-毕业设计源码+使用文档(高分优秀项目).zip

    基于Python+Flask框架开发的微信公众号和web应用-毕业设计源码+使用文档(高分优秀项目).zip基于Python+Flask框架开发的微信公众号和web应用-毕业设计源码+使用文档(高分优秀项目).zip基于Python+Flask框架开发的...

    基于MVC的Struts框架在Web中的研究与实现

    企业版(J2EE)是SUN提供的一个标准的企业应用开发平台,它为我们开发企业WEB应用提供了丰富的技术选择。然而,一个高质量的应用有赖于设计良好的体系架构的支持。如何正确应用J2EE核心技术来设计和构建一个强健的,...

    Java Web框架Play Framework v2.1.0

    Play Framework是一个full-stack(全栈的)Java Web应用框架,包括一个简单的无状态MVC模型,具有Hibernate的对象持续,一个基于Groovy的模板引擎,以及建立一个现代Web应用所需的所有东西。 Play Framework的关键...

    etmvc:一个简易高效的web开发框架

    一个简易高效的web开发框架 etmvc是基于Java技术,为WEB开发提供的一套简易MVC框架。 简易但不简单,其设计和实现借鉴业界众多的优秀框架,如struts,spring mvc,ror,grails等, 力图为Java开发人员提供一套高效的...

    SparkWeb:SparkWeb是一个超轻量级的Java Web MVC框架

    Sparkweb 是一个超轻量级的简易高效的 Java WEB 开发框架,其设计思想结合了目前主流的 Spring、Struts2、Playframework、Nodejs-Expressjs、Ruby On Rails 等框架的优秀地方,完美支持 RESTful设计。 二、Sparkweb ...

    基于VUE开发前端框架,在WEB端部署YOLOv5目标检测模型.zip

    使用VUE框架开发一个简洁易用的WEB端目标检测应用。 部署YOLOv5模型,实现实时目标检测功能。 优化模型性能,确保在WEB端流畅运行。 设计友好的用户界面,提升用户体验。 项目开发: 使用VUE框架搭建项目的基本结构...

    JeeWeb敏捷开发平台,主要定位于企业快速开发平台建设,它是一款具有代码生成功能的智能快速开发平台

    JeeWeb是一款基于SpringBoot 2+Spring+Mybatis+Hibernate的敏捷开发系统;它是一款具有代码生成功能的智能快速开发平台;是以Spring Framework为核心容器,Spring MVC为模型视图控制器,Hibernate为数据访问层, ...

    Dsure-HTML5网站,前端开发框架

    简介: ...网页是一门技术,更讲究艺术,没有绝对的山寨与抄袭,更多的,是不断的探索学习和借鉴,国内的设计应该有更多更适应国内需求的探索,因此有了dsure这个CSS开发框架,喜欢的童鞋尽情下载。

Global site tag (gtag.js) - Google Analytics