本当のclosure compilerをお見せしますよ。

Post on 28-May-2015

9.961 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

天下一altJS武闘会での発表 http://connpass.com/event/6402/ Google Closure Compilerの最新事情について

TRANSCRIPT

もう一度来てください、 本当のClosure Compilerを お見せしますよ。

@teppeis 天下一altJS武闘会 2014/06/08

ClojureScriptとは違うよ!

Closure Compiler

It compiles from JavaScript to better JavaScript.

突然のdis

Closure Compilerが 最強である理由

エンドユーザー数が圧倒的

お前たちのaltJS、 ユーザーに価値届けてんの?• Google検索: 数十億回/日

• Gmail: 4億2500万ユーザー

• Google+: 3億人アクティブユーザー

さておき

みんなが知ってるClosure Compiler

• 圧縮&最適化

• JSDocベースの静的型付け

• 既に枯れたツール

JSDocベースの静的型付け

JSDocベースの静的型付け• たしかにだせーw

• でも、既存のJSと親和性がバツグン

• コンパイルなしでもそのまま実行できるClosure Compilerのコンパイルの遅さはJS界のScala…

• どうせJSDoc書くし。まさか、ドキュメント書かない気ですか?

本当のClosure Compiler

• 圧縮&最適化

• JSDocベースの静的型チェック

• GitHub化 & 超アクティブに進化中

• ES6 & CommonJS 対応

• Closure Toolsの主軸

5月にGitHub化

超活発にコミット

何やってんの?• ECMAScript6対応

• 新しい型推論器の実装

• CommonJS対応

• Rhino Parser削除

ECMAScript 6

JavaScriptベースなので、

JavaScriptと一緒に進化する。

Compile ES6 to ES3

java -jar compiler.jar \ --language_in ECMASCRIPT6 \ --language_out ECMASCRIPT3

もうtrunkでは動くよ。

Arrow Function

Classes

Enhanced object literals

Default, rest, spread params

Other ES6 features

• Module & Loader

• String templates

• Computed property

• Binary & octal literal

• RegExp new flags

Closure Tools

Closure Compilerのポテンシャルを 最大限に引き出すべく、 Googleが総力を結集して作り上げた フロントエンドツール群

Closure Tools

• Closure Compiler

• Closure Library

• Closure Templates

• Closure Stylesheets

• Closure Linter

全部集めると

さらなる超絶圧縮&連結• HTML, JS, CSSファイル内のCSSクラス名を圧縮

• HTML, JS内の国際化文字列リソースを埋め込み&連結

• LibraryのメソッドにCompilerが組み込みで対応

Closure Library

• 現存する唯一の

静的型付けフルスタックJSライブラリ

• DOM操作からハッシュ関数まで

もったいない• 静的型付け言語を活かすには型指向ライブラリが不可欠

• Closure Compiler専用だけではもったいない

closure-ts

• Closure LibraryのJSDocから

TypeScriptの型定義ファイルを自動生成

• github.com/teppeis/closure-ts

• 型情報をASTで定義して、

いろんなaltJSから使えるようになる(予定)

typescript-spec-md

• MS文化に耐えきれずdocx/pdfをMarkdown化

• github.com/teppeis/typescript-spec-md

• もはやClosure Tools関係ないw

• 翻訳募集中!

• Swiftと違ってライセンスは安全だよ!

Thanks!

top related