Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Данный репозиторий является одним из примеров реализации паттерна Data Mapper

Если коротко, то в данном репозитории вы можете найти:

  1. Entity - Описание сущности. В качестве примера в данном проекте находится сущность message. Сущность объеденяет вокруг себя следующие элементы:
    • Model - содержит описание сущности, а так же методы для работы с ними.
    • Collection - содержит список сущостей, а так же методы работы с ними.
    • Mapper - реализует общий интерфейс мапперов, а так же два абстрактных метода createModel и createCollection что являются уникальными для каждого отдельного маппера и используются для маппинга пришедших с респонса джейсончиков в сущности.
  2. Adapter - Описывает ендпоинты конкретного источника данных. Будь то БД или апишка. Название может многих натолкнуть на мысль об одноименном паттерне, и это имеет смысл. Если посмотреть широко, мы с помощью адаптера согласуем интерфейс наших мапперов с внешним источником данных.
  3. Factory - Сейчас это обычная статическая фабрика. В случае появляния нового источника данных (нового адатера) можно допилить эту фабрику в абстрактную фабрику

Так же в этом репозитории вы можете видеть использование и иных классов, к примеру Transaction или RequestCriteria, но самих классов в этот репозиторий я добавлять не стал что бы не усложнять ревью.

About

Пример реализации Data Mapper на TS

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages