KamaTAEWOO / FastCampusStudy-2

0 stars 0 forks source link

Q7) MVC, MVP, MVVM 정의가 무엇이고 장단점을 서술해보세요 #8

Open ows3090 opened 1 year ago

KamaTAEWOO commented 1 year ago
  1. MVC
    • 정의 : Model - View - Controller로 나뉘어 있으며, 서로 상호 작용하며 데이터 제어
    • 장점 : 코드 분리가 쉽고, 테스트 용이성이 높다.
    • 단점:
    • 코드 중복이 발생할 수 있고, 복잡성이 증가하고 유지보수가 어렵다.
    • View와 Model간의 의존성이 높음
  2. MVP
    • 정의 :
    • Model - View - Presenter로 나뉘어 있으며, 서로 상호 작용하며 데이터 제어
    • 테스트 용이성과 유지보수성이 MVC보다 높다.
    • 장점: View와 Model을 완전히 분리하고 Presenter가 View와 Model사이에서 중개 역할을 하기 때문에 유지보수성이 높다.
    • 단점:
    • MVC보다 코드 복잡도가 높고, 개발 시간이 더 많이 소요된다.
    • View와 Presenter간의 의존성이 매우 높음. 1:1 관
  3. MVVM
    • 정의:
    • View - Model - ViewModel로 나뉨
    • 데이터 바인딩을 사용하여 View와 ViewModel 사이의 상호작용을 단순화 시킴
    • 장점:
    • 테스트 용이성과 유지보수성이 높음
    • Databinding으로 View와 ViewModel간의 의존성을 낮추기 때문에 테스트 용이성과 확장성이 높음
    • 단점
    • Databinding으로 인해 초기 로딩이 느려질 수 있다는 단점이 있으며, 가독성이 떨어질 수도 있음
ows3090 commented 1 year ago

@KamaTAEWOO 태우님 MVC, MVP, MVVM FlowChart 식으로 작성해주세요~