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

javascript类库[z]

    博客分类:
  • Ajax
阅读更多
From: http://blog.csdn.net/tonyqus/archive/2008/01/09/2031165.aspx
JavaScript其实出来好多年了,这大家都清楚,但是近几年新出现的一些JavaScript框架的确给JavaScript带来了新的活力。随着基于JavaScript的RIA开发越来越频繁、热门,越来越多的程序员开始为如何编写这些繁多而散乱的JavaScript代码而抓狂,代码越来越多、越来越复杂,一些调试工作似乎已经成为标准的体力活,也正是因为如此才有了我接下来要说到的几款JavaScript开发框架。

最早也是最出名的要数prototype了,这款鼻祖级的JavaScript库,如今已经配了新的搭档,那就是Script.aculo.us,这是一款完全基于prototype的开发框架,提供了相当数量的上层应用组件和函数,你可以这么理解,假如把prototype比作MSIL,那么Script.aculo.us就是.NET语言。目前prototype的最新版本是1.6,Script.aculo.us的最新版本是1.8,详细信息请见:http://script.aculo.us/

接下来介绍的是JQuery,这个也算是JavaScript开发框架的新星了,虽然出来也有些时日了。JQuery与prototype比起来要更成熟一些,并且支持更好地扩展性,目前有相当多的JavaScript开源控件都是基于JQuery的,其强大的selector的功能堪称一绝,对于html的元素选择就像css selector一样。详细信息请见:http://jquery.com。另外jquery还把一些UI控件集成为一套库,叫做ui.jquery,大家可以去http://ui.jquery.com 看看demo(建议看的时候不要喝水、吃东西,会喷出来的)。

接下来要介绍dojo,这也是一套类似于prototype的库,不过我没有怎么用过,功能方面似乎与prototype基本类同,还是属于比较底层的库。目前也有一些基于dojo的控件和应用。想了解dojo的信息,请看http://dojotoolkit.org/

另外的两个比较有名的框架就是Yahoo UI和Google Web Toolkit了,这两个相信大家都比较熟悉,特别是Google Web Toolkit更是解决了如何用java代码来写javascript的问题,即通过编译器和解析程序生成javascript,这是一个很不错的功能。这一点,.NET仍然做的不足,我们仍然要通过大量的RegisterScriptBlock来解决问题动态javascript生成问题,从开发体验的角度讲,这样容易分散程序员的经历,因为程序员不得不平凡地切换思考模式,一会儿是写.NET代码,一会儿是写Javascript代码。不过呢,有人已经注意到了这个问题,并且开发了Script#,就是专门用来解决.NET下的JavaScript开发体验问题,个人用下来还是不错的,大家可以去http://projects.nikhilk.net/Projects/ScriptSharp.aspx 了解Script#。

还有一款不得不介绍的JavaScript开发框架就是extjs,这两天已经看到cnblogs上有人在介绍这个库的一些开发心得了。这款开发框架并不像jquery和prototype那样,严格意义上讲jquery和prototype只能算开发库,而extjs则是真正的开发框架,它不仅仅解决了底层的浏览器兼容问题、通用的一些开发功能,也为开发者提供了大量的内建控件库,例如,用于布局的BorderLayout、Viewport,用于生成表单的FormPanel等等,请注意,这些控件都是内建的,而非基于extjs开发,这个差别直接导致了整个开发框架的完整性有很大程度的提高,对于开发人员来说,与其把很多来自第三方基于一套库开发的控件放到一个项目中来,倒不如直接用内建的控件来得方便,而且整合度更高,代码可靠性也高。extjs还有一点值得称道,那就是它为其他javascript开发库提供了兼容适配器,主要为jquery,prototype+Script.aculo.us和Yahoo UI提供了适配器,这是其他开发库所没有涉及的,这直接说明extjs的开发者们很有远见,融百家之众长,把其他库好的地方直接引入为我所用。有关extjs的详细信息你可以访问http://extjs.com。

