1

私は時々この問題に直面し、最終決定を下すことができませんでした.

たとえば、 User クラスがあります。このオブジェクトをデータベースに作成する「推奨される」方法はありますか? 例えば;

User user = new User();
user.name = "John";
user.lastname = "Doe";
user.CreateNewUser();

User user = new User();
user.name = "John";
user.lastname = "Doe";
User.CreateNewUser(user);

どちらが好ましい方法で、その理由は何ですか? それとも、プロジェクトが従うデザインパターンに依存しますか?

4

1 に答える 1

1

経験則: 非静的メソッドは、オブジェクトの状態に基づいて (または変更して) 機能する必要があります。そうでない場合は、静的にする必要があります。

あなたの2つの例から、私はどちらが好きですか? 答えはどちらでもありません。

ユーザー エンティティを作成して保存することは、ユーザー エンティティの操作ではなく、永続性の一部です。だから私がおそらく持っているのは次のようなものです

User user = new User();
user.name = "John";
user.lastname = "Doe";
PersistenceManager.CreateNewUser(user);

PersistenceManager の静的メソッドに注意してください。これは、PersistenceManager をまったく変更しないためです。

于 2013-07-05T23:20:53.957 に答える