西村祐二(105)73どうも!大阪オフィスの西村祐二です。v8がリリースされました!今回はそのアップデート内容をまとめてみます。下記のサイトをもとにまとめていますので、詳細がきになる方はリンク先をご確認ください。https://blog.angular.io/version-8-of-angular-smaller-bundles-cli-apis-and-alignment-with-the-ecosystem-af0261112a27https://blog.ninja-squad.com/2019/05/29/what-is-new-angular-8.0/Angularのバージョンアップサイクル「もう、バージョン8!?」って思った方いるかと思いますが、Angularのバージョンアップサイクルは約6ヶ月ごとのメジャーリリースを行うサイクルとなっております。ちなみにバージョン7がリリースされましたのは2018年10月19日でした。バージョン9は2019年10,11月頃の予定となっています。サポート期間がいつまでなのか、次にどんな機能が載ってくるのかある程度予想できるので、プロダクトのバージョンアップスケジュールなど立てやすいかと思います。詳細は下記を参照ください。https://angular.io/guide/releasesバージョンを上げるにはAngularのドキュメントにバージョンを上げるためにどのようなステップを踏めばよいか教えてくれるサポートページがありますので、こちらより今のバージョンを選択して、アップデート手順を確認してください。新レンダリングエンジン「Ivy」がオプトイン機能として搭載されました!今回のバージョンの目玉機能はこれかと思います。Ivyは何かというと新しく開発された高速なレンダリングエンジンで高速化やバンドルサイズの削減などが期待されます。プレビュー版ですが、Ivyコンパイラがオプトイン機能として搭載されました!(v9で安定版としてリリースされるみたいです)使い方としては、新規プロジェクトを作成する際にオプションをつけることで、Ivyを有効にできます。--enable-ivy既存プロジェクトでも、設定ファイルに追記するだけで、Ivyに切り替えることができます。Loadingが利用可能になりました!こちらも目玉機能のひとつです!これは最新のビルドとレガシービルドを実行し、アプリケーションを読み込む際に必要なバンドルだけが自動的に読み込まれバンドルサイズが削減されるという機能になります。これにより、バンドルサイズが7-20%削減されるようです。updateでバージョンアップすると、自動的にtsconfig.jsonのtargetを更新してくれます。詳細は下記を参照ください。Importの形で設定できるようになりました。これによって、VSCodeやWebStormなどのエディタでモジュールを認識できるようになるようです。updateを使ってアップデートした場合は、新しいベストプラクティスを使用するようにコードが自動的に更新されます。Labs(実験的なプロジェクト)の一部ですのでご注意ください。Bazelを使うことによって、アプリケーションのビルドを高速化できるメリットがあります。詳細は下記を参照ください。強力なCLIが提供されています。そのCLIのデータをGoogleに提供する機能が追加されました。CLIのデータ収集はデフォルトでは無効になっており、個々のユーザーがプロジェクトレベルで有効にする必要があります。リリース直後は下記のようにインストールするときに情報提供するかきかれる、という報告があったのですが、デフォルト無効化として修正されてみたいです。@angular/cli集めたデータはAngularチームと共有され、CLIを改善するために使用されます。詳細は下記を参照ください。第二引数が必須となりました今まで、オプションとなっていたのが、必須なパラメータとなりました。@xxChildは、ngOnInitで有効になり場合と、ngAfterViewInit/ngAfterContentIntで有効になる場合があり、その制御を明示的に指定することが必要となりました。updateでバージョンアップすると自動的に追記してくれます。Workerを使用すると、画像やビデオの操作などの作業をバックグラウンドスレッドに任せることができます。Workerを追加できるようになりました。my-worker詳細は下記を参照ください。https://angular.io/guide/web-workerAngularJSからの移行がやりやすく改善されましたAngularJSアプリケーションで$locationサービスを使用している場合、LocationUpgradeModuleを利用して、できるだけ多くの責任をAngularに移行できるようになりました。詳細は下記リンクを参照ください。https://angular.io/guide/upgrade#using-the-unified-angular-location-serviceまた、AngularJSアプリケーションの一部をAngularから遅延ロードすることに関するベストプラクティスがドキュメント化されました。v2で導入されました。非推奨となった理由としては、全体ではなく、メモリ内検索や画像処理など重要度の低い作業をオフロードするというユースケースにフォーカスする方針となったためとのことです。詳細は下記リンクを参照ください。https://angular.io/guide/deprecations#webworker-apps@angular/httpが削除されました以前からアナウンスされていた、@angular/httpが削除されました。これからは、@angular/common/httpを利用しましょう。詳細は下記を参照ください。v8のアップデート内容をまとめてみました。内部的なアップデートがメインだったので、分かりづらいかもしれませんが、確実に進化している内容のアップデートだと感じました。v9ではIvy,Bazelの安定版リリースが予定されているので、今後のアップデートも楽しみです!v8に関する話は下記の勉強会でも話がありました。Angularの今後の動向など含めて、さらに知りたい場合はこちらもご参考ください。1,054,504大阪オフィス所属。サーバレスに興味があります。リモート】クラスメソッドの会社説明会を開催しますクラスメソッドでは、AWS・AI・ビッグデータ・モバイルなどの技術職や営業のメンバーとして一緒にお仕事をする仲間を大募集しています。#cmdevio新型コロナウイルスの感染拡大を受け、本イベントを延期させていただくことになりました(開催時期未定)。お申し込みいただいた皆様には大変申し訳ございませんが、何卒ご理解いただけますようよろしくお願いいたします。AWSについてライトに色んな情報交換をしましょう。カフェ店長のオカノです。今日はオフィスに用があるので、通勤ラッシュを避けて出社しました。この子は新メンバーのさめくんです。在宅勤務が推奨されているのでオフィスが閑散としており、すこしさみしそうです。使いたいときの注意点を書きました。本が出ていたので読んでみたところよかったので紹介させていただきます。