Angular 4の長期サポート発表、2018年10月まで1年半。次バージョン「Angular 5」はシンプル化とスピードに注力。ng-conf 2017
Googleが中心となって開発しているオープンソースのJavaScriptライブラリ「Angular」のイベント「ng-conf 2017」が、4月5日から3日間、米国ユタ州ソルトレイクシティで開催されました。
1日目に行われた基調講演では、Angularの現状や半年後に登場予定の次のバージョンである「Angular 5」などについて、GoogleのAngularチームリードIgor Minar氏から説明がありました。
この記事では公開された基調講演の動画からその部分をダイジェストで紹介します。
セマンティックバージョニングとタイムベースリリースを開始
Igor Minar氏。

Angular 4の次はどうなるかについて話そう。
(会場から「5?(ファイブ?)」という声)
いま5という声が聞こえたけど、われわれは過去にバージョン番号をスキップしたことがあるんだよ? だから分らないよね?(会場笑)
Angularをとりまく環境、エコシステムやWebブラウザは進化し続けており、こうした変化にコミュニティと共に追随していく。
進化し続けていく上で、インクリメンタルで予測可能なペースが求められている。そのためにAngularは「セマンティックバージョニング」を採用した。

バグフィックスなどはパッチとしてリリースされ、マイナーリリースはオートアップデートの対象となる。
メジャーバージョンは、非互換的な変更が行われると考えられがちだが、われわれにとっては多くの時間を掛け、慎重に確認し、多くのフィードバックを得たものという位置づけだ。
メジャーバージョンアップとは、機能が追加され、よりよい方向に進化するものといえる。
セマンティックバージョニングは、そのリリースがどのようなものかを示すものであり、もう1つAngularの進化では、「タイムベースリリース」も採用した。これによって、いつ次のリリースが登場するか予定が示されるようになる。

パッチは毎週リリースする予定で、マイナーバージョンは毎月、そして6カ月ごとにメジャーリリースを行う。
つまり10月にはAngular 5が登場すると言うことになる。

Angularの長期サポートを発表。Angular 4は2018年10月まで
GoogleでAngularがどう使われているかを説明したい。
すべてのGoogleのアプリでは、リリース前の最新のAngularが使われている。

オープンソースのプロジェクトとしてGitHubのコードをビルドする際、すべてのプルリクエストに対してGoogleで大規模なテストスイートが実行され、OKであればすぐさまマージしてGoogleへ送られる。
これはAngularの安定に寄与する。
GoogleはAngularのスペシャルバージョンを利用しているわけではなく、マスターブランチの最新版を利用しているのだ。これによってGoogleは最新機能を使えるというメリットを得られる。
しかしそういう最新バージョンをすぐに採用するような柔軟性が持てない企業があることも理解している。
そうした方々にはAngular 4のLong Term Support(LTS)を提供することを発表する。
v4はAngularが提供する最初のLTSとなる。これは2017年10月(注:Angular 5が登場するまで)は、通常の手順でパッチなどが提供され、それ以後にLTSの期間に入り、クリティカルなバグやセキュリティに対するパッチが提供される。

Angular 5はシンプル、スピード
次バージョンとなるAngular 5のテーマの1つはシンプリシティ。
その1つは、Angularアプリケーションのコンパイルをよりシンプルにする。JITコンパイラだけでなくAHTコンパイラ(A head of time:事前コンパイラ)を採用したが、この2つがあると混乱することもある。今後はAHTコンパイラをデフォルトにすることでビルドの手順を一本化し、余計な作業を減らしていくつもりだ。
もう1つはスピードとサイズへの注力。MaterialやIonicを利用したときなどでも最適に扱えるようにする。
最後の1つは、スムーズなアップデートだ。バージョン4のときにもこれを約束したが、将来のバージョンに渡ってもすすめていく。

参考:Angularはなぜ大規模アプリケーション開発に適しているのか。そしてAngular対応の業務用UIコンポーネント「Wijmo」のメリットとは[PR]
参考:AngularやReact、Vue.js対応の業務アプリ用UI「InputManJS」リリース。わずか600KBで昭和や平成、未発表の新元号対応。IME制御、ふりがな取得なども
ng-conf 2017
- Angular 4の長期サポート発表、2018年10月まで1年半。次バージョン「Angular 5」はシンプル化とスピードに注力。ng-conf 2017
- Google社内の標準言語としてTypeScriptが承認される。ng-conf 2017
関連記事
あわせて読みたい
Google社内の標準言語としてTypeScriptが承認される。ng-conf 2017
≪前の記事
JenkinsのUXをシンプルかつビジュアルにする「Blue Ocean」バージョン1.0がリリース。パイプラインの設定や実行状況などをGUIで実現