カスタムコンポーネントは要するにUIComponentを継承して作成すればいいわけですが、 うっかりすると再利用性の低いコンポーネントを作ってしまいます。 いちばんやってしまうのが「コンストラクタの引数にデータモデルを指定」。 これはなるべく避けてください。 ActionScriptから動的に生成する場合には便利ですが、mxmlでRepeaterを使ったり、ItemRendererに 直したいと思った瞬間に、自らの愚かさに頭を抱えるハメになります。 いちばんいいのは、dataプロパティのみにモデルを集中して格納すること。 こうしておくと、ItemRendererとしても使えるので、再利用性が劇的に高くなります。 違う形式のプロパティを追加する場合には、setterで「入れ替える前のプロパティインスタンス」から イベントリスナーをはずしておくようにしましょう。 weakReferenceより