一套開發富客戶端的javascript工具:Google Closure Tools

jopen 10年前發布 | 37K 次閱讀 JavaScript開發 Google Closure Tools

Google Closure Tools是Google內部使用的JavaScript開發工具,主要包括Closure Compile、Closure Inspector、Closure Linter、Closure Stylesheets、Closure Library和Closure Templates,這些工具都可以獨立使用。

Closure Compile

Closure Compile是一個獨立的JavaScript編譯器,主要用于對JavaScript進行壓縮,但它與其他壓縮器如JSMin、YUI Compressor不同的是,它不僅僅是去除注釋和空白,還可以在保證代碼正確性的情況下進一步地改寫成更省空間的做法,例如:

    a = new Object => a = {}  
    a = new Array => a = []  
    if (a) b() => a && b()  
    return 2 * 3; => return 6;  
</div> </div> 經過測試,非Closure Library編寫的JavaScript代碼經過Closure Compile編譯后可用。
</div>


Closure Inspector

Closure Inspector是應用于火狐瀏覽器的插件,可以與Firebug協同工作,對壓縮后的代碼進行調試,提供了源碼匹配、改進的棧跟蹤、單元測試集成功能。


Closure Templates

Closure Templates工具提供了一個在JavaScript中做模板的機制及函數庫,可以把HTML布局的部分寫成一個模版,接著再利用Closure提供的工具把這個模板編譯成JavaScript代碼,這樣可以省去很多處理頁面的工作。Closure Templates既可以生成JavaScript,又可以實現Java,所以可以在服務器和客戶端使用相同的模板。


Closure Linter

Closure Linter是針對Google推出的JavaScript編碼規范Google JavaScript Style對JavaScript編碼風格進行校驗的工具,能很大程度上提升代碼的可讀性。


Closure Stylesheets

Closure Stylesheets是一個Java程序,它向CSS中添加了變量、函數、條件語句以及混合類型,使得我們更易于處理大型的CSS文件。開發者可以用它來生成web應用程序或者網站所使用的真正的CSS文件。詳見Google Closure Stylesheets讓我們更易于使用CSS


Closure Library

Closure Library是一個面向對象,模塊化,跨瀏覽器的JavaScript庫,同時提供了大量的UI組件以及一些底層的應用如DOM操作、服務器交互、動畫、數據結構、單元測試、富文本編輯等。

優點:

  1. 功能強大,組件豐富,文檔齊全,適用于對性能要求高的Web應用
  2. 面向對象,在模塊化、程序結構組織、邏輯封裝等方面有優勢
  3. 使用Closure Compile能大程度的進行壓縮和優化
    缺點
  4. 與Dojo復雜程度相當,框架龐大,學習曲線陡
  5. 代碼中存在一些漏洞,詳見Google Closure: 糟糕的JavaScript
  6. 相比jQuery,維護的人員要少</div>

    Closure Lite

    Closure Lite是利用Closure Compile對Closure Library的核心進行編譯后生成的一個單獨js文件,只有33k,引用起來很方便。但是它并沒有解決Closure Library中所提到的缺點。

    參考資料

  7. Google Closure and jQuery, Side by Side
  8. Getting Closure: Don’t just use it, don’t just abuse it
  9. closure-library 第一章 Closure介紹

    項目主頁:http://www.baiduhome.net/lib/view/home/1388577172828

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!