코딩 공부/개념정리
HTTP & MVC
챠나
2023. 4. 16. 23:07
우선 웹에서는 결과를 웹페이지,
웹페이지가 모여있으면 웹사이트라고 하며 기능이 좀 많으면 웹애플리케이션(줄여서 웹앱)이라고도 한다.
웹을 사용할 때 가장 중요한 4가
- HTML
: 웹페이지를 만드는 컴퓨터 언어 - URL
: 원하는 웹페이지에 방문할 수 있도록 도와주는 주소체계 - Web broswer, Web Server
: 웹페이지를 주고받는 소프트웨어 - HTTP (HyperText Transfer Protocol)
: 웹브라우저와 웹서버가 통신할때사용하는 통신규칙
인터넷에서 가장 중요한 통신규칙이 된 HTTP는 웹을 넘어서서 인터넷이 동작하는 근간이 되었다.
- MVC?
MVC(Model, View, Controller)
하나의 애플리케이션, 프로젝트를 구성할 때 그 구성요소를 세가지의 역할로 구분한 패턴이다.
Controller를 조작하면 Controller는 Model을 통해 데이터를 가져오고 그 데이터를 바탕으로 View를 통해 시작적 표현을 제어하여 사용자에게 전달하게 된다.
이러한 패턴을 성공적으로 사용하면, 사용자 인터페이스로부터 비즈니스 로직을 분리하여 애플리케이션의 시각적 요소나 그 이면에서 실행되는 비즈니스 로직을 서로 영향없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있게 된다.
- Model : 백그라운드에서 동작하는 비즈니스 로직(데이터) 처리
- View : 정보를 화면으로 보여주는 역할
- Controller : 사용자의 입력 처리와 흐름 제어 담당, 화면과 Model과 View를 연결시켜주는 역할
✨ 위의 개념을 WEB에 적용하게 된다면?
1. 사용자가 웹사이트에 접속 (User)
2. Controller는 사용자가 요청한 웹페이지를 서비스하기 위해서 모델을 호출(Manipulates)
3. Model은 데이터베이스나 파일과 같은 데이터 소스를 제어한 후 그 결과를 Return
4. Controller는 Model이 리턴한 결과를 View에 반영 (Updates)
5. 데이터가 반영된 View는 사용자에게 보여짐 (Sees)
아직까지는 MVC에 대해서 정확히 이해가 가지 않는다..
Spring 공부를 하면서 개념을 더 찾아보고 익혀야겠다.