-
DB - ORM
ORM
-
Object-relational mapping. 객체-관계 매핑.
- 데이터베이스와 객체 지향 프로그래밍 언어 간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법으로 객체간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결한다.
- Object <- ORM:매핑 -> DB데이터
장점
- 객체 지향적 코드: SQL문이 아닌 클래스의 메소드를 통해 데이터베이스를 조작할 수 있어 개발자가 객체 모델만 이용해서 프로그래밍을 하는데 집중할 수 있게 한다.
- 재사용, 유지보수 용이성: 기존 객체와 독립적으로 작성되어있고, 객체로 작성되어 있어 재활용할 수 있다.
- DBMS에 대한 종속성 하락: 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하고, 객체의 자료형 타입까지 사용할 수 있기 때문에 RDBMS의 데이터 구조와 객체지향 모델 사이의 간격을 좁혀 객체에만 집중할 수 있게 한다.
단점
- 프로젝트의 복잡성이 커질 수록 난이도 또한 올라갈 수 있다.
- 완벽히 ORM으로만 서비스를 구현하기 어려워 결국 SQL이 필요하다.
reference
velog.io/@alskt0419/ORM%EC%97%90-%EB%8C%80%ED%95%B4%EC%84%9C...-iek4f0o3fg
'CS > DB' 카테고리의 다른 글
DB - 파티셔닝과 샤딩 (0) 2021.02.12 DB - NOSQL (0) 2021.02.12 DB - 스키마 (0) 2021.02.12 DB - 정규화 (0) 2021.02.11 DB - Join (0) 2021.02.11 -