Nuke Olaf - Log Store
디자인 패턴, MVC 패턴, MVP 패턴 요약 정리 본문
1. 디자인 패턴이란?
개발을 하면서 반복적으로 발견되는 문제를 해결할 수 있는 재사용 가능한 해결책이다.
2. 디자인 패턴을 사용하는 이유
디자인 패턴은 프로그램을 개발하면서 직면할 수 있는 문제상황들에 대한 검증된 해결책을
제시하므로, 문제 상황에 대한 해결책을 처음부터 다시 만들 필요가 없다.
디자인 패턴을 제대로 적용하여 프로그램을 설계하면, 코드의 유지보수가 쉬워진다.
또한, 디자인 패턴은 특정 문제를 해결하는 데 사용된 패턴의 이름을 정의하므로,
다른 개발자들과 시스템 설계를 논의할 때 효율적으로 커뮤니케이션 할 수 있도록 도와준다.
3. MVC 패턴이란?
애플리케이션의 시각적 요소와 그 이면에서 실행되는 로직을
Model - View - Controller 로 분리하여
서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만드는 방식이다.
4. MVC 패턴을 사용하는 이유
MVC 의 기능이 분리되면 유지보수가 상대적으로 용이해지며,
확장성이 커지고 유연성이 증가한다.
5. MVP 패턴이란?
Model 과 View 가 상호 의존적인 MVC 패턴의 단점을 보완하기 위해
MVC 패턴에서 파생되어 나온 디자인 패턴이다.
Model 과 View 가 Presenter 를 거쳐서만 상호 동작할 수 있다는 것이 특징이다.
6. MVP 패턴을 사용하는 이유
MVC 패턴의 단점을 보완하기 위해 사용한다.
Model 과 View 가 완전히 분리되어 Model 의 역할인 비즈니스 로직을
독립적으로 테스트할 필요가 있을 때 사용한다.
7. 안드로이드에서 MVP 패턴을 사용하는 방법
(1) Presenter 클래스를 작성한다.
- Presenter 는 View 와 interface 로 연결된다.
- Presenter 클래스 내에 Model 과 View 객체를 선언한다.
- Model 로부터 데이터를 가져와 처리하고,
다시 Model 에 보내 저장하게 하는 코드를 작성한다.
- View 를 Handle 하는 인터페이스를 작성한다.
(2) Model 클래스를 작성한다.
- 저장된 데이터를 Presenter 에 전송하거나 저장하는 코드를 작성한다.
(3) MainActivity 는 Presenter 의 View 인터페이스를 구현한다.
(4) MainActivity 에 presenter 클래스를 선언하고,
onCreate 에서 presenter 객체와 xml 의 View 를 연결해주는 작업을 한다
'ComputerScience > [디자인 패턴]' 카테고리의 다른 글
[MVP] 안드로이드에 mvp 패턴 적용하기(2) - Contract 작성 (0) | 2020.03.10 |
---|---|
[MVP] 안드로이드에 mvp 패턴 적용하기(1) - mvp 패턴이란? (0) | 2020.03.10 |
디자인 패턴이란? (0) | 2020.03.03 |
MVP 패턴과 안드로이드 (0) | 2020.03.02 |
MVC 디자인 패턴 (0) | 2020.03.02 |