Extjs是什么

先从Wikipedia上了解下什么是Extjs?– http://zh.wikipedia.org/zh/Extjs
官方网站:http://www.sencha.com/
ExtJS是一个Javascript库,功能强大,界面美观,可以使用Ajax, DHTML,DOM等技术开发网络应用程序。

历史
最初的ExtJS只是YUI的一个扩展包,自1.1版开始独立发布。它是一个开源软件,遵守GPL 3.0协议。
插曲:什么是YUI?雅虎UI库(英语:Yahoo! UI Library,YUI)是一个开放源代码的JavaScript函数库,为了能建立一个高互动的网页,它采用了AJAX,DHTML和DOM等程式码技术。它也包含了许多CSS资源。使用授权为BSD许可证.
2007年12日4日推出Ext JS 2.0版。
2009年7日6日推出Ext JS 3.0版.Ext JS 3.1版中增加可分组的列标题。
2010年6月,Ext JS更名为Sencha(Sencha是日本的煎茶),並且整合jQTouch和Raphal库,這是世界上第一个基于HTML5的移动应用框架,全面相容Android和Apple iOS。
2011年4月26日,推出Ext framework 4.0版,引入了Config和Mixins概念,另外還新增class,開發人員可以在一个class包含另一个class。
2014年06月2日,發布Extjs 5.0,於新版本中支援Touch-screen,新架構MVVM提升運作效率,提供更多的chart與UI component

许可证
Extjs之前使用LGPL和商业授权的双重协议,在08年时改成了现在使用的GPL和商业授权的双重协议,也遵守其他的开源软件协议。

功能描述
Ext包括多种控件,可以实现各种各样的功能

文本框和文本域控制,可以控制文本框和文本域中的内容过滤,实现所见即所得的编辑形式。
单选框和复选框控制
Grid control(表格控件):可以轻松的实现表格数据统计,拖放。
树形控制:生成树形目录,编辑管理树,点击展开或是关闭。
Tabs:可活动的标签页,标签页组,可自由添加和删除的标签页,功能丰富。
工具条:在面板中可以方便的插入顶部工具条或是底部工具条,实现各种复杂的功能。
桌面应用程序菜单:可以制作类似于Windows桌面的网页菜单。
灵活的面板布局:将一个面板划分为东南西北中(ESWNC)五个部分,每个部分可以放不同的内容。
滚动条:用滚动条来控制数据的显示。
Flash图表:flash制作的数据图表功能。
优点和不足
Ext整合了CSS样式文件,窗口、面板都有现成的样式,甚至都不需要美工进行特别的美化就可以直接使用。功能涵盖了一个Web 2.0网站所需要的几乎所有的功能,非常完备。但是相应的文件大,加载速度并不理想,而且在低版本的浏览器上显示效果不佳。

=============================Wikipedia分割线=============================
既然Extjs是只是js的一个框架,那么和其他的框架有什么不同?例如:JQuery,YUI,Prototype,Dojo等

有人在这里做了总结:http://www.jb51.net/article/23076.htm ,我们直接贴过来:
随着web2.0的彪悍发展,以及浏览器端所承载的工作越来越大(在不是很影响性能的情况下,开发者都习惯把能用浏览器做的事儿都让浏览器做,以减轻服务器的压力和带宽费用等)。
所以Javascript已经成为了web开发最最基本的要求之一了。而在现实的敏捷开发中,我们通常会选择一个JS框架来取代繁琐的Native Javascript的编写。你会发现这样会节省很多的时间,写的代码也很清晰便捷。(当然在学生时代的是有也质疑过,用框架会对原生态的 Javascript理解不深入,其实这是多虑了的。在对框架的深入的同时,对原生的js也会理解的更透彻一些。成为一个精明的开发者,两者是相依相偎的。而最好的状态就是像Qzone前端一样,完全按照自己的需求开发出一套JS,CSS框架。–当然这是因为Qzone太大了)

目前流行的JS框架很多Dojo 、Scriptaculous 、Prototype 、yui-ext 、Jquery 、Mochikit、mootools 、moo.fx 等等。当然还有很多我都不熟悉的框架,就没有列举。 很多人会在坛子里问,到底哪个框架好呢?哪个框架更牛x呢? 哪个框架OO 更舒服呢? webryan 个人觉得,这是一个新手很容易犯的错误逻辑。 世界上任何东西,任何工具,都没有最好的这一个说法,只有适合和不适合。 我们要根据我们项目的真实需要来选择具有相关特性的框架。

