MVC는 Model-View-Controller의 약어로, 소프트웨어 디자인 패턴 중 하나입니다. 이 패턴은 소프트웨어를 세 가지 주요 구성 요소로 나누어 유지보수성과 확장성을 강화합니다.
Model:
- 컨트롤러의 호출에 응답하여 DB와 상호작용하며 사용자의 입출력 데이터 및 관련 비즈니스 로직을 처리합니다.
- 데이터 추출, 저장, 삭제, 업데이트 등의 작업을 수행하여 시스템의 핵심 역할을 담당합니다.
View:
- 사용자와 상호작용하며, 컨트롤러로부터 받은 모델의 결과를 사용자에게 화면으로 출력합니다.
- 사용자 인터페이스를 담당하여 시각적으로 정보를 전달하고 사용자에게 편리한 경험을 제공합니다.
Controller:
- Model과 View 사이를 연결하는 인터페이스 역할을 합니다.
- Model이 데이터를 처리하는 방법을 지시하고, View로부터 사용자 입력을 받아 Model에 전달하여 시스템의 흐름을 조정합니다.
장점
- 유지보수 및 확장 용이성: 독립성으로 변경이 쉽고 시스템을 쉽게 유지보수하고 확장할 수 있음.
- 코드 재사용: 명확한 역할로 코드 재사용이 용이하며 각 부분에 집중 가능.
- 효율적인 협업: 협업이 쉬우며 개발자들이 각자 역할에 집중할 수 있음.
- 시각적 표현과 로직 분리: 뷰와 모델의 분리로 코드 가독성 향상.
- 테스트 용이성: 독립적인 테스트로 소프트웨어 안정성 높임.
- 사용자 경험 개선: 디자이너와 개발자의 병행 작업 가능하며, 시각적 변경이 비즈니스 로직에 영향이 적어 사용자 경험이 향상됨.
'면접준비' 카테고리의 다른 글
NoSQL과 RDBMS의 특징과 차이점에 대해서 장, 단점을 들어 설명해주세요. (0) | 2024.01.16 |
---|---|
쿠키, 세션의 개념과 차이를 설명해보세요 (0) | 2024.01.15 |
정렬 알고리즘에 대해서 아는대로 설명해주세요. (0) | 2024.01.12 |
ORM을 사용하면서 쿼리가 복잡해지는 경우에는 어떻게 해결하는게 좋을까요? (0) | 2024.01.12 |
CI/CD에 대해서 설명해주세요. (0) | 2024.01.11 |