본문 바로가기
SW 공부/Design Patterns

MVC pattern

by 꼬냉상 2022. 8. 29.

MVC Pattern 이란

- MVC 패턴은 두 개 이상의 패턴을 결합해서 문제를 해결하는 솔루션으로 만든 Compound Pattern(복합패턴)

- 사용하는 패턴 :  Strategy pattern / Observer pattern /Composite pattern 

 

- MVC를 구성하는 세 가지 객체

  Model : Application 객체 (Observer 객체)

    → makes use of the Observer pattern so that it can keep observers updated, yet stay decoupled from them.

    → observer를 업데이트하면서도 observer와 분리 상태를 유지할 수 있음   

  • Controller : UI가 사용자 입력에 반응하는 방식을 정의

     use Strategy Pattern

    → The view can use different implementations of the controller to get different behavior.

    → View의 gesture를 처리

  View : UI(화면 표시)

    → use Composite Pattern

    → implement the user interface, which usually consists of nested components like panels, frames, and buttons.

    → 자체로써 계층적 구조를 가짐

 

=> decouple the three players in the MVC model, which keeps designs clear and flexible.

Quiz) MVC 패턴의 클래스 다이어그램을 보면 Model이 View에 대한 약한 결합 관계를 보이고 있는데 이러한 제한이 왜 필요한지, 또한 구체적으로 어떻게 구현되는지 설명하시오.

→ 필요성 : 잦은 UI의 변화가 Model의 변화로 자동 파급되지 않도록 하기 위해 Model과 View 사이에 약할 결합이 필요합니다. UI가 교체되더라도 Model은 그대로 재사용이 가능합니다. 

class Model extends Observable {
    // ...
    void changeNotification () {
        setChanged();
        notifyObservers();
    }
    // ...
}
본 글은 개인의 S/W 구조설계 역량 강화를 위한 학습 목적으로 정리된 내용입니다.
일부 타/개인 단체에 저작권이 있는 자료를 포함하고 있으므로, 절대 영리 목적으로 사용하실 수 없습니다.
반응형

댓글