Google社内の標準言語としてTypeScriptが承認される。ng-conf 2017

2017年4月10日

Googleが中心となって開発しているオープンソースのJavaScriptライブラリ「Angular」のイベント「ng-conf 2017」が、4月5日から3日間、米国ユタ州ソルトレイクシティで開催されました。

3日目の基調講演に登壇したGoogleのエンジニアディレクター Brad Green氏は、TypeScriptがGoogle社内の標準言語に採用されたことを明らかにしました。

この記事では公開されている動画から、基調講演のその部分を中心にダイジェストでまとめました。

2年掛かりでTypeScriptがGoogle社内の標準言語に

Brad Green氏。Googleには社内の標準言語(Canonical Languages)としてC/C++、Java、JavaScript、Python、Goが設定されている。

fig

なぜかというと、もし社内のプログラミング言語が15種類もあったら、プロジェクトを変わるごとに大変な思いをすることになるからだ。この5種類に絞ることで、大規模に関連ツールなどを開発、展開し、生産性を高められる。

Angularの開発を始めたとき、JavaScriptを拡張し、クラスなどを追加した独自言語「AtScript」を使っていた。その後、マイクロソフトの協力を得てTypeScriptを採用することになった。

fig

しかしこれはGoogleの社内でTypeScriptを使うことを意味しない。

AngularはGoogle社外のオープンソースプロジェクトであり、Googleはそれに参加しているということになるので、TypeScriptを使ってもオーケーだ、ということなのだ。

しかしTypeScriptは、Google社内のClosure Compilerを用いたJavaScriptよりもずっと効率が良い。IDEの支援もある。

そして幸いなことに、Googleには標準言語を社内に追加するための承認プロセスがある。追加したい言語を申し込むと、何ページもあるチェックリストにかけられ、その後に会議で承認される。ただし問題は、過去にこれで承認された言語はひとつもなかったことだ(笑)。

しかも会議とチェックリストのあいだを何度も往復した結果、このプロセスには2年くらいかかった。

fig

そして晴れて、初めてTypeScriptがGoogle社内のフロントエンドにおける標準言語に承認されたことをここに報告する。(会場から拍手)

fig

GoogleにおけるTypeScriptの利点は、読みやすく書きやすいInline types、高速なコンパイル、Decorators、Closure互換、IDEのサポート。われわれは社内でクラウドベースの独自IDEを使っているが、それ以外にも幅広くサポートされている。

静的解析可能で自動ビルドが可能、Closureからの自動変換、そして活発なコミュニティがある。

fig

ただしまだCLIは標準言語になっていない。なぜか。

ビルドツールや最適化ツールは数多くある。しかしわれわれも独自のツールを利用している「Blaze」と「Closure」だ。

fig

社内ツール「Blaze」のオープンソース版は「Bazel」だ。Bazelは非常に高速でスケーラブル、Googleには大規模なプロジェクトがあちこちにある。ほかにも多くのメリットがある。

そしていま、Angularチームは「Angular With Bazel and Closure」に取り組んでいる。Closureはオプティマイザーとして利用する。

fig

これをAngular Coreからはじめて、Angular Materialプロジェクトや、アーリーアダプターに広げていくつもりだ。

ng-conf 2017

このエントリーをはてなブックマークに追加
follow us in feedly

タグ : Angular , Google , HTML5 , JavaScript



≫次の記事
Pivotal Cloud Foundry 1.10がリリース。.NETアプリケーションをフルサポートし、LinuxとWindowsを統一してカバーできるPaaSに
≪前の記事
Angular 4の長期サポート発表、2018年10月まで1年半。次バージョン「Angular 5」はシンプル化とスピードに注力。ng-conf 2017

カテゴリ



Blogger in Chief

photo of jniino Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed



新着記事 10本


PR - Books


fig

fig

fig