ORM (Object-Relational Mapping) Object-Relational Mapping, 객체-관계 매핑 ORM은 객체와 RDB의 데이터를 자동으로 매핑(연결)해주는 것을 말합니다. 예를 들면, 객체 지향 언어에서는 모델을 정의할 때 Class를 사용하고, RDB에선 Table을 사용합니다. 이 떄, 객체 지향 언어로 된...
미니 블로그 만들기 - 06
Custom Hook 여러 컴포넌트에서 공통적으로 사용되는 상태 로직을 추출하여 함수로 만들어서 사용 use라는 접두사를 사용하여 함수의 이름을 정의 React의 기본 훅(useState, useEffect 등)을 이용하여 구현 즉, React에서 반복되는 로직을 컴포넌트로 만들어 사용했던 것처럼 반복되는 메서드를 Custom Hoo...
import / export (ES6)
모듈 내보내고 가져오기 JavaScript(ES6)에서는 파일을 모듈로 취급하고 모듈을 내보내고 사용하기 위해서 import, export를 사용합니다. 모듈은 비슷한 기능을 묶어 관리하는 것을 말합니다. export export 문은 JavaScript 모듈에서 함수, 객체, 원시 값을 내보낼 때 사용합니다. exp...
미니 블로그 만들기 - 05
Axios 설치 서버에 데이터를 요청하기 위해서는 HTTP 통신을 해야합니다. React에는 HTTP 통신을 위한 내장 클래스가 존재하지 않기 떄문에 XMLRequest, fetch, axios 등을 사용하여 ajax를 구현합니다. 이번엔 axios를 사용해서 서버에 데이터를 요청해보겠습니다. 설치 npm i axios ...
미니 블로그 만들기 - 04
서버 구현 미니 블로그의 글, 댓글 데이터를 관리할 서버를 구현해보겠습니다. server 폴더를 만들고 npm init을 실행하여 npm을 사용할 수 있는 초기 환경을 설정합니다. express + MVC 참고 글 : MVC 패턴 참고 글을 토대로 MVC 패턴을 활용해 구현해보겠습니다. View 부분은 앞서 구현한 React를 활...
슈퍼/서브타입 데이터 모델
슈퍼/서브타입 데이터 모델 (Extended ER 모델) 업무를 구성하는 데이터의 특징을 공통과 차이점의 특징을 고려하여 효과적으로 표현하는 모델링 방법입니다. 즉, 공통의 부분은 슈퍼타입, 차이가 있는 속성에 대해서는 별도의 서브타입으로 구분하여 업무의 모습을 정확하게 표현할 수 있습니다. 물리적인 데이터 모델로 변환 슈퍼/서브타입의 ...
테이블을 ERD로 변환
MySQL Workbench에서는 기존의 DB 스키마에서 ER 다이어그램을 추출하는 Reverse Engineer를 제공합니다. ER 다이어그램 생성방법 상단 탭의 Database에서 Reverse Engineer... 클릭 Next 클릭 사용할 SCHEMA 선택 후...
데이터 모델링 실습
예제 1 - 학적과 수강신청 요구 사항 명세서 학적과에는 각 과목을 강의하는 강사, 등록한 학생과 강의 시간, 요일, 장소 등의 데이터가 유지된다. 한 강사가 여러 개의 과목을 강의할 수 있으며, 각 과목과 학생 간에는 학점이 부여된다. 과목에 대해서는 과목번호, 과목명 등의 정보가 유지되어야 ...
물리적 데이터 모델링
물리적 데이터 모델링 물리적 데이터 모델링은 사용할 데이터베이스를 선택하고 실제로 테이블을 만드는 작업을 말합니다. MySQL Workbench에서는 ER 다이어그램을 DB 물리 스키마로 생성하는 Forward Engineer를 제공합니다. 사용방법 File 탭에서 New Model를 선택합니다. ...
데이터베이스 명명 규칙
데이터베이스 명명 규칙 (Database Naming Conventions) 실제 실무에서는 팀마다 정해진 규칙이 있겠지만 개인 프로젝트를 위해 올바른 명명 규칙을 정리해보자. 앞으로 활용할 나만의 규칙을 정해보자. 중요한 이유 DB 구조의 수명은 생각보다 길다 DB 구조는 애플리케이션 코드보다 훨씬 오래 지속...