Your SlideShare is downloading. ×
  • Like
Google Closure Compiler
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Google Closure Compiler

  • 2,974 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,974
On SlideShare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
0
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. GoogleClosure Compiler 2012/05/06 h13i32maru@Twitter maruyama-r@KLab
  • 2. 自己紹介• 丸山 亮(h13i32maru) 最近はJSを触ってます• KLab株式会社所属32 http://blog.h13i32maru.jp http://twitter.com/h13i32maru https://www.facebook.com/ryo.maruyama https://github.com/h13i32maru
  • 3. Closure Compiler• JavaScriptの結合・最適化・圧縮ツール - java製• Closureファミリーの一部 - Closure Library - Closure Template - Closure Linter
  • 4. Closure Compiler• 最適化レベル• エラー・警告• アノテーションチェック• 依存関係• extern宣言
  • 5. 最適化レベル• WHITE_SPACE_ONLY → (・ω・) - 改行、スペース、コメント等の削除のみ• SIMPLE_OPTIMIZATIONS → (`・ω・´) - ローカル変数名、関数の引数名の変更• ADVANCED_OPTIMIZATIONS → ((((;゚Д゚)))) gkbr - プロパティ名、関数名などもアグレッシブに変更 - 例えばFoo.Bar を Foo$Barとかに変更
  • 6. エラー・警告• エラー • 警告 - syntax - 名前衝突 - ケツカンマ - varによる再宣言 - 配列インデックス - 無名関数宣言 - etc... - etc...
  • 7. アノテーションチェック• JSDocアノテーションを元にしたチェック - @construcotr : new演算子チェック - @const : 定数最代入チェック - @interface/@implements : メソッド実装チェック
  • 8. 依存関係• 複数のJSファイルを結合する場合に依存関係を チェック• 使用されていないファイルは結合されない• 大規模ライブラリの一部をコンパイルする場合に 便利 //file1.js goog.provide("hoge.foo"); //file2.js goog.require("hoge.foo");
  • 9. extern宣言• 「外部JS」「ブラウザ固有オブジェクト」を使用 している場合に、名前変更されないようにする仕 組み• 例えばconsole.*を使用している場合など
  • 10. 参考• http://www37.atwiki.jp/aias-closurecompiler/pages/ 21.html
  • 11. おわり