angular-development について
Angular、SASS、TypeScript の開発者向けコーディングスキルです。再利用可能なコンポーネント、リアクティブな状態管理、性能、セキュリティ、テストの指針を示します。
主な機能
- 01厳密な型付けとインターフェース設計
- 02コンポーネント合成とスタンドアロンコンポーネント
- 03signals による状態管理
- 04テンプレートとパフォーマンスの最適化
- 05セキュリティ対策とユニットテスト
活用シーン
- 01保守しやすい Angular コンポーネントの設計
- 02アプリケーションの型付きデータモデルの定義
- 03リスト描画と画像読み込みの最適化
- 04コンポーネントとサービスのユニットテスト作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ mindrally/ skills --skill angular-developmentインストール後、Claude Code で/angular-developmentを入力して読み込まれたか確認します。
詳細
Angular 開発
スケーラブルで高性能な Web アプリケーションの作成を専門とする、Angular、SASS、TypeScript のエキスパートです。
開発の基本原則
インターフェースによる型安全性
- 明示的な型を定義するために、インターフェースを使ってデータモデルを定義します
anyを避け、厳密な型付けを維持します- TypeScript の型システムを使って、具体的な型を定義します
コンポーネントの構成
- 継承よりもコンポーネントの構成を優先します
- モジュール性を高め、再利用や保守を容易にします
意味のある命名
isUserLoggedIn、userPermissionsのような説明的な変数名を使います- 命名によって意図を明確に伝えます
ファイル命名
- ファイル名には kebab-case を徹底します(例:
user-profile.component.ts) - Angular のファイル接尾辞の規約に従います
Angular のベストプラクティス
スタンドアロンコンポーネント
- 適切な場合はスタンドアロンコンポーネントを使います
- Angular モジュールに依存せず、コードの再利用性を高めます
状態管理にシグナルを使用
- 効率的なリアクティブプログラミングのために、Angular のシグナルシステムを活用します
- 状態の処理とレンダリングのパフォーマンスの両方を向上させます
サービスのインジェクション
inject関数を使って、サービスを直接インジェクトします- ボイラープレートコードを削減します
テンプレートのベストプラクティス
- テンプレート内の Observable には
asyncパイプを使います - フィーチャーモジュールで遅延読み込みを有効にします
- 効率的な画像読み込みには
NgOptimizedImageを使います - 必須ではないコンポーネントには遅延可能なビューを実装します
ファイル構成
- コンポーネントファイル:
*.component.ts - サービスファイル:
*.service.ts - モジュールファイル:
*.module.ts - ディレクティブファイル:
*.directive.ts - パイプファイル:
*.pipe.ts - テストファイル:
*.spec.ts
コーディング規約
- 文字列リテラルにはシングルクォートを使います
- インデントには 2 つのスペースを使います
- 定数や不変の変数には
constを優先します - 文字列の補間にはテンプレートリテラルを使います
パフォーマンスの最適化
- リストのレンダリングを最適化するため、
ngForでは trackBy 関数を使います - 計算負荷の高い処理には純粋パイプを適用します
- DOM を直接操作することは避けます
- 不要な再レンダリングを減らすために、Angular のシグナルシステムを活用します
セキュリティのベストプラクティス
- Angular に組み込まれたサニタイズ機能を利用して、XSS を防ぎます
innerHTMLは避けます- Angular の信頼できるサニタイズメソッドを使って、動的コンテンツをサニタイズします
テスト
- 単体テストでは Arrange-Act-Assert パターンに従います
- サービス、コンポーネント、ユーティリティの高いテストカバレッジを確保します
コメント
Markdown 対応