주어진 문맥 안에서 소프트웨어 아키텍처의 공통적인 발생 문제에 대한 일반적인, 재사용 가능한 해결책을 의미
디자인 패턴과 비슷하지만, 더 넓은 범위에 속한다.
- 프론트 컨트롤러
- 인터셉터
- 모델-뷰-컨트롤러
- 모델-뷰-프리젠터
- 모델-뷰-뷰모델
- 다층 구조
등이 있다.
아키텍처 패턴뿐만 아니라 소프트웨어 디자인 패턴에 대해 더 알려면 ..
Spring에서 일반적으로 MVC 패턴을 통해 개발하고, Django의 경우 MVT 패턴을 통해 개발한다.
Template는 쉽게 말해서 프론트엔드의 코드가 작성된 파일이라고 생각하면 된다.
아래는 MV 패턴이 작성된 그림이다.
- 웹 사이트에서 요청은 서버로 보냄
- 서버에서는 해당 요청을 들어줄 URL을 확인
- URL에 맞는 View에서 확인
- 필요한 작업에 맞게 CRUD를 하기 위해 Model을 이용하여 DB hits
Django는 ORM을 이용하기 때문에 SQL Query를 작성하지 않으며, Model을 이용하여 DB에 접근한다.
이렇게 진행한 뒤, View에서 결과를 리턴하여 클라이언트(Template)에 제공