[解決済み] なぜインターフェースを使うのか?標準化のためだけ?[クローズド]
2023-07-21 13:32:23
質問
なぜInterfaceを使うのか?
標準化のためだけですか?
どのように解決するのですか?
インターフェイスの目的
- 疎結合のソフトウェアを作成する
- サポート 契約による設計 (実装者はインターフェイス全体を提供する必要があります)
- プラグイン可能なソフトウェアを可能にする
- 異なるオブジェクトが簡単に相互作用できるようにする
- クラスの実装の詳細を互いに隠すことができる
- ソフトウェアの再利用を容易にする
類比1 : アメリカのスペースシャトル、ロシアのソユーズ宇宙船、中国の神舟5号は、同じドッキングインターフェースを実装しているため、すべて国際宇宙ステーションにドッキングすることができます。(これは単なる例であり、現実にそうであるかどうかは分かりませんが、例のために不信感を抱いておきましょう)。
類似性 2 : 自宅のパソコンにいろいろなコンピュータのモニターを接続できるように。壁掛けテレビ、古いブラウン管(厚いやつ)、20インチのフラットスクリーン、あるいは目の不自由な人が触って見るための点字機などです。これらのさまざまなデバイスとコンピュータの間には、インターフェイスの標準に同意しているので互換性があります。
C#インターフェースの詳細 -- C#/OOPのインターフェイスでは、同じようなことを目に見えない仮想の世界で行っているのです。
については正しいです。 標準化 であり、また 柔軟性 , スケーラビリティ , 拡張性 , 保守性 , 再利用性 , テスト容易性 そして パワー .
(ソフトウェアインターフェイスを使えば使うほど、これらの"buzz words"は理解されるでしょう。そして、常に実世界のインターフェイスを考慮することです。なぜなら、インターフェイスは私たちを同様によくしてくれたからです)。
関連
-
[解決済み] インターフェースと抽象クラスの違いは何ですか?
-
[解決済み] なぜゲッターとセッター/アクセッサーを使うのですか?
-
[解決済み] なぜList<T>を継承しないのですか?
-
[解決済み] Pythonのクラスはなぜオブジェクトを継承するのですか?
-
[解決済み] インターフェースと抽象クラス(一般的なOO)
-
[解決済み] C++でクラスと構造体はいつ使い分けるべきか?
-
[解決済み] インターフェースとベースクラス
-
[解決済み】「インターフェースに合わせたプログラム」とはどういう意味ですか?
-
[解決済み] プライベートとプロテクト-ビジビリティ・グッド・プラクティスの懸念点【終了しました
-
[解決済み] オブジェクト指向プログラミングに代わるものは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 関数型プログラミングとオブジェクト指向プログラミングの比較【終了しました
-
[解決済み] コヒーシ ョンとカップリングの違い
-
[解決済み】「結合度が低く、結合度が高い」とはどういう意味ですか?
-
[解決済み】依存関係逆転の原則とは何ですか、なぜそれが重要なのですか?
-
[解決済み] メソッドチェイニング - なぜ良い習慣なのか、そうでないのか?
-
[解決済み] オブジェクト指向分析・設計によるエレベータのモデル化 [終了しました]
-
[解決済み] カプセル化と抽象化の違い
-
[解決済み] 多重継承の具体的な問題点は何ですか?
-
[解決済み] Dartでインターフェイスを定義するには?
-
[解決済み] R:スロットとは何ですか?