diff --git a/Design-keuzes.md b/Design-keuzes.md index f0e2e94..09d6baf 100644 --- a/Design-keuzes.md +++ b/Design-keuzes.md @@ -1,3 +1,16 @@ +## Architectuur + +### Object Relational Mapping (ORM) Patroon: Data Mapper + +**Data Mapper Patroon in plaats van Active Record Patroon** + +Dit project maakt gebruik van het Data Mapper Patroon. + +- :white_check_mark: De backend is zo meer ontkoppeld van de database, waardoor die in de toekomst eenvoudiger uitgewisseld kan worden. +- :white_check_mark: Gebruik maken van het Data Mapper Patroon biedt meer flexibiliteit tijdens het ontwerpen van de database. + +Zie ook [deze vergelijking](https://www.thoughtfulcode.com/orm-active-record-vs-data-mapper/). + ## Technologie stack ### Programmeertaal: TS @@ -60,16 +73,7 @@ De backend maakt gebruik van [ExpressJS](https://expressjs.com/). Een mogelijk alternatief zou bv. [fastify](https://fastify.dev/) zijn. -### Object-Relational-Mapping (ORM) - -**Data Mapper Patroon in plaats van Active Record Patroon** - -Dit project maakt gebruik van het Data Mapper Patroon. - -- :white_check_mark: De backend is zo meer ontkoppeld van de database, waardoor die in de toekomst eenvoudiger uitgewisseld kan worden. -- :white_check_mark: Gebruik maken van het Data Mapper Patroon biedt meer flexibiliteit tijdens het ontwerpen van de database. - -Zie ook [deze vergelijking](https://www.thoughtfulcode.com/orm-active-record-vs-data-mapper/). +### Object-Relational-Mapping (ORM): MikroORM **MikroORM in plaats van TypeORM**