JavaScript常用開發架構總結

來源:互聯網
上載者:User
文章目錄
  • 概況
  • jQuery ExtJS Dojo MS Ajax比較
  • 使用方式調查
  • 選擇因素
由於架構很多,僅以筆者實際工作中接觸的幾個常用架構進行總結。
概況

Javascript已經成為了web開發最最基本的要求之一了。 而在現實的敏捷開發中,我們通常會選擇一個JS架構來取代繁瑣的Native Javascript的編寫。你會發現這樣會節省很多的時間,寫的代碼也很清晰便捷。目前流行的JS架構很多Dojo 、Scriptaculous 、Prototype 、yui-ext 、Jquery 、Mochikit、mootools 、moo.fx 等等。我們要根據我們項目的真實需要來選擇具有相關特性的架構。

jQuery ExtJS Dojo MS Ajax比較

 

jQuery

ExtJS

Dojo

Asp.net AJAX

官方網站

http://jquery.com/

http://extjs.com/

http://dojotoolkit.org/

http://www.asp.net/ajaxlibrary/AjaxOverview.ashx

http://aspnet.codeplex.com/releases/view/34488

優點

  • 文法很簡潔,而且抽象了動作和特效這樣的概念,從而把組件自身和對它支援那些操作、特效之類的分離
  • 體積小簡單
  • 對DOM選擇強大, 幾乎所有操作都是以選擇DOM元素(有強大的Selector)開始,然後是對其的操作(Chaining等特性)
  • UI擴充好
  • 特別在VS2010預設引入了這個架構,估計發展更快

 

  • API文檔特別好
  • 強大的UI,而且效能不錯
  • 所有的組件(widgets)都可直接使用,而無需進行設定

 

  • 功能最強大,幾乎包含了所有你可能想要用到的東西
  • 以組件全面而出名,不只是UI組件很全,其他非UI組件也很全(比如map之類的)
  • Dojo.require來管理依賴非常有創意
  • 大的UI(Dijit)

 

  • 支援Asp.net的服務端控制項和用戶端JS庫
  • 資料繫結技術和Asp.net很相似
  • 後續估計和jQuery會有更好的整合

缺點

  • 可選擇太多有時也是個問題,如表格就有很多的外掛程式
  體積比較大,為重量級的架構

  • EXT授權協議涉及付費
  •   學習曲線太陡

  • 文檔的不是很全
  • API不穩定,各版本間改動較大
  • Widget的速度慢
  •  版本變動較大
    使用方式調查

    http://ajaxian.com/by/topic/survey 這個網站可以看到各種架構的使用方式

    這個網站包括了IDE,庫和瀏覽器使用等方面的調查,也可以作為我們選擇的一個參考

    選擇因素

    實際使用選擇哪個架構的考慮因素如下:

    你的項目需求(即你需要哪些特性,例如是否要求做出精美的介面、特效或其它功能)

    是否支援A等級的瀏覽器(IE, Firefox等)?

    文檔的品質:是否完善(包含教程,API,程式碼範例等)

    架構的可擴充性如何?為架構寫外掛程式容易嗎?

    你是否喜歡它的API的風格?

    能大多程度上統一你的JavaScript代碼的風格?

    架構大小(太大的架構導致使用者下載時間的延長)

    架構是否強迫你改變寫HTML的方式(Dojo就是這樣)?

    代碼執行速度:效能如何?

    代碼是否為模組化(Mootools為高度模組化)?代碼可重用性如何?

    開發工具支援

    使用JAVA的可以使用http://www.aptana.com/download_all.php 下的工具,基於Eclipse實現的。提供單獨的安裝檔案,也提供Eclipse的plugins。 

     

    Visual Studio:

    對JavaScript的支援一直比較弱,不過通過各種擴充可以使用增強功能,如下是一些常用的擴充:

    Javascript parserJavaScript的大綱顯示

    http://visualstudiogallery.msdn.microsoft.com/en-us/288a2b0f-1357-47b4-8215-1134c36bdf30

    JSEnhancementsJavaScript程式碼摺疊功能

    http://visualstudiogallery.msdn.microsoft.com/en-us/0696ad60-1c68-4b2a-9646-4b5f4f8f2e06

    其他的各種擴充:

    http://visualstudiogallery.msdn.microsoft.com/en-us

     

    相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.