mvc란
M = Model = DB, 데이터 관련
V = View = 콘솔, 화면,사용자단,클라언트,프론트
C = Control = 서버, 백단,로직
의 약자로 코드를 패키지 단위로 분리하여 관리하는 방식이다 ★매우중요한 개념 ★ 이며 한번 잘 이해해두면 코드를 이해하는데 큰 도움이 된다.
네이버 만화 예시
사용자 -> 마음의소리 웹툰을 누름 = 뷰에게 요청사항 전달함
뷰는 사용자의 요청을 컨트롤러한테 전달한다
컨트롤러는 모델에게 사용자의 요청을 들어줄때 필요한 데이터를 요청한다 = 마음의소리 웹툰 데이터를 요청한다
컨트롤러의 요청을 받은 모델은 데이터를 찾아 컨트롤러에게 전달한다
요청한 데이터를 받은 컨트롤러는 뷰에게 데이터를 넘기고 이과정에서 사용자의 화면에 출력이된다 == 마음의소리 웹툰출력
정리하자면 사용자가 볼수 있는 것은 뷰의 파트인 브라우저 뿐이고 잘만들어진 서비스 일수록 백단에 신경을 쓰지 않아도 된다
사용자 -> 뷰(요구사항 요청)-> 컨트롤러(사용자 요청처리를 위한 데이터요청)-> 모델(데이터 찾아서 줌)->컨드롤러(받은데이터전달)-> 뷰(결과출력)-> 사용자
의 순으로 진행이된다 여기서 컨트롤러의 역할은 컨트롤러라는 큰 틀안에 뷰와 모델을 불러오는 일을 한다
코드를 먼저 치기전에 한글로 흐름을 이해할수 있는지가 중요하다 패키지는 클라이언트 컨트롤러 모델 뷰로 나누어서 진행하고
여기서 클라이언트(사용자)는 어플을 설치하고 실행하는 주체이며 실제작업은 컨트롤러 모델 뷰로 진행된다
모든 작업은 병렬로 진행되며 컨트롤러는 서비스를 제공할 메서드를 만들고 각 메서드가 어느파트에서 진행되어야하는지 고민해보아야한다 메서드를 생성할때는 앞에 접근제어자를 public으로 해주어야 다른파트에서도 사용이 가능하다
뷰는 사용자와 제일 밀접한 관계에 있으므로 사용자의 니즈를 반영하는게 중요하다
모델은 다섯개의 메서드를 가지고 있는데 인서트 셀렉트원 셀렉트올 업데이트 딜리트가 있다
이렇게 파트별로 코딩을 할때 코드 한줄은 한개의 기능을 가지게 된다 파트별로 나눠서 진행되기때문에 내가 작업을 진행할때 필요한 자료들을 다 외부에서 받아와야한다 맡은 파트와 연관없는 파트에대한 고민은 하지말고 오더 받은대로 하면된다 내가짠 코드의 디벨롭은 가능하다
'🐢 꼬부기 LV.1 | 개념•기초 > 💧물대포(핵심개념)' 카테고리의 다른 글
| 프로그래밍 언어 시험 오답노트 01 (0) | 2025.10.30 |
|---|---|
| MVC 파트별 내용정리 (0) | 2025.10.26 |
| 컬렉션 프레임워크와 예외처리 (0) | 2025.10.22 |
| 최상위 클래스 object와 추상화의 개념 (0) | 2025.10.21 |
| 상속/protected/super/오버라이딩/다형성/동적바인딩 (0) | 2025.10.20 |