浅谈Extjs、Flex、Jquery等富因特网时代框架的用武(转)
程序员文章站
2022-06-09 15:45:02
...
经过多年的互联网技术发展,网站的互动性越来越强,软件从C/S到B/S,又到了B/S结构的C/S界面体验,伴随着大量的富因特网框架的出现完成了一个螺旋式的轮回,目前我们在项目中使用的主要B端(浏览器端)框架中Extjs、Flex、Jquery应该是使用频率最高的三个框架,但这三个框架不是什么场合都适合使用的,所谓尺有所短寸有所长。
从我做过已经接触到的项目中,如果是做局域网内、应用系统类、办公类等系统,Extjs或Flex是个不错的选择,如我了解的现在国内一些银行内部已经在使用这两个框架来开发内部应用系统,烟草行业订烟系统目前也使用Flex开发(这个技术选择我个人认为是不太好的,虽然很炫,但照目前国内的网速,客户体验度不高,要下载很多的资源)。
如果是做公网上的网站,Extjs和Flex还是尽量避开使用,优先推荐JQuery,无论什么系统,系统的速度是客户体验的第一道门槛,如果选择Extjs或Flex,网站的打开速度会是一个考验,不小的运行库下载耗费的时间会让访客桃之夭夭的,这几年我一直亲手开发的家家买礼品网可谓这三种框架都试过,老版网站前台一律使用Jquery,后台使用Flex,但不稳定的网速会经常造成后天长时间的打不开,之后采用了AIR安装包方式,直接做成桌面版,但也是喜忧参半。
好处是:AIR的特性能尽可能的使用,系统做成的订单语音提醒,打印,单证设计等功能强大,缺点是:需要每台电脑都安装,虽然可自动升级,但感觉还是不很方便,还有一个问题是号称的AIR跨平台,其实是不完全跨平台的,目前我使用的ubuntu 64位系统就无法安装AIR运行时环境;所以,新版的网站前后台技术使用开发演变为"前台:Jquery,后台:Extjs",经过实际投产运营体验,认为Extjs比Flex相对要有优势,虽然Extjs也有1M左右的基础包,但相对Flex要小,现在各大浏览器都在为JS的运行速度拼得死去活来,用js框架来开发系统在速度上会越来越好,而且开发出的系统能做到真正意义上的跨平台、跨浏览器。
选这几个框架进行絮叨,主要是这几个框架使用面广,我做过的教育业、银行业,以及了解的烟草行业都使用这些框架的一种或几种在开发应用系统,以这三个框架做不同的技术阵营代表来进行一下最后的终结(纯属个人观点):
1、Flash VS Javascript(这个角度对比Extjs和Jqury站一个阵营,代表所有js所有框架的姊姊妹妹们,Flex、Flash单独一个阵营):
Flash Player目前普及率非常的高,但所有用Flash或Flex开发的系统其需要安装插件是其不足,运行Flex开发的应用程序时下载的运行库太大,也是一个包袱,Flex适合做互动游戏(爱玩游戏的人似乎能接受等待下载游戏应用的时间)、内网应用系统。同时,补充一点运行Flash应用程序能耗更高,我实践证明,换一个不好的CPU风扇,看普通的网页尚可,跑Extjs应用程序也没问题,但开Flash类的程序会自动关机,看来苹果公司说Flash能耗高是正确的。
Extjs、Jquery等js框架,更符合未来的技术走向,包括现在流行的手机应用程序,使用js开发应用的更有优势,无论是多平台兼容性,还是部署方面都更胜一筹,不需要安装类似于Flash player的插件,降低了应用部署的难度。同时,各浏览器都在拼js的运行速度,这对于js应用类系统是个好事情,相对于由adobe公司一家优化flash更有实力。
2、重框架 vs 轻框架(Flex和Extjs成为一个阵营,代表重框架,jquery代表轻框架阵营)
上边已经提到,Flex和Extjs更适合内网和应用系统之类的开发,这些框架具有很多现成的控件,开发一些版面规整,结构化固定的应用程序更好,jquery虽然也有众多的插件,但界面样式、实现方法都不统一,*带来的麻烦就是太过随意。但在开发网站时,由于网站的界面多种多样,需要的就是*度,Jquery就有了更多的发挥控件,加上jquery天然体积小巧的优良基因,对网站的下载运行速度不会带来什么影响。
对这些框架的对比不是要分出谁优谁劣,谁胜谁负,比较的目的只是要了解各自应该使用在什么样的场合,扬长避短,让技术能更有效的为生活服务,好钢用在刀刃上。
从我做过已经接触到的项目中,如果是做局域网内、应用系统类、办公类等系统,Extjs或Flex是个不错的选择,如我了解的现在国内一些银行内部已经在使用这两个框架来开发内部应用系统,烟草行业订烟系统目前也使用Flex开发(这个技术选择我个人认为是不太好的,虽然很炫,但照目前国内的网速,客户体验度不高,要下载很多的资源)。
如果是做公网上的网站,Extjs和Flex还是尽量避开使用,优先推荐JQuery,无论什么系统,系统的速度是客户体验的第一道门槛,如果选择Extjs或Flex,网站的打开速度会是一个考验,不小的运行库下载耗费的时间会让访客桃之夭夭的,这几年我一直亲手开发的家家买礼品网可谓这三种框架都试过,老版网站前台一律使用Jquery,后台使用Flex,但不稳定的网速会经常造成后天长时间的打不开,之后采用了AIR安装包方式,直接做成桌面版,但也是喜忧参半。
好处是:AIR的特性能尽可能的使用,系统做成的订单语音提醒,打印,单证设计等功能强大,缺点是:需要每台电脑都安装,虽然可自动升级,但感觉还是不很方便,还有一个问题是号称的AIR跨平台,其实是不完全跨平台的,目前我使用的ubuntu 64位系统就无法安装AIR运行时环境;所以,新版的网站前后台技术使用开发演变为"前台:Jquery,后台:Extjs",经过实际投产运营体验,认为Extjs比Flex相对要有优势,虽然Extjs也有1M左右的基础包,但相对Flex要小,现在各大浏览器都在为JS的运行速度拼得死去活来,用js框架来开发系统在速度上会越来越好,而且开发出的系统能做到真正意义上的跨平台、跨浏览器。
选这几个框架进行絮叨,主要是这几个框架使用面广,我做过的教育业、银行业,以及了解的烟草行业都使用这些框架的一种或几种在开发应用系统,以这三个框架做不同的技术阵营代表来进行一下最后的终结(纯属个人观点):
1、Flash VS Javascript(这个角度对比Extjs和Jqury站一个阵营,代表所有js所有框架的姊姊妹妹们,Flex、Flash单独一个阵营):
Flash Player目前普及率非常的高,但所有用Flash或Flex开发的系统其需要安装插件是其不足,运行Flex开发的应用程序时下载的运行库太大,也是一个包袱,Flex适合做互动游戏(爱玩游戏的人似乎能接受等待下载游戏应用的时间)、内网应用系统。同时,补充一点运行Flash应用程序能耗更高,我实践证明,换一个不好的CPU风扇,看普通的网页尚可,跑Extjs应用程序也没问题,但开Flash类的程序会自动关机,看来苹果公司说Flash能耗高是正确的。
Extjs、Jquery等js框架,更符合未来的技术走向,包括现在流行的手机应用程序,使用js开发应用的更有优势,无论是多平台兼容性,还是部署方面都更胜一筹,不需要安装类似于Flash player的插件,降低了应用部署的难度。同时,各浏览器都在拼js的运行速度,这对于js应用类系统是个好事情,相对于由adobe公司一家优化flash更有实力。
2、重框架 vs 轻框架(Flex和Extjs成为一个阵营,代表重框架,jquery代表轻框架阵营)
上边已经提到,Flex和Extjs更适合内网和应用系统之类的开发,这些框架具有很多现成的控件,开发一些版面规整,结构化固定的应用程序更好,jquery虽然也有众多的插件,但界面样式、实现方法都不统一,*带来的麻烦就是太过随意。但在开发网站时,由于网站的界面多种多样,需要的就是*度,Jquery就有了更多的发挥控件,加上jquery天然体积小巧的优良基因,对网站的下载运行速度不会带来什么影响。
对这些框架的对比不是要分出谁优谁劣,谁胜谁负,比较的目的只是要了解各自应该使用在什么样的场合,扬长避短,让技术能更有效的为生活服务,好钢用在刀刃上。