インターフェイスを使用する場合は、各オブジェクトのハード実装を正確に取得する必要があります。これは、各タイプのファクトリオブジェクトを作成することによって行われますか?インターフェイスを使用する場合、具体的なオブジェクトは常にファクトリメソッドによって返されますか?
IRepository<User> userRepository = new UserRepository(connection); // Needs a dbconnection
userRepository.Create(user);
//Is this the best way?
IRepository<User> userRepository = RepositoryFactory.GetUserRepository(connection);
public static class RepositoryFactory
{
public static IRepository<User> GetUserRepository(DbConnection connection)
{
return new UserRepository(connection);
}
}
UserRepositoryオブジェクトを使用する最も理想的な方法は何ですか? UserRepositoryにファクトリオブジェクトを使用した場合、接続オブジェクトを渡すのか、そのプロセスは何ですか?