-4

わかりました、インターフェイスの基本的な概念は理解していますが、その使用法を「理解している」とは限りません。

私は現在、Abstract Factory デザイン パターンを使用して自宅でアプリを作成している最中です。主に練習用ですが、私の最終的な目標はアプリを販売することです (ただし、それはこのサイトの目的ではありません)。

とにかく、私が参考として使用している本は、例のインターフェイスを使用しています。

ウィキペディアは、「インターフェイスは、さまざまなタイプのクラスが共有する類似性をエンコードするために使用されますが、必ずしもクラス関係を構成するわけではありません」と説明しています。

つまり、基本的には、クラス間の類似性を確保するためにインターフェイスが使用されていることがわかります。

つまり、Guitar というインターフェイスがあれば、GuitarAbstract という抽象クラスと、BassGuitar、AcousticGuitar、ElectricGuitar というクラスを、すべての継承と実装などとともに持つことができます。

インターフェイスの必要性と使用法を知的に理解しています。追加の冗長コードのように見えます。

私はそこに何か欠けていますか?

4

2 に答える 2

3

インターフェイスを使用すると、必要なインターフェイスを実装している限り、任意のタイプのクラスで動作するコードを記述できます。これにより、コードを簡単に再利用でき、作業を減らすことができます。インターフェイスは冗長ではありません。

イテレータが良い例です。イテレータが表すデータ構造は気にせず、データを取得したいだけです。

これがインターフェースの目的です。

于 2013-07-11T16:23:56.120 に答える
1

インターフェイスは追加のコードではなく、コントラクトのようなものです。どの機能を提供する必要があるかを定義し、実装の詳細をクラスに任せます。これは、実際の OO プログラミングの中核となる IMO です。

于 2013-07-11T16:23:47.603 に答える