再使用可能なコンポーネントを作成する際の最良事例
再使用可能なコンポーネントを作成する際には、以下の最良事例を使用します。
コンポーネントのパッケージ化
個々のコンポーネントは拡張機能としてパッケージ化されています。ビジネス上の決定に基づいて、コンポーネントの組み合わせはさらに拡張機能としてバンドルされます。
コンポーネントの依存
リリースごとにコンポーネントをバンドルにパッケージ化します。コンポーネントの依存はバンドル (拡張機能) の依存によって管理されます。拡張機能の依存の詳細については、
依存のセクションを参照してください。
ライセンス
ビジネスロジックに基づいて、コンポーネントは拡張機能としてパッケージ化されます。これらの拡張機能はライセンス供与されます。
編集不可能なコンポーネントの作成
編集不可能なコンポーネントを作成することをお勧めします。編集不可能なコンポーネントはアップグレードが簡単です。ただし、コンポーネントの設定は可能にします。ユーザーがその要件に合わせてコンポーネントをカスタマイズできるようにパラメータを公開します。再使用可能なコンポーネントのパラメータをユーザーに表示するかどうかを定義します。パラメータのデフォルト値を設定できます。ユーザーは内部コードを変更することでコンポーネントをカスタマイズ可能でなければなりません。
|
コンポーネントのアップグレードでエラーが発生しないようにするため、コンポーネントの API 関数を除去したり修正したりしてはなりません。
|
Thing Shape を使用したコンポーネントの作成
コンポーネントを作成する際には Thing Shape を使用することをお勧めします。
• できるかぎり、プロパティおよびサービスは Thing Shape に実装し、Thing Template および Thing には実装しないようにします。
• Thing Template は Thing Shape をグループ化するために使用します。これは継承をサポートします。
• Thing Shape および Thing Template 上のサービスはオーバーライド可能でなければなりません。
• 既成の Thing Shape および Thing Template は編集不可能でなければなりません。
コンポーネントの拡張およびカスタマイズ
コンポーネントを拡張またはカスタマイズする際には、以下の最良事例を使用します。
1. 既成の Thing Template を継承する新規 Thing Template を作成します。
2. 新規 Thing Template 内でサービスおよびプロパティをオーバーライドします。
3. 新規 Thing を作成します。
4. 新規 Thing に新規サービスおよびプロパティを導入します。