ORM
객체-관계 매핑으로, 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것을 말한다.
객체지향 프로그래밍에서는 클래스를, 관계형 데이터베이스에서는 테이블을 사용한다.
객체지향적인 코드로 직관적이고, 비지니스 로직에 집중할 수 있다. 재사용성 및 유지보수에 대한 편리성이 증가하고, DBMS에 대한 의존성이 줄어든다. 하지만 ORM으로만 서비를 구현하기는 어렵다.
SQL
SQL이란 Structured Query Language 구조적 질의 언어의 줄임말이다. 관계형 데이터베이스(RDBMS)에서 자료를 관리 및 처리하기 위해 설계된 언어이다.
MVC
MVC 패턴은 모델, 뷰, 컨트롤러로 이루어진 디자인 패턴이다. 어플리케이션의 구성 요소를 세 가지 역할로 나누어 개발 과정에서 각 구성 요소에만 집중하여 개발 할 수 있다.
모델은 어플리케이션의 데이터베이스, 상수, 변수 등을 뜻한다다. 모델은 사용자가 편집하길 원하는 모든 데이터를 가지고 있어야 하고, 뷰나 컨트롤러에 대한 어떤 정보도 알지 못해야 한다.
뷰는 사용자 인터페이스 요소를 나타낸다. 뷰는 모델이 가지고 있는 정보를 따로 저장해선 안되고, 뷰나 컨트롤러의 구성요소에 대해 몰라야 하며, 변경이 발생하면 컨트롤러에 이를 전달해야 한다.
컨트롤러는 뷰와 모델을 잇는 다리 역할을 한다. 컨트롤러는 모델이나 뷰에 대해 알고 있어야 하고, 모델이나 뷰의 변경을 모니터링 해야 한다.
재사용성과 확장성이 용이하다는 장점이 있으나 컨트롤러에 의해서 하나의 뷰에 연결될 수 있는 모델도 여러 개가 될 수 있어 애플리케이션이 복잡해질수록 뷰와 모델 간의 관계가 복잡해지고 의존성이 높아진다는 단점이 있다.
'TIL' 카테고리의 다른 글
[TIL - 20230503] WebSocket+Stomp 채팅방에 직접 참여하지 않은 사용자 구독시키기1 (0) | 2023.05.04 |
---|---|
[TIL - 20230501] 채팅 시스템 프론트와 연결 (0) | 2023.05.02 |
[TIL - 20230430] WebSocket+Stomp 사용자들이 있는 채팅방 찾기 (0) | 2023.04.30 |
[TIL - 20230429] WebSocket + Stomp 적용기2 (0) | 2023.04.29 |
[TIL - 20230428] WebSocket + Stomp 적용기1 (0) | 2023.04.29 |