본문 바로가기

TIL(Today I Learned)

TIL-230802(MVC패턴, RDBMS의 정규화)

📝오늘 공부한 것

  • 실전 프로젝트 기획 - '행동대장'
  • MVC 패턴, RDBMS의 정규화

 

알게 된 점

[ mvc 패턴 ]

 - Model-View-Controller의 약자로, 소프트웨어 디자인 패턴 중 하나

 - 소프트웨어를 구성하는 요소들을 Model, View, Controller로 구분하여 각각의 역할을 분리

 - 소프트웨어를 구성하는 요소들을 분리함으로써 코드의 재사용성과 유지보수성을 높이고, 개발자들 간의 협업을 용이하게 한다.

 

Model

 - 데이터와 비즈니스 로직을 담당한다.

 - 데이터베이스와 연동하여 데이터를 저장하고 불러오는 등의 작업을 수행한다.

View

 - 사용자 인터페이스를 담당한다.

 - 사용자가 보는 화면과 버튼, 폼 등을 디자인하고 구현한다.

Controller

 - Model과 View 사이의 상호작용을 조정하고 제어한다.

 - 사용자의 입력을 받아 Model에 전달하고, Model의 결과를 바탕으로 View를 업데이트한다.

 

 

[ RDBMS의 정규화 ]

정규화

RDBMS를 설계할 때, 중복을 최소화하면서 데이터 구조를 짜는 프로세스이다. 

중복된 데이터를 최소화하여 무결성을 유지할 수 있고, DB 용량도 줄일수 있다.

 

이상현상

정규화를 적절히 하지 않은 DB 또는 Table에 데이터가 중복되고 이 Table에 어떠한 작업을 할 때 비합리적인 문제들이 발생하는 현상

 

단계별 정규화

1정규형(1NF) - 테이블 내의 속성값들이 원자값으로 구성

2정규형(2NF) - 부분함수 종속 제거

3정규형(3NF) - 이행함수 종속 제거

보이스-코드 정규형(BCNF) - 결정자 함수이면서 후보키가 아닌 것 제거

4정규형(4NF) - 다치(다중 값) 종속성 제거

5정규형(5NF) - 조인 종속성 제거

 

https://epdev.tistory.com/40

 

RDBMS 정규화(Normalization) - 1/2

정규화(Normalization)의 개념 정규화란 뭘까? 우리가 흔히 DB라고 알고 있는 RDBMS(Relational DataBase Management System)를 설계할 때, 중복을 최소화하면서 데이터 구조를 짜는 프로세스이다. 그렇다면 왜 중

epdev.tistory.com

https://mangkyu.tistory.com/110

 

[Database] 정규화(Normalization) 쉽게 이해하기

지난 포스팅에서 데이터베이스 정규화와 관련된 내용을 정리했었다. 하지만 해당 내용이 쉽게 이해되지 않는 것 같아서 정규화 관련 글을 풀어서 다시 한번 정리해보고자 한다. 1. 정규화(Normaliz

mangkyu.tistory.com