Achievement Goal
MVC 디자인 패턴과 같이, 코드를 각각 다른 부분으로 나누어 작성해야 하는 이유를 이해할 수 있다.
Model, View, Controller가 각각 어떤 역할을 하는지 이해할 수 있다.
ORM의 장점을 이해할 수 있다.
Sequelize ORM과 관련 CLI 툴들을 공식 문서를 보고 사용할 수 있다.
Sequelize를 이용해 모델을 작성할 수 있다.
Sequelize를 이용해 마이그레이션을 할 수 있다.
마이그레이션의 개념과 필요성을 이해할 수 있다.
Sequelize ORM으로 1:1. 1:N, N:N 관계를 표현할 수 있다.
(Advanced) MVC 디자인 패턴의 한계를 이해할 수 있다.
객체와 관계형 데이터베이스의 데이터를 자동으로 매핑해주는 것
ORM을 통해 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결->SQL 필요 x
(스프린트 파일 구성 분석)
Node-config organizes hierarchical configurations for your app deployments.
It lets you define a set of default parameters, and extend them for different deployment environments (development, qa, staging, production, etc.).
Configurations are stored in configuration files within your application, and can be overridden and extended by environment variables, command line parameters, or external sources.
This gives your application a consistent configuration interface shared among a growing list of npm modules also using node-config.
(Deploy: 프로그램 등을 서버와 같은 기기에 설치하여 서비스 등을 제공하는 의미)
앱 deployment(배포?) 위한 계층적으로 환경설정 구성을 정리한 것
기본 parameter set을 정의하고 다른 deployment 환경들에 따라 확장시킬 수 있다.
환경 변수, 커맨드 라인 패러미터 ,외부 소스등에 의해 재정의될 수 있다.
요청을 받고 응답을 조종, model과 view의 중간다리
view에게 받은 데이터 가공-model에게 전달(혹 요청)/ model에게 받은 db데이터 가공-view에 전달(혹은 요청)
스키마 변경에 따른 데이터 이주(migration)
With migrations you can transfer your existing database into another state and vice versa: Those state transitions are saved in migration files, which describe how to get to the new state and how to revert the changes in order to get back to the old state.
you should simply perform whatever queries you need, with the help of sequelize.query