クラスを緩く結合しておくことは、理解、変更、およびデバッグが容易なコードを作成する上で重要な側面です。しかし、初心者として、私が苦労している最も単純な例を超えたときはいつでも。
私は、多かれ少なかれ、文字列、整数、および単純なデータ型を独自のクラスにカプセル化する方法を理解しています。ただし、リッチテキスト形式などの情報を扱い始めると、コンポーネントにすでに存在するさまざまなメソッドを使用しない限り、状況は非常に複雑になります。この例を続けるために、UIにRTFメモコンポーネントを含むものを書いていると仮定します。Delphiでは、コンポーネントには、フォーマットされたテキストの保存などを行うための組み込みメソッドがあります。さらに、RTFテキスト自体を操作する唯一の(または少なくとも最良の)方法は、コンポーネントに再度組み込まれているメソッドを使用することであるように思われる場合があります。
これらすべてを実行するコンポーネントがすでにある場合、別のクラスでテキストの保存、読み込み、フォーマットのすべての作業をどのように(またはなぜ)実行しますか?
私自身は通常、(a)必要以上に複雑に見えることを行うか、すでに存在するメソッドを再発明するか、(b)互いに緊密に結合された不十分なクラスを作成することになります。彼らがインフォマーシャルで言うように、「もっと良い方法がなければならない!」
私はその「より良い方法」がどのように機能するかについて概念的に迷っています。何かご意見は?