一、JQuery

推荐级别:五星级

使用场景:任意

下载地址:www.jquery.com 或google搜 jquery下载

推荐原因:目前来说我使用最多的框架(当然我其他的框架也都真是项目开发过若干),也是我个人最推荐的一个。在和业内的一些技术聊的时候,发现 xiaonei.com的CTO 、腾讯、或是其他一些新兴的web2.0大牛们都首推这个框架。 那具体好在哪呢? 1.小. (这个上量后,很严重的问题) 2.简单. (学习成本低但成效高,手册有足够清晰的例子让你从0到项目完成) 3.内部结构好开源,侧重逻辑 4.对DOM选择强大(其实,JS大多时候是在处理DOM)5.UI扩展好(这里要提到的就是 Jquery tools和 Jquery UI,大家可以去搜搜看这两个Jquery的扩展UI,你会发现ui原来如此简单,也是因为ui的可扩展性,所以他相对于其他框架毫不逊色)。

二、Extjs

下载地址:http://extjs.com/

使用场景:内部系统。后台系统。管理系统等。

推荐级别:四星

推荐理由:Extjs有着非常牛逼的UI设计。所以当你做像后台管理,企业内部流程,或其他管理系统的时候,这个东西无疑是你的最佳选择。为什么呢? 因为它几行代码就可以生成非常漂亮的全界面UI,功能强大,样式可选。 做过一个CMS的后台和一个企业内部的系统都是用这个做的,节省了很多人力和时间,而且广受好评。 而它的缺点是,在一个页面加载很多tab的时候,js可能会要同时下载若干个文件。简单说就是js会比较大。 但对于后台管理和企业内部系统来说,这个会成为瓶颈。

三、YUI

下载地址:http://developer.yahoo.com/yui/

推荐级别:4星

推荐理由:YUI这个框架我只研究过,但没用在项目中独立使用过。大多是进入项目后,前辈们使用了YUI,然后我们在后续开发中延续了之前的角色而已。很久以前版本的QQ硬盘、mop的某些模块使用过的,但现在就是很清楚哪些人还在用了。它和Extjs有点相似,UI方面有很多优势。

使用场景:拆分YUI的各个模块,对不同需求采用yui中的某部分来填充到自己的模块中。或者是类似于网盘应用这种东东。

四、Dojo

下载地址:http://dojotoolkit.org/

推荐级别:四星

推荐理由:Dojo是功能最为强大的javascript框架,刻意提醒一下:功能最强大。所以它几乎包含了所有你可能想要用到的东西。)。 Dojo更适合企业应用和产品开发的需要,因为离线存储、DataGrid、2D、3D图形、Chart、Comet等组件对于企业应用来说都是很重要的(当然这些组件还要等一段时间才能稳定下来)。例如,BEA基于Mashup技术开发的产品中已经使用了Dojo。但是但是,我们是否需要这些功能?做 web2.0产品是有要这么大的东东呢? 这个要按照你自己的需求来。 而且Dojo缺点很明显,太大,功能太多,学习曲线太陡。 但是它做企业应用的话,那简直是如鱼得水。这也是IBM等公司招聘的时候,把Dojo和学习Dojo放在第一位的原因。

五、Prototype

最成熟的。但个人认为可以被Jquery取代。两者相似度也比较高。这里就不多说。

六、Mootools

下载地址:http://mootools.net/

推荐级别:4星

推荐理由:OO设计思想。模块化强,耦合度比较低。有人说,它的UI效果比Jquery UI好一些,没用过它的ui就暂时不多说了。各位开发者可以参见他们的demo看效果或者选择器等东西是否适合自己。

ok,真正的框架还是用出来的,写出来的。如果你看完上面的东西还是一头雾水,那么建议你从JQuery开始吧。

=====================================再次分割线=========================================
那如何使用了?
首先为经典版eclipse增加Tomcat插件
具体的集成过程,可以参考:集成 Tomcat 插件到 Eclipse 的过程

Luna就很方便,Kepler可能有一些不太一样。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>