另外,微软的ASP.NET AJAX以及Silverlight中也引入了相应的JavaScript库,虽然以我个人的角度看,这些库还无法与第三方开源库相抗衡,但对于微软自己的产品来说是足够了,当然这是一个信号,预示着在微软未来的开发库中,JavaScript将占据相当比重,特别是当Silverlight后续版本发布的时候。这里要澄清一点,在过去几个月中,曾经看到过一些文章中说微软的Silverlight与ASP.NET AJAX的定位有重合,所以有人认为ASP.NET AJAX是没有意义的,是微软的决策失误,但从我个人的角度看,就目前的Silverlight 1.0(1.1目前没有release,不纳入讨论范畴)而言,它与ASP.NET AJAX并不冲突,Silverlight是针对高端RIA应用的,而ASP.NET AJAX则更多地瞄准低端RIA,至于最后会不会把这两个产品整合,我目前不敢断言,但从技术发展的趋势看,微软在未来2-3年内很有可能会推出RIA Foundation(个人猜测,不代表微软官方观点)。从技术角度看,Silverlight选择JavaScript作为脚本引擎自然有它的道理,一方面是因为减少重复开发,没有必要像Adobe的Flash那样再做一个ActionScript,劳命伤财~~另一方面是因为它能很好地与现有的AJAX及低端JavaScript应用整合,这是一个很明智的选择,如果你要把应用程序移植到Flash上,还是有相当的ActionScript要重写(虽然Flash也支持JavaScript交互),但是如果移植到Silverlight上完全不需要这么麻烦,Silverlight能与以前的程序形成互补,这就是差别。
分享到:
评论

