JavaScriptフレームワークAngularJSの最新メジャーリリースとなる「Angular 4.0.0」が、GoogleをはじめとするAngularJS開発チームによって、3月23日(現地時間)に公開された。同バージョンは、バージョン2.x.xとの後方互換性を備えている。
「Angular 4.0.0」では、AOTコンパイラの改良によって生成されるコードのサイズを60%程度削減するとともに、アニメーション関連機能をコアパッケージから分離したため、アニメーション機能を利用しない場合はさらなるサイズ削減が期待できる。
新機能としては、*ngIfおよび*ngForが改良され、if/else形式の記述とローカル変数の使用が可能になった。さらに、これまではコミュニティベースのプロジェクトだった、サーバサイドでの実行環境であるUniversalとの統合や、TypeScript 2.1/2.2との互換、テンプレートにおける問題を見つけやすくするソースマップ機能などが新たに搭載されている。
パッケージ面では、フラット化されたECMAScriptモジュール(Flat ESM/FESM)が採用され、生成コードのサイズ削減やビルドなどの高速化を実現したほか、試験的な実装としてES2015形式のFlat ESMと、クロージャへの対応が追加された。
既知の問題点としては、TypeScriptのstrictNullChecks設定との互換性が挙げられる。この問題は、RC版の段階で発見されていたが、解決にはまだ時間を要すると思われる。
  【関連リンク】
  ・AngularJS(英語)
この記事は参考になりましたか?
- この記事の著者
- 
                    CodeZine編集部(コードジンヘンシュウブ) CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。 ※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です 

 
              
               
                          
                           
                          
                           
                          
                           
                          
                           
                          
                           
                          
                           
                          
                           
                          
                           
                          
                           
                          
                           
                          
                           
                          
                           
                              
                               
                              
                               
                              
                               
                              
                               
                              
                               
                      
                     
                      
                     
                      
                     
                      
                     
                      
                     
                      
                     
                      
                     
															
														 
															
														.png) 
     
     
     
     
     
													 
													 
													 
													 
													 
										
									
 
                    