http://www.iteye.com/news/29029?page=2#comments
每种产品都是有自己的定位!根据项目业务来选择技术平台才是正确的,平台好不好,要看是否适用当前项目!下面笔者根据自己的开发经验谈谈自己的看法,个人经验之谈!还有一句话要说明一下:任何一个开发人员都不喜欢去设计界面!设计师的逻辑跟程序员的逻辑思维是不一样的!设计师面对的是用户为用户体验而设计,程序员面对的是代码为系统的性能而编写!
1、ExtJs
ExtJs 开源、商业应用收费的前端富客户端框架!强大的组件库、完美的浏览器差异兼容!能大大减低开发人员的开发难度,提高开发效率!出色的布局能力使得即使没有一点设计基础的人员也能搭建漂亮、丰富的界面!通过内置的强大Ajax类实现了完美的后台交互能力!由于太过丰富、重量!使得他更适合应用企业级系统应用开发!
Component类使得任何一个OO开发人员都能驾驭该框架,设计很好的界面与功能!不在需要开发人员编写大量的Html元素!即使在没有美工、设计师在情况下,你也能开发出一个相当成功的项目!大大降低了研发成本!当然了需要一个出色的OO开发人员!
丰富、出色的组件库、主题样式
完美的独立性、不需要集成任何第三方插件、使得浏览器兼容性不再是问题
强大、丰富的文档、社区支持
对JS原生对象的扩展,使得我们更好的应用JS对象;如:Array、Date、Function、String
脱离传统B/S软件对美工的依赖,纯粹依靠开发人员来构建软件系统。
目前版本:Ext 4.2
2、jQuery EasyUI
jQuery EasyUI是基于JQuery的一个前台ui界面的插件,功能相对没extjs强大,但页面也是相当好看的。一些功能也足够开发者使用,相对于extjs更轻量。
jQuery EasyUI有以下特点:
基于jquery用户界面插件的集合
为一些当前用于交互的js应用提供必要的功能
使用 EasyUI你不需要写很多的javascript代码,通常只需要写HTML标记来定义用户界面即可
支持HTML5
开发产品时可节省时间和资源
简单,但很强大
支持扩展,可根据自己的需求扩展控件
目前各项不足正已版本递增的方式不断完善
3、Flex
作为新一代的富客户端互联网技术的佼佼者,Flex这种技术已经被越来越多的公司所采用,被越来越多的用户和程序员所接受。可是随着html5的发展,Flex的前景不是那么的明朗!毕竟他是为了开发人员能够使用到Flash的一些功能而设计!从目前的Html5发展程度,很有可能取代Flash,Adobe公司也表示已经降低的Flash、Flex的研发精力转而投入到Html5的研发!虽然这样,但是Flex的优势也是显而易见的!笔者也使用过Flex开发项目,总的来说还是很不错的!也表示希望继续使用此技术!
由于程序是运行在Flash Player虚拟机里面,所以有着良好的跨平台性和兼容性!支持多种后台交互技术(笔者表示分布式的系统架构能更好的体现Flex的优势)!
Flex技术包括以下几个主要技术框架:
描述应用程序界面的XML语言(MXML);
符合ECMA规范的脚本语言(ActionScript),处理用户和系统的事件,构建复杂的数据模型;
一个基础类库;
运行时的即时服务;
由MXML与ActionScript文件生成swf文件的编译器。
Flex与Flash:可以让普通程序员开发制作Flash成为可能
界面表现能力一流。
RIA富客户端应用,解决了异步调用,界面无刷新,浏览器兼容性等多项难题
对流媒体的支持:Flex是被公认为流媒体技术支持最好的应用
平台的可用性:根据ADOBE公司的说法,Flash player在全世界一半的PC机器上安装度为99.8%
跨平台:Flash player能够在linux下运行,也可以在手机上运行,所以不用担心绑死在WINDOWS上
对底层的可操作性:Flex能够调用底层的东西,比如可以调用摄像头实现视频,而且视频本身就嵌入在Flex应用中,由Flex player直接播放。
平台的后续运营和发展前景:Flex是由ADOBE公司推出的且开源
有充足的学习环境: Flex官方样式配置工具,可以在线配置Flex应用程序各种控件的外观样式,改程序也是用Flex编写的,大家可以想象Flex可以做到什么程度的应用了,而且这么漂亮的界面,根本不用做任何图片和美工,都是直接用样式实现即可。
可以用任何你熟悉的WEB编程平台作为后台数据访问层,可以使用.net,php,jsp,webservice 。
脱离传统B/S软件对美工的依赖,纯粹依靠开发人员来构建软件系统。试图让开发人员在完全不需要学习Flash情况下,直接进行Flash RIA编程,这样的话,避免了B/S中遇到的情况,加重了开发人员的学习负担,且这些东西本来就不是开发人员所擅长的。
4、Dojo
(笔者表示没有用过,从网上参考了一些建议)
优点:
背后强大的支持:IBM、Sun、BEA等,这是非常重要的优势。
功能的强大,Full Stack的框架,扩展了DHTML的能力,例如:
支持与浏览器Back/Forward按钮的集成。
Dojo Offline,一个跨平台的离线存储API。
Chart组件,可以方便地在浏览器端生成图表。
基于SVG/VML的矢量图形库。
Google Maps、Yahoo! Maps组件,方便开发Mashup应用。
Comet支持,通过通用的Buyeux协议。
强大的UI(Dijit)。
面向对象的设计,统一的命名空间,包管理机制(The Package System and Custom Builds)
可扩展性。
复杂,学习曲线陡。
文档的极端不全,这是一个很大的问题。
API很多不稳定,各版本间改动较大,现在还不是一个成熟的框架。
侵入性太大,页面中大量使用dojo的属性,例如<button dojoType="dijit.form.Button" id="helloButton">,如果将来dojo升级或者换一个框架时,负担会很大。
性能问题,由于dojo加载采用了同步的机制,会暂时锁定浏览器,导致CPU使用率达到100%。另外,很多Widget的速度很慢。
(笔者正在学习使用,想了想不是很适合我们当前的项目)
6、jQuery
做Web前端开发人员都知道的一个东东!不论是框架本身的设计、架构、还是展现出来的功能都是上上之选!但它是一个类库,不是一个框架,它提供的是函数、方法、功能!这样一来问题也就暴露出来了,由于它本身不带任何UI层的东西!虽然它拥有强大、丰富的插件扩展!但是由于各个开发者技术能力良莠不齐,导致插件的兼容性、稳定性大大降低!对于当前的几个jQuery UI库还是很不错的!比如上面说到的EasyUI与jQuery UI、jQuery mini UI!都有一个同样的问题就是需要编写大量的html代码,所以看个人爱好了!
7、Bootstrap
说到Bootstrap,这方面的资料就比较少了!所以我只是一个了解,没用过!但是由于其流行性,我又不得不去了解他!打开它的官方网站我们可以看到一句话:简洁、直观、强悍的前端开发框架,让web开发更迅速、简单。看到这句话我就动容了!在看完整个文档介绍,确实它值得这样宣传自己!
Bootstrap是Twitter推出的一个开源的用于前端开发的工具包。它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架。Bootstrap提供了优雅的HTML和CSS规范,它即是由动态CSS语言Less写成。
Bootstrap是基于jQuery框架开发的,它在jQuery框架的基础上进行了更为个性化和人性化的完善,形成一套自己独有的网站风格,并兼容大部分jQuery插件。同样它拥有强大的Web UI组件库!但是上手难度比较大,至少我看完整个文档后,我还是不知道怎样去运用它!可是它潮流、精美、优雅的界面吸引着我!我想我该去尝试学习它了!
========================================
26 楼 lohasle 2014-05-14 09:09
25 楼 white_crucifix 2014-05-13 19:07
但绝大部分人都承认Extjs用起来比其他框架要难用。
其本质在于大部分时候,我们做的页面不需要达到Extjs提供的那些强大、完善的功能。
比如,用Ext创建一个基本的grid(表格),在表格头上,表格行上,都存在很多现成的功能或者事件。换句话说,用其他工具要达到这个效果,就得自己写下大量(零碎丑陋,可能与业务逻辑混在一起)的UI代码。
当然我们往往不需要这些功能。。。。
24 楼 flasheep 2014-05-13 16:48
23 楼 malie0 2014-05-12 16:03
22 楼 shenshouer 2014-05-12 09:44
21 楼 endual 2014-05-12 09:00
20 楼 ZC168 2014-05-12 02:26
http://dl2.iteye.com/upload/p_w_upload/0097/0119/10bbda48-3dba-3f1a-b458-8a2e220d656f.png
19 楼 xf326521 2014-05-11 22:09
18 楼 yixiandave 2014-05-11 21:47
请看清楚,“都能使用 EXTJs进行开发”,不是“都使用EXTJs进行开发”!!
ExtJs学习曲线过于陡峭,我不觉得现在公司有那么多extJs的人才储备
17 楼 flyfan 2014-05-11 13:21
请看清楚,“都能使用 EXTJs进行开发”,不是“都使用EXTJs进行开发”!!
16 楼 lgscofield 2014-05-09 21:51
15 楼 fly_宇光十色 2014-05-09 13:50
14 楼 hellostory 2014-05-09 13:21
请问楼主,这算是问题吗?你本来就是在搞HTML网页开发啊!个人认为写HTML比Extjs直观多了!
13 楼 joe9i0 2014-05-09 09:33
12 楼 mfkvfn 2014-05-09 09:27
感觉现在怎么什么人都敢发文章,不要误人子弟好么
+1
连鼎鼎大名的YUI和jQuery UI都没有。
如果Flex也算的话,JSF和JavaFX、GWT也算吧。
11 楼 wade200 2014-05-09 08:40
10 楼 zhmn99 2014-05-09 08:24
9 楼 442488160 2014-05-09 08:20
感觉现在怎么什么人都敢发文章,不要误人子弟好么
8 楼 allenny 2014-05-08 23:34
7 楼 mathgl 2014-05-08 21:54
只说dojo这一项。1.7后已经支持amd。
也不再使用 dijit.form.Button 的用法
至于文档,早期确实缺乏,现在大有改善。
6 楼 Java4ever 2014-05-08 21:51
5 楼 yixiandave 2014-05-08 20:02
4 楼 yixiandave 2014-05-08 19:58
我们目前在用AngularJS,MVVM分离的相当彻底,除了少数几个维护directive的人员,普通前端开发人员根本不用关心dom结构问题,美工的设计html拿来可以直接用
我也不是很喜欢extjs,样式限制太死,完全压制了美工的设计发挥
3 楼 franciswang 2014-05-08 17:10
2 楼 ytll21 2014-05-08 16:17
1 楼 blooming 2014-05-08 16:16
转载于:https://blog.51cto.com/utalents/1411262