I have in mind two options:

  • Code in the class being saved/loaded. The flows for each entity/model are in the same place, so it’s easy to just have one file open to see all the functionalities of that class, but this means having more code in a single file.
  • Code in a dedicated class (like a factory)
    This makes each file smaller, but spreads flows of a single model into different parts of the repo, also because I’m thinking of having a directory /src/models and another like /src/export (or serialize)

What do you guys think?
What’s your preferred way to organize the save and load flows?

  • @[email protected]
    link
    fedilink
    1
    edit-2
    4 hours ago

    I prefer to just throw the state into a database. Each table has their own “repository” type that knows how to save/load models and then I have “manager” types that use “repository” types to compose larger, feature-specific domain models.

    I usually just use Sqlite for it’s simplicity but I’m not opposed to Postgres via Docker.