相关推荐

    封装JavaScript常用类库.rar

    总之,封装JavaScript类库是提升开发效率、保证代码质量的重要手段。合理使用这些类库,能够帮助开发者更专注于业务逻辑,而不是基础功能的实现。通过学习和使用这些封装好的类库,开发者可以更好地遵循最佳实践,写...

    JQuery Plotter图表类库 v1.5源码2012519

    现在网络上有大量的Javascript图表类库。 本源码在演示如何整合Javascript图表类库在ASP.NET(Adam.JSGenerator),如何建立客户图表取决于您的需要。 已经修正之前版本中出现的问题。并添加了许多新功能 来自51...

    5个最佳的Javascript日期处理类库分享

    标题《5个最佳的Javascript日期处理类库分享》告诉我们这篇文章的主旨是介绍五种适用于JavaScript开发者的日期处理库。这些库提供了超出JavaScript原生Date对象功能的工具,用于解析、格式化和处理日期时间数据。 ...

    JSON类库 Flexjson.7z

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传递数据。Flexjson是一个Java库,它允许程序动态地序列化和反序列化Java对象到JSON格式,反之亦然。这个库的主要优点是...

    【类库与框架】-Galaxy Engine-Game Engine.7z

    本压缩包"【类库与框架】-Galaxy Engine-Game Engine.7z"包含了Galaxy Engine的核心源代码,为我们深入理解其工作原理、优化性能以及进行二次开发提供了宝贵的资源。 一、源码结构分析 "galaxyengine-read-only...

    一个高效通用而又简单易用的客户端表单输入验证类库函数

    本项目提供了一个高效、通用且简单易用的客户端表单输入验证类库函数,专注于JavaScript和正则表达式技术,以实现这一目标。 首先,我们来探讨JavaScript在客户端验证中的作用。JavaScript是一种轻量级的解释性脚本...

    js实现覆盖层浏览图片及特效(可拖动) js封装成类库

    本篇文章将深入探讨如何使用JavaScript实现这样的功能,并将其封装成一个类库,同时兼容IE和Firefox等主流浏览器。 首先,我们需要了解JavaScript事件监听技术。事件监听是JavaScript处理用户交互的基础,它允许...

    partone.7z

    `common` 目录下的代码可能是一些跨项目可重用的工具、函数或类库。最后,`finance` 目录中的代码可能是特定于金融领域的算法、数据处理脚本或者与财务分析相关的应用。 为了更好地理解和利用这些代码,你需要对...

    C Sharp Utility.7z

    在本压缩包"C Sharp Utility.7z"中,您将找到一系列预先编写好的C#类,这些类旨在简化和加速您的开发工作。这些类库涵盖了多个领域的常见任务,包括数据处理、前端交互、图表绘制以及文件操作等。下面,我将详细地...

    JDK和JS帮助文档.7z

    本压缩包"JDK和JS帮助文档.7z"包含了JavaScript和JDK1.6的相关帮助文档,是开发者进行学习和工作的宝贵资源。 JavaScript,一种解释型、弱类型的脚本语言,主要应用于Web浏览器,为网页添加动态功能,如交互式表单...

    cef_off_screen.7z

    标题中的"cef_off_screen.7z"是一个包含CEF离屏渲染示例的压缩包文件,主要探讨了如何在MFC环境中使用CEF(Chromium Embedded Framework)实现异型窗体并展示HTML5内容,特别是Live2D动画。CEF是一个强大的开源框架...

    JS正則表達式.7z

    JavaScript(简称JS)正则表达式是编程领域中一种强大的文本处理工具,它在JavaScript语言中扮演着核心角色,用于模式匹配、字符串搜索、替换和提取等操作。本压缩包包含有关JS正则表达式的详细资料,以及一个与JNI...

    Java Jdk 环境软件安装包.7z

    6. Nashorn JavaScript引擎:允许Java代码直接执行JavaScript,促进了多语言之间的交互。 安装和配置Java JDK 8并熟悉其新特性,对于Java开发者来说至关重要,这将帮助他们编写出更高效、更易于维护的代码。

    jdk1.8-301.7z

    6. **Nashorn JavaScript引擎**:Java 8中包含了Nashorn JavaScript引擎,允许Java代码直接执行JavaScript代码,提供了Java和JavaScript之间的互操作性。 7. **并行流**:Stream API支持并行处理,可以利用多核...

    CefDemo.7z

    **CefDemo.7z** 是一个压缩包文件,包含了使用MFC(Microsoft Foundation Classes)框架通过CEF(Chromium Embedded Framework)封装谷歌Chrome浏览器内核的项目资源。CEF是一个开源库,允许开发者在自己的应用程序...

    网址目录程序FreeGlobes.7z

    3. `classes/`:类库文件夹,存储了各种类和对象,用于实现不同功能。 4. `templates/`:模板文件夹,包含HTML和CSS文件,决定了程序的界面样式。 5. `scripts/`:JavaScript脚本文件,用于实现前端交互效果。 6. `...

    在浏览器上运行Java程序 Doppio.7z

    1. **源代码**:Doppio的JavaScript实现,包括虚拟机、类库和编译器等组成部分。 2. **文档**:关于如何构建、配置和使用Doppio的指南,以及API参考文档。 3. **示例程序**:一些简单的Java程序示例,用于演示如何在...

    go2000网址导航 PHP版.7z

    8. **库和框架文件**:可能使用了PHP框架,如Laravel、CodeIgniter等,包含框架的类库和函数。 9. **日志和错误文件**:记录系统运行状态和异常信息。 10. **文档和说明**:可能包括README或INSTALL文件,提供安装和...

    4229简洁宽屏相册图片展示响应试模板5196_企业网站模板PHP整站源码.zip.7z

    此模板可能包含了用于创建相册的PHP类库、JavaScript插件或CSS样式,帮助用户轻松上传、管理和展示图片,同时提供滑动、缩放等交互效果。 考虑到文件名中的".zip.7z",这表明源码被压缩了两次,先用ZIP格式打包,...

    JS写的非常强大的遮照效果

    JavaScript(简称JS)是一种轻量级的解释型编程语言,广泛应用于网页和网络应用开发,尤其是前端领域。在网页设计中,遮照效果通常用于创建弹窗、提示框或者加载动画等,为用户提供更好的交互体验。这个“JS写的非常...

Global site tag (gtag.js) - Google Analytics