`
bqw_5189
  • 浏览: 32376 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

JavaScript框架的选择标准

阅读更多
随着AJAX技术日益广泛地被采用,许多开发者和架构师仍然在尝试甚至挣扎于应该采用什么样的最佳方式来评估JavaScript框架/库。Brian Raindel提供了一些意见 ,关于在选择框架的过程中应该考虑的各个方面,总结如下:

◆项目需求
“这个Web 站点或者Web应用,是否需要AJAX,健壮的事件处理?是否需要特效库?”框架直接提供的功能的总量,以及使用框架需要的经验同样需要考虑。
◆对浏览器的支持
虽然大多数框架能够支持大多数浏览器,“……但是通常会有不易察觉的例外——Mac操作系统上的Safari浏览器常有这样的陷阱”。
◆开发团队对框架的支持力度
有一个核心开发团队来维护的框架是最好的。这样Bug报告和问题会有更快的响应速度,而且测试会更加严格,会更好地遵守开发指导方针。
◆框架的成熟度
“框架的成熟度是最能说明其寿命的指标,同时也是框架的坚实基础。一个成熟的框架不会是beta版的……”一个兴旺的社区,以及提供Subversion或CVS代码库,也是成熟标志。
◆公开更新和发布的频率
长时间的延迟和臃肿的发行版,都是你在将来得不到框架的有效支持的明确信号。反之,过多的公开版本意味着不稳定,或者项目不够专注。”
◆文档质量
文档是一个重要的区分指标。强健的文档包括API、书籍、教程和博客,而“只谈论句法的文档是最差劲的”。每个方法和属性的例子也是很有帮助的。
◆存在一个活跃的社区
“有经验的用户是愿意伸出援助之手还是打发你去其他地方寻找帮助?是否有开发者为框架开发扩展或者为核心框架作出贡献?”社区的个性也是判断社区是否可依靠的风向标。
◆基准测试
基准测试可以帮助我们对于框架的性能方面得到概括的认识。基准测试还说明了框架采用了某些质量保证方面的最佳实践。另外,“……即使是速度上的略微提高,或者软件的尺寸缩小了,都可以视作一种正面的改进。”
◆框架的可扩展性
“支持插件对于任何JavaScript框架来说都绝对是加分的,但是通常开发者仅仅想知道——在核心库中诊断问题所在有多困难?”
◆API风格
“这是一个重要的问题,但是是个复杂的问题。对于大多数开发者来说,只有在很多项目中使用过几个JavaScript框架之后,才会对这个问题有所认识。简洁和连贯性(chainability)是两个非常重要的特征,不要忽视。”

在对该文章的一些评论中,有一些很好的意见可以作为选择JavaScript库的标准:

◆是否有充分的功能测试和单元测试?—— Kanjax的评论
◆该框架是否有商业化的支持?

有许多评论者肯定了JQuery,然而Ian认为在需要高性能的场景下,使用JQuery和prototype需要格外注意:

如果你的应用需要高性能,那么你要小心这些JavaScript框架。Prototype和jQuery在使用大的数据表和网格的时候会死的很难看。

我对我目前正在工作的项目做了大量的基准测试,该项目大量使用AJAX技术,并且用在项目核心的大数据表上。

我试验过jQuery和Prototype,它们的性能总是不行。问题在于document.getElementById()方法。DOM的查找操作是非常耗时的。实际上,我们的测试似乎表明DOM查找不是通过哈希来完成的。

许多框架会加入你通常用不上的扩展,这些扩展会降低性能。我们的解决方案是研究框架做了什么,然后我们自己编写代码,除去所有的扩展和任何无关紧要的框架支持。

但是对于没有大数据表的小型Web页面,Prototype或者jQuery工作得很好,而且易于使用。

其它评论者指出Mootools提供了一份对Protoype、JQuery和Mootools进行的基准测试。
分享到:
评论

相关推荐

    10大js框架 javaScript框架

    在探讨“十大JavaScript框架”这一主题时,我们深入解析了多个关键框架,这些框架在现代Web开发中扮演着至关重要的角色。以下是对每个框架的详细分析: ### 1. Prototype Prototype是最早一批的JavaScript库之一,...

    JavaScript框架比较.doc

    总的来说,JavaScript框架通过提供标准化的API和实用工具,降低了开发富互联网应用程序的复杂性,提高了开发效率和代码质量。选择合适的框架取决于项目的需求、团队的技能集和性能考虑。常见的JavaScript框架有...

    强大的javascript框架

    JavaScript框架是Web开发中的重要工具,它为开发者提供了一种标准化的方法来组织和构建复杂的Web应用程序。本篇文章将深入探讨腾讯推出的JavaScript框架——AlloyTeam-JX-ac76a4d,以及它如何体现“强大”这一特点。...

    服务端JavaScript框架 RingoJS

    总结来说,RingoJS是一个优秀的服务端JavaScript框架,结合了JavaScript的易用性和Java的高性能,为开发者提供了一种全新的全栈开发选择。它的模块化设计、内置模块以及与Java的集成,使得它在构建Web应用时具有很高...

    一种基于JavaScript框架的混合应用开发技术.pdf

    基于JavaScript框架的混合应用开发技术.pdf 摘要:本文提出了一种基于JavaScript框架的混合应用开发技术,以解决当前混合应用开发框架在扩展性和应用性能方面的不足。该方法设计了JavaScript框架模块,并对终端的...

    bBank 开源Javascript框架.zip

    **bBank开源JavaScript框架详解** 在当今Web开发领域,JavaScript框架是不可或缺的工具,它们极大地提高了前端开发效率,简化了复杂交互的实现。bBank开源JavaScript框架,正如其名,是一个专为构建银行或金融相关...

    基于JavaScript的项目框架模板

    "基于JavaScript的项目框架模板"通常是指一套预先配置好的代码结构和工具集,旨在加速和标准化JavaScript项目的开发流程。这样的框架模板可以包含各种依赖管理、构建工具、模块化方案以及测试框架等,为开发者提供了...

    实验3 扩展JavaScript框架应用1

    【实验3 扩展JavaScript框架应用1】是一个关于Web应用程序设计与开发的实验,主要涉及JavaScript框架的应用,尤其是EasyUI和jQuery,同时结合了Java的JDBC技术来访问数据库。实验目的是让学生掌握JavaScript扩展框架...

    JavaScript框架Cox.zip

    Cox 是开原的 JavaScript 框架,它是在标准原生 JavaScript 基础之上对 JavaScript 使用的扩展 Cox 框架设计的原则 模块化 风格统一 不求精简只求实用 不污染环境提供的内置类型 ...

    Javascript框架学习

    首先,JavaScript框架如React、Angular和Vue.js已经成为了前端开发的标准。这些框架提供了一种组织代码的方式,使得应用的结构更清晰,同时通过组件化开发,让复用和维护变得更加容易。例如,React以其虚拟DOM和组件...

    HTML CSS JAVASCRIPT标准教程 实例版_0

    4. 进阶话题:AJAX(异步JavaScript和XML)用于与服务器通信,jQuery库简化DOM操作,以及可能涉及到的框架和库如React、Vue或Angular的入门知识。 实例是学习编程的重要部分,这个教程很可能包含了大量的实例代码,...

    EasyUI轻量级WEB前端JavaScript框架.rar

    EasyUI是一款基于JavaScript和CSS的轻量级WEB前端框架,由DHTML精英俱乐部的W3C标准WEB前端专家设计和开发。它旨在简化网页应用程序的构建过程,提供一系列易于使用的组件,帮助开发者快速构建功能丰富的用户界面。...

    JS HTML经典框架

    JavaScript框架是预编写的一系列代码,用于简化JavaScript开发,提供可重用的组件,促进快速开发。它们通常包含用于处理DOM操作、事件管理、数据绑定、路由和动画等功能。一些知名的JavaScript框架包括: 1. ...

    Javascript拖放框架

    JavaScript拖放框架是一种用于网页开发的技术,它允许用户通过简单的鼠标操作在页面上移动元素,实现元素的拖放功能。这种技术基于Web标准,主要利用HTML5的Drag and Drop API,使得开发者能够创建出交互性更强、...

    一个非常好的开源GIS javascript框架

    OpenLayers 是一个强大的开源GIS(地理信息系统)JavaScript框架,它允许开发者在网页上创建交互式的地图应用。这个框架以其灵活性、可扩展性和丰富的功能而受到广泛的赞誉,为开发者提供了在Web环境中集成地理数据...

    HTML、CSS、JavaScript标准教程PPT

    本"HTML、CSS、JavaScript标准教程PPT"涵盖了这些核心Web技术的详细内容,对于想要学习网页制作的人来说是一份宝贵的资源。PPT可能包括以下几个部分: 1. HTML基础:介绍HTML5的新特性,如离线存储、拖放功能和...

    JavaScript框架高级编程(第一章扩展和增强DOM元素 )

    ### JavaScript框架高级编程——扩展和增强DOM元素 #### 1. 概述 在JavaScript开发过程中,DOM(Document Object Model)操作是极为重要的一个环节。DOM是用于HTML和XML文档的标准对象模型,允许程序和脚本动态...

    javascript框架设计读书笔记之种子模块

    在深入探讨司徒正美所著的《javascript框架设计》一书第一章种子模块的读书笔记之前,有必要先了解JavaScript框架设计的核心概念与实践。框架设计是软件工程领域中的一个重要组成部分,它为开发者提供了一套规范化的...

    JavaScript仿京东城市地区选择器3级联动菜单,适用于电商购物网站。兼容主流浏览器

    此外,现代前端开发往往使用框架或库来提升开发效率和代码质量,如React、Vue或Angular,但这里提到的示例可能没有使用这些高级框架,而是直接使用原生JavaScript实现。 实现3级联动的关键在于数据的管理和事件的...

    网页设计课程标准

    网页设计课程标准主要涵盖HTML、CSS和JavaScript三个核心技术,旨在培养学生的实际应用能力和创新意识。课程定位为计算机网络技术专业的核心课程,采用“工学结合、项目导向”的教学模式,以提升学生在网页设计领域...

Global site tag (gtag.js) - Google Analytics