데이터 매퍼 패턴
Data mapper pattern소프트웨어 엔지니어링에서 데이터 매퍼 패턴은 아키텍처 패턴입니다.Martin Fowler가 2003년 저서 "Patterns of Enterprise Application Architecture"[1]에서 명명했습니다.이 패턴에 준거한 오브젝트의 인터페이스에는 데이터 스토어의 도메인엔티티 유형을 나타내는 오브젝트에서 동작하는 Create, Read, Update 및 Delete 등의 기능이 포함됩니다.
데이터 매퍼는 영속적인 데이터 저장소(대개 릴레이셔널 데이터베이스)와 메모리 내 데이터 표현(도메인 계층) 간에 양방향 데이터 전송을 수행하는 데이터 액세스 계층입니다.패턴의 목적은 메모리 내 표현과 영구 데이터 저장소를 서로 독립적으로 유지하고 데이터 매퍼 자체를 유지하는 것입니다.이는 영속적인 데이터 저장소에 [2]깔끔하게 매핑되지 않는 도메인 계층의 데이터를 기반으로 엄격한 비즈니스 프로세스를 모델링하고 적용해야 할 때 유용합니다.레이어는 데이터 전송을 수행하는 하나 이상의 매퍼(또는 데이터 액세스 개체)로 구성됩니다.매퍼의 실장은 범위가 다양합니다.범용 매퍼는 다양한 도메인엔티티 유형을 처리하고 전용 매퍼는 1개 또는 여러 개를 처리합니다.
실장
개념의 구현은 많은 프로그래밍 환경의 다양한 프레임워크에서 찾을 수 있습니다.
Java/.NET
- MyBatis 지속성 프레임워크
- 휴지 상태(NHibernate) 지속성 프레임워크
Node.js/TypeScript
PHP
- Atlas ORM(데이터 매퍼, 테이블 데이터 게이트웨이, 쿼리 빌더 및 PDO 래퍼)[3]
- 원칙 2 객체 관계형 매퍼(ORM) 및 데이터베이스 추상화 계층[4]
- 사이클 ORM(PHP Data Mapper ORM 및 데이터 모델링 엔진)[5]
파이썬
루비
- Data Mapper 라이브러리(실제로 이 라이브러리는 Active Record 설계 패턴을 구현했습니다.이 패턴의 후속 버전인 Data Mapper 2(현재의 ROM)는 그 이름을 딴 설계 패턴을 실제로 구현하기 위한 것입니다.)
엘릭시르
- 엑토 지속성 프레임워크
「 」를 참조해 주세요.
레퍼런스
- ^ Fowler, Martin (2003). Patterns of enterprise application architecture. Addison-Wesley. ISBN 978-0-321-12742-6.
- ^ "What's the difference between Active Record and Data Mapper?".
{{cite web}}
: CS1 maint :url-status (링크) - ^ "Atlas ORM – Atlas".
- ^ "Doctrine2 and ActiveRecord – Doctrine2". Doctrine2. Archived from the original on 2013-07-21. Retrieved 2013-04-02.
- ^ "Cycle ORM – Cycle". GitHub.