2025.05.25 覚書 / 2025.05.25 memo's
自分が参考になったブログの紹介します。 / Here are some blogs that I found helpful.
Angular
- Angular の
@angular/formsに Signal ベースの新APIが導入(実験的機能)。 formSignal,formGroup,formControlなど、リアクティブフォームのSignal化。- Signal により高速な変更検知と型安全性を実現。
- Angular 20 でテンプレート内で
**(指数演算)が使用可能に。 - テンプレート内で
2 ** 3のように記述でき、演算順序にも配慮。
- Angular テンプレートで
greet`Hello ${name()}`のような構文が利用可能に。 - ユーザー定義タグ関数でテンプレート文字列の変換が可能。
httpResourceで同一リクエストのキャッシュ利用や再フェッチ制御に等価性判定が重要。- 引数やクエリの比較ロジックの重要性を解説。
redirectToに Promise や Observable を返す関数が指定可能に。- ログイン状態やAPI結果に応じて動的にリダイレクト制御ができる。
key in objectのような構文がテンプレートで使えるように。- オブジェクトのプロパティ存在チェックに便利。
rxResourceでのデータ取得、クエリパラメータ対応が追加。- Angular 20 におけるリソースAPIの進化を紹介。
- Angularのzonelessモードで、CDKのVirtual Scrollにちらつきが発生する不具合が報告されています。
- この問題は、transform操作が直接適用されることで発生し、GitHubでIssueとして報告されていますが、まだマージされていません。
patch-packageを使用して、transform操作をafterNextRenderフェーズに移動することで、ちらつきを防ぐ方法が紹介されています。- 修正は一時的なものであり、公式の修正がリリースされた際には、パッチを削除して公式の修正を使用することが推奨されています。
Design
- Googleが「Material 3 Expressive」という新しいUIデザイン言語を発表。
- Material Youの進化形で、よりカラフルで感情的・個性的な体験を重視。
- ミニマリズムから脱却し、人間味や没入感を追求。
- より自然で弾力的なアニメーションを導入し、日常的な操作に楽しさをプラス。
- 世界46か国・1万8000人以上の調査をもとに、若者や高齢者にも使いやすいデザインを目指している
- デザインは「センス」ではなく「技術」であり、誰でも習得できるものだと強調。
- 色彩の専門家でもデザインの基本は学ぶ機会が少ないことが多い。
- ノンデザイナー向けのデザイン本『なるほどデザイン』を紹介し、視点の持ち方や優先順位の決め方など、実用的な内容が分かりやすく解説されていると評価。
- デザインに自信がない人でも、「視点の違い」を知ることで上達できると励ましている
Develop
- 従来15分かかっていたテスト実行を、GitHub ActionsとDevinによる並列化で5分45秒まで短縮(約62%削減)に成功した。
- 具体的な削減方法や、Devinの活用過程、検証ログなど実践的な内容が含まれている。
- チームの生産性向上やAIエージェント導入のリアルな効果を知りたいエンジニア向けの記事。
- AI技術がソフトウェアの品質に与える影響についてのプレゼンテーション。
- 品質保証やテストの自動化におけるAIの活用方法を紹介。
- Appleの元デザイナーがOpenAIに参加し、AIハードウェアのデザインを主導。
- 人間中心のデザインとAI技術の融合を目指す。
RxJS
- RxJSにおけるエラーハンドリングの高度なテクニックを紹介。
retryWhenやcatchErrorなどのオペレーターの活用方法を解説。
Rust
- Rustにおけるモジュール設計のベストプラクティスを紹介。
- コードの再利用性と保守性を高めるための構造化手法を解説。
- Rustを用いた宇宙空間シミュレーションプロジェクトの紹介。
- 高性能かつ安全なコードによるシミュレーションの実現方法を解説。
TypeScript
- TypeScriptのコンパイラとツールセットをGo言語でネイティブ実装した「TypeScript Native Previews」が公開されました。
- 新しいコンパイラ「tsgo」は、従来の
tscに比べて最大10倍の速度向上が報告されています。 tsgoは、npmで@typescript/native-previewパッケージをインストールすることで利用可能です。- Visual Studio Code向けのプレビュー版拡張機能も提供されており、設定で有効化することで新しい編集体験を試すことができます。
- Microsoftが公開したGo言語実装のTypeScriptコンパイラ「tsgo」のインストール手順と性能検証が紹介されています。
tsgoは、@typescript/native-previewパッケージをインストールすることで利用可能です。- 実際のプロジェクトでのコンパイル速度を比較し、
tsgoが従来のtscに比べて最大13.5倍の速度向上を示した事例が報告されています。 tsgoはまだプレビュー版であり、一部機能が未実装のため、使用には注意が必要です。
- TypeScriptの型検査の仕組みや、
checker.tsの役割についての解説があります。 - TypeScript 7.0で導入予定の
typescript-goに関する情報も含まれています。 - AngularとIonicを活用したマルチテナントサービスの量産体制の構築事例が紹介されています。
- TypeScriptを活用したクリーンアーキテクチャの実践例や、デザインシステムの構築手法など、多岐にわたるトピックが取り上げられています。
- フラットなESLintの設定ファイルに関する発表や、フルスタックTypeScriptの導入事例が紹介されています。
- TypeScriptでのクリーンアーキテクチャの実践や、AWS LambdaでのTypeScriptの利点と課題についての発表内容が取り上げられています。
tsgoの登場により、TypeScriptのネイティブ実装が進んでいることが報告されています。
- TypeScriptの特性や、他のAltJSとの違いについての考察が述べられています。
- TypeScriptの型チェッカーの実装が難しい理由や、エコシステムの変化についての分析があります。
- TypeScriptファーストな世界観や、ツールチェインの高速化の流れについても触れられています。
- JavaScriptの標準化におけるType Annotationsの提案についても紹介されています。
- GitHub ActionsはTypeScriptで書くと型安全で開発効率が高い。
- @actions/toolkitにより簡潔かつ安全に環境変数やIO操作ができる。
- JavaScriptにトランスパイルして高速に実行可能、全OSに対応。
- TypeScriptならLintやテストも既存ツールで容易に統合できる。
- OSS事例「GitHub Actions OpenTelemetry」で実践例を紹介。
Web
- Google I/O 2025で発表されたWeb技術の最新動向を紹介。
- 新しいAPIやブラウザ機能、パフォーマンス改善、開発ツールのアップデートなどがまとめられている。
- 開発者向けの実践的なTipsや今後の展望も掲載されている。