私はSwiftを使い慣れていません.dbアクセス用の抽象的なファクトリを作成したいと思います。ここ は私のプロトコルは、構造体AccountDAORealmに構造体RealmFactoryとIAccountDAOでIDAOFactoryを実装する方法をこのプロトコルを構造体に実装するには
protocol IDAOFactory
{
associatedtype DAO: IDAO
func createAccountDAO<DAO: IAccountDAO>() -> DAO
}
struct RealmFactory: IDAOFactory
{
}
protocol IDAO
{
associatedtype T
func save(object: T)
}
protocol IAccountDAO : IDAO
{
}
struct AccountDAORealm: IAccountDAO
{
}
のですか? 誰でも助けることができますか?
なぜ構造体ですか?構造体は参照オブジェクトではなく、値オブジェクトです。 – gnasher729
あなたはクラスを使用する方が良いでしょうか? –
あなたの決定ですが、構造体は_values_として渡されるので、あなたのファクトリを呼び出すすべての人が異なる構造体を取得します。構造体を関数に渡すたびに、構造体のコピーが作成されます。 – gnasher729