パーシスタンス レイヤーをアプリケーションに追加しようとしていますが、コア データを試してみることにしました。現在、すべてのモデルをエンティティにマップしていますが、これは非常にうまく機能しているようです。しかし、現在の実装では、(モデルの) 「コレクション」と呼ぶものを使用しています。たとえば、ゲーム内のタイル スロットのコレクションがあります。
この SlotsCollection クラスには、findNextInSameRow() findAvailableSlot() などのメソッドがあります。コア データで行ったことは、Game エンティティを作成し、Slot エンティティに多対多の関係を追加したことです。コレクションのクラスを定義する方法はありますかスロットをインスタンス化する必要があるので、その中にロジックを入れることができますか? または、物事を構造化するためのより良い方法はありますか。ゲームエンティティ内に「マネージャー」を作成し、初期化時にスロットを渡すことができると思います
SlotManager* manager = [SlotManager alloc] initWithSlots:self.slots];
Slot* slot = [manager findAvailableSlot];
また、すべてのモデルをエンティティに「移行」した後、属性を持たず、他のエンティティへの参照のみを保持するエンティティがたくさんあります。コアデータを構造化するときに間違った考え方を使用しているのではないかと少し心配しています。