ORM

공부의 기록·2021년 12월 4일
0

Dev Computer Science

목록 보기
15/18

ORM

최근에 다양한 라이브러리, 프레임워크 등을 배우다 보니 너무 혼란스러워서,
그 중 하나인 ORM 에 대해서 알아보려고 포스트를 작성하게 되었다.

2021.12.05
기준 Nest.JS 우버이츠 클론코딩을 하고 있고
TS Type, GraphQL Query, Nest.JS-ORM Entity 가 혼란스럽다.

REF 의 참고 포스트의 내용이 딥하고 너무 Java 의 개념이라서
TypeORM 관련 포스트를 찾아보고 이에 대해서 공부해봐야겠다.


정의

Object Relationship Mapping, 객체 관계 매핑

  1. 객체와 DB 데이터 상의 양식 불일치 존재
    1.1. FFP(객체 지향 프로그래밍) 은 클래스를 사용한다.
    1.2. DB 는 테이블을 사용한다.

  2. Persistance API 라고도 불린다.
    2.1. JPA, Hibernate 등이 있다고 하는데, 나는 TypeORM 을 배우고 있다.


장단점

장점

  1. 직관적인 코드로 인해, 비즈니스 로직에 더 집중할 수 있게 된다.
  2. 재사용 및 유지보수성이 크게 증가한다.
  3. DBMS 에 대한 종속성이 크게 감소한다.

단점

  1. 완벽한 ORM 으로만 서비스를 구현하기가 어렵다.
  2. 프로시저가 많은 시스템에서는 ORM 의 객체 지향적 장점을 사용하기 어렵다.

REF

https://gmlwjd9405.github.io/2019/02/01/orm.html

profile
2022년 12월 9일 부터 노션 페이지에서 작성을 이어가고 있습니다.

0개의 댓글