タグ付けされた質問 「ooad」


16
凝集力とカップリングの違い
凝集と結合の違いは何ですか? 結合と凝集は、ソフトウェア設計の良し悪しにどのようにつながりますか? 2つの違いの概要と、全体的なコード品質への影響を説明する例は何ですか?
486 oop  architecture  theory  ooad 

13
アンチパターンとは何ですか?
私はパターンとアンチパターンを研究しています。私はパターンについて明確な考えを持っていますが、アンチパターンを取得していません。WebとWikipediaの定義は私を混乱させます。 誰かがアンチパターンとは何かを簡単な言葉で私に説明できますか?目的は何ですか?彼らは何をしますか?それは悪いことですか、それとも良いことですか?

10
コンストラクターvsファクトリーメソッド[終了]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 2年前休業。 この質問を改善する クラスをモデル化するとき、初期化の好ましい方法は何ですか? コンストラクタ、または ファクトリメソッド そして、それらのいずれかを使用するための考慮事項は何でしょうか? 特定の状況では、オブジェクトを構築できない場合にnullを返すファクトリメソッドを使用することを好みます。これにより、コードがきれいになります。コンストラクターから例外をスローするのとは対照的に、代替アクションを実行する前に、戻り値がnullでないかどうかを簡単に確認できます。(私は個人的に例外は好きではありません) たとえば、id値を期待するクラスにコンストラクターがあるとします。コンストラクターはこの値を使用して、データベースからクラスを生成します。指定されたIDのレコードが存在しない場合、コンストラクターはRecordNotFoundExceptionをスローします。この場合、そのようなすべてのクラスの構築をtry..catchブロックで囲む必要があります。 これとは対照的に、レコードが見つからない場合にnullを返すこれらのクラスに静的ファクトリメソッドを設定できます。 この場合、コンストラクタとファクトリメソッドのどちらのアプローチが優れていますか?
181 oop  ooad 

22
抽象化VS情報隠蔽VSカプセル化
ソフトウェア開発における抽象化と情報隠蔽の違いは何ですか? 私は混乱しています。抽象化は詳細な実装を隠し、情報を隠すことは何かの詳細全体を抽象化します。 更新:これらの3つの概念に対する良い答えを見つけました。そこから引用されたいくつかの引用については、以下の個別の回答を参照してください。

14
「結合が低く凝集力が高い」とはどういう意味ですか
声明の理解に問題がありlow in coupling and high in cohesionます。私はグーグルでこれについて多くを読みましたが、それでも理解するのは難しいと感じています。 私が理解しているのHigh cohesionは、特定の機能を実行するために特化したクラスが必要であることです。これが正しいと思いますか?クレジットカードのみの検証に特化したクレジットカード検証クラスのように。 それでも、低カップリングの意味がわかりませんか?
151 oop  ooad 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.