ORM

개발 공부 기록·2021년 8월 6일
0

DB

목록 보기
2/3

MVC 디자인 패턴

`UI`와 **비즈니스 로직**, 그리고 **모델**을 분리하여 개발하는 소프트웨어 공학의 방법론

Model - View - Controller 각자 영역으로 나눠진 디자인 패턴

Model: DB, Controller와 연결됨

모델은 엔티티를 객체로 표현한 형태로, 데이터 구조를 기술하고, 데이터에 수행할 수 있는 명령의 모음을 의미

View: UI, Controller와 연결됨

Controller: action을 input으로 받아 가공된 데이터를 Model로 보내주고 Model이 DB에서 받은 데이터를 다시 가공해 View에게 보내줌

장점: 코드 가독성/관리성/효율성 좋아짐

ORM

ORM은 바로 Model을 기술하는 도구(Object-Relational Mapping)
=> 데이터베이스 세계와 프로그래밍 언어 사이의 개념의 간극을 줄여줌

Object <===ORM===> 관계형 DB

장점
가독성이 좋음, SQL문 없이 OOP로 작성할 수 있음

Sequelize

Sequelize ORM: a promise-based Node.js ORM

  • Migration
    마이그레이션스키마 변경에 따른 데이터 이주(migration)를 뜻함
    => 데이터를 선택, 준비, 추출 및 변환하여 한 컴퓨터 저장 시스템에서 다른 컴퓨터 저장 시스템으로 영구적으로 전송하는 프로세스를 뜻함

  • Associations - join table 구현

  • Transaction - 성공하면 commit 실패하면 rollback

Sequelize 공식 문서 참조

profile
둔필승총(鈍筆勝聰) - 기억보다는 기록을

0개의 댓글