2016-04-04 10 views
0

これはかなり簡単な質問だと思うが、私はまだプログラミングが比較的新しいので答えはない。私は1年以上にわたりプログラミングを行ってきましたが、私は別の個人と一緒にプロジェクトを進めていますが、どの方法をどこに行かなければならないかについて意見の相違がありました。私は正しいことを気にしませんが、何をすべきかを決める上でベストプラクティスが何であるかを知りたいと思います。データ定義クラス(DDC)または実装クラスにメソッドを渡すかどうかを決定する方法

一般的な質問:メソッドがDDCクラスに入るべきかどうか、または実装クラスに入るべきかどうかを判断する方法がありますか? 実際にどうかしても問題ありませんか?

たとえば、私たちは2つのクラスを持っています:学生とカウンセラー。生徒にはスケジュールのリスト(最大4つ)があり、各スケジュールには複数のコースが含まれています。両方のユーザーが学生のスケジュールを作成できます。また、現在のスケジュールを表示したり、過去のスケジュールを表示することもできます。これらのメソッドのロジックを実装クラスに入れて、特定のメソッド(getSchedules)を呼び出して、必要な機能を実行するための特定の方法で操作するか、DDC自体や実装からのロジックを特殊な関数実装クラスのメソッド?

答えて

1

この場合、コードの重複を避けるために、宣言はDDCに入れなければなりません。代わりに、StudentとCounselorの両方で拡張された新しいクラスUserを作成することもできます。しかし、2つの異なるクラスに同じメソッドを2回書くべきではありません。

理由は、後でコードを変更するときに、コードを複数回変更する必要がある場合には難しくなります。大規模なプロジェクトでは、これは大きな問題になる可能性があります。

+0

私は、学生とカウンセラーの両方が拡張する抽象的なユーザークラスを持っていました。私はどこにでも2回置くことでメソッドを複製する予定はありませんでした。私はあなたの推論を理解しており、これは私がベストを尽くすことです。重複したコードを無視して、私はあなたが答えたと信じているプログラム(DDCまたは実装)内の特定のメソッドの適切な配置にもっと関心を持っていました。 – Kevin

関連する問題