Java - 개념정리 6
2022. 4. 7. 15:10ㆍJava
반응형
MVC 패턴
Model View Controller
- User -> Controller 조작 -> Controller :: (Model: 데이터 가져오기 -> View 제어 -> User에 전달)
Model
- 일반적으로 CI의 모델은 데이터베이스 테이블에 대응된다
- 이를테면 Topic이라는 테이블은 topic_model이라는 Model을 만든다
- 그런데 이 관계가 강제적이지 않기 때문에 규칙을 일관성 있게 정의하는 것이 필요하다
- 모든 데이터에 대한 정보를 알고 있어야 하며, 이러한 정보들의 가공을 할 수 있어야 한다
- Model이 직접 이 변경사항을 화면 UI를 수정할 수 없고, 대신에 이 변경에 해당하는 이벤트를 발생시켜 다른 구성 요소에게 전달하여야 한다.
View
- View는 클라이언트 측 기술인 HTML/CSS/JavaScript들을 모아둔 컨테이너이다.
- Model이나 Controller가 user에게 보여주고자 하는 모든 것을 화면에 출력하는 역할이다
- 화면에 표시만 할 뿐, 표시하기 위해 필요한 정보는 저장하지 않는다
- Model과 마찬가지로, UI에 변경이 일어났을 때, 직접 변경을 적용시킬 수 없고, 이를 이벤트화해서 다른 요소에 전달시킬 수 있는 방법을 가지고 있어야 한다.
Controller
- 사용자가 접근 한 URL에 따라서 사용자의 요청사항을 파악한 후
- 그 요청에 맞는 데이터를 Model에 의뢰
- 데이터를 View에 반영해서 사용자에게 알려준다
- Controller는 user부터의 입력을 받고, 데이터와 UI의 소통을 담당하는 요소로, Model 과 View가 주 고받는 이벤트의 처리를 담당한다
- Controller는 Model 과 View에 대한 정보를 알고 있어야 한다
MVC 패턴의 장점
- MVC의 핵심은 각 구성요소를 독립시킴으로써 각 팀으로 하여금 맡은 부분의 개발에만 따로 집중 할 수 있게 하여 개발의 효율성을 높일 뿐만 아니라.
- 개발 완료 후에도 유지보수성과 확장성을 보장한다.
CRUD
- 컴퓨터 소프트웨어가 가지는 기본적인 데이터 처리 기능을 묶어서 이르는 말
- Create(생성), Read(읽기), Update(갱신), Delete(삭제)를 묶어서 일컫는 말
728x90
반응형
'Java' 카테고리의 다른 글
Java - 개념정리 7 (0) | 2022.04.07 |
---|---|
Java - 개념정리 5 (0) | 2022.04.05 |
Java - 개념정리 4 (0) | 2022.04.05 |
Java - 개념정리 3 (0) | 2022.04.05 |
Java - 개념정리 2 (0) | 2022.04.05 |