泛泛谈自己对几乎只Web前端开发框架的比较【转帖】

http://chrisx.iteye.com/blog/697596

夫当是原本出处了。

=============================

直以来对Web前端开发兴趣格外大,用了一些框架产品。在JavaEye上来看有的正好沾前端开发朋友之疑点,犹豫这些制品的前景利弊,不知从乌下手。想拿温馨的一致点经历分享给大家,如产生未成功的远在请求一起来纠正。

jQuery
1.
绝的万金油,核心js只来50K,占用带富小,门户网站、管理体系,用在哪都得以。
2.
jQuery凡针对性js底层dom操作封装最薄的一个框架,没有大气的专有对象,多吗提供函数进行dom操作。准确之说,它不是看重于富客户端的框架,而是偏重于对js
dom编程。下面几乎种才是圆的富客户端的框架。
3.
自家认为其最充分之老三个亮点,一凡是支持CSS3的大度挑选符合,想稳定要选择一个html元素简直轻而易举。二是活便捷的Ajax请求与回调操作。三凡是事件绑定功能,内部封装了无数事件,想统一为一个页面及的片元素添加事件很有益,这为增长了复用性和可维护性,避免了页面被起大量的html属性。合理之编码可以要html与js,
css分离开,便于维护。
4.
此外它也卷入了森常用的操作,例如节点的增长去、常用的动画片效果、逻辑判断比较等等。避免了直接行使dom
api进行繁琐的操作。
5.
自己提供了可是扩大的函数,可以好修插件与核心jQuery对象开展合并应用。这为是常用之招数,只要你懂js面向对象编程,熟悉jQuery
API,就可知写来不少定制的插件,复用在各种地方。
6.
至于jQueryUI,与外框架不平等的地方在于,它可怜少用js去生成html,而是把现有的html通过jQueryUI的API加工变成想使之效能,关于这点是好是不行,我当即使是差的题目了,没有必要争论什么。

  1. 新生的jQuery EasyUI不错。
    8.
    而后底创新都维持现在这种模式,我看它的前景非常明朗,什么时javascript完蛋了才轮到它们玩了。

ExtJS
1.
套饱含UI的js库,封装得广大,很器重,核心js就600多K,这么深的东西门户网站当然就转变想了,里面的力量自然也非会见采用到门户网站,所以其是专门为治本网一旦大的。因为局域网不会见发出带动富问题。
2.
她同jQuery不同,基本上是纯用js来生成html的,页面里才待引入各个ExtJS库和而协调写的js,不会见面世多html内容,body里着力没什么。所以优化就显得重要了,不然会重浪费资源。
3.
UI就不说了,大家还认同,本来就为UI而生,它好开出来桌面级程序的效用。一般的话,一个管理体系的色只要用Ext,基本就从头到尾都是Ext做了,不会见像jQuery那样,哪想使了便加于哪,很轻易。Ext更如一个完好无损(虽然她为得以拆起来用,不过麻烦,不建议)。

  1. 供了针对性任何js框架的适配,像对jQuery,
    prototype等。没实际应用了,就不说了。
    5.
    明js面向对象编程在ext中生关键,如果您以为之所以jQuery时了解简易的dom和css即可,那若以马上就吃非常亏了,Ext处处离不上马对象的定义。
    6.
    Ext的UI开发类似C#,有很多控件。不同的是,你只要不折不扣和好手写,所以开发量较充分。现在虽有Ext
    Designer可视化工具,但其效果并无坏好,生成的代码有往往不是怀念如果之,不易维护,真开起来或好写更便利。
    7.
    团队开时,必须保证做UI的人头每人还会Ext,而且深入应用了,因为Ext项目是一体化,不适应参杂html替代。
    8.
    Ext色于IE系列浏览器上未可用,相当卡,我怀念立刻不是Ext本身的题目,所谓内存泄露等题材现在就解决了,而且无是关键所在。我起来多网页同时用IE8看jQuery.net官网时有时也会卡壳,试想他们官网肯定就非常好的优化了吧,jQuery既是这么,何况Ext。反观其他浏览器,FireFox,
    Chrome等浏览Ext项目都格外流利,所以应是浏览器对js解析不同造成的。
  2. 版权问题,Ext运用在买卖型被凡收费的。

Flex 
[祥和也是于上中,不敢妄言,以后深入下后再次做补充]

1.
Adobe平台之,基于ActionScript实现,用在啊还尽,但强调于内网管理网,用在门户网站就相当给当线玩Flash游戏,loading…

  1. 与Ext不同,它起强壮的可视化开发工具Flash
    Builder,可以同C#如出一辙进行拖拽布局,生成一种植xml,也有益维护。
    3.
    编译后生成swf文件直接坐html即可,提高安全性,浏览时同flash,需要flash
    player。
  2. 与Ext相同,也是属一个完,有加上的控件库。
    5.
    这条纯属个人观点,HTML5非支持插入对象,也就代表不克插入swf文件,难道Flex就倒了?虽然HTML5勿支持Flash是客观事实,但HTML5的联结啊时尚远,各大浏览器对HTML5的支持,Adobe是否会面有机关,这些会如何现在还坏说,HTML5及HTML4并行应该会出非常丰富一段时间,至少Flex在当今凡是一个超人的好产品,所以自己选择了它。

SilverLight
微软平台的,主要是应用在微软系列之语言中,包括CS与BS架构。同样,除了jQuery,Asp.net也未吻合和以上等框架集成,因为Asp.net是事件驱动,这些框架还是也信息令而不行之,勉强应用只会从事倍功半,丧失.net本身的优势。

js面向对象编程我直接在取,其实并不难理解,关于这点应该学下,很有必不可少。它涉及到代码复用、功能扩展、对象继承、闭包、优化等很多问题,能看去多编码,便于维护,还能无改框架源代码而实现不同的职能。

 

===========================================================================

 

jquery确实很火,应该是现阶段极其流行的了,基于该上述的 easy UI
似乎经常让波及,而且听名字好像也未麻烦,可以考虑看看

ExtJS应该也是主流吧,和jquery比两者的或者不大一样的,据上文说盖极度死如比符合局域网。。

flex是基于flash的

silverlight…这不是不行吃萌化的“小光”吗……

现阶段尚是优先看jqueryEasyUI和 easy UI