Android 에서 MVP 모드 사용 안내

본문의 원문 주소:http://www.race604.com/android-mvp/
여러 곳 에서 MVP 를 언급 하 는 것 을 자주 볼 수 있 습 니 다. 안 드 로 이 드 개발 에서 MVP 모델 이 점점 유행 하고 있 습 니 다. 저도 MVP 모델 을 배우 고 정리 하 겠 습 니 다.안 드 로 이 드 용 MVP The Clean Architecture 및 Resources for Learning Dagger for Android.
소프트웨어 구조의 의존 규칙:
소프트웨어 는 층 을 나 누고 고위 층 은 기초 업무 논리 와 전략 이 며 저층 은 실현 체제 와 표현 형식 이다.코드 와 데이터 의존 은 저층 코드 만 고위 층 에 의존 할 수 있 을 뿐 반대로 할 수 없다.
MVP 가 뭐 예요?
MVP 는 모델, View 와 Presenter 의 약칭.아주 유명한 MVC 모델 의 진화 판 입 니 다.MVP 모드 는 디 스 플레이 논리 와 비 즈 니스 논리 층 에서 분리 되 며, 이상 적 인 상황 에서 MVP 모드 에 서 는 서로 다른 보기 (View) 를 교체 하 는 상황 에서 완전히 동일 한 비 즈 니스 논 리 를 구현 할 수 있다.
Presenter 는 MVC 의 Controller 를 대신 해 Controller 보다 더 많은 임 무 를 맡 고 복잡 하 다.Presenter 는 이 벤트 를 처리 하고 해당 하 는 논 리 를 실행 합 니 다. 이 논 리 는 Model 의 Command 에 투사 하여 Model 을 조작 합 니 다.UI 가 어떻게 작 동 하 는 지 처리 하 는 코드 는 기본적으로 Presenter 에 있 습 니 다.Presenter 는 한 밴드 의 지휘자 처럼 전체 애플 리 케 이 션 을 표현 하고 조율 하 며 다른 대상 을 만 들 고 조율 한다.
MVP 와 MVC 는 중대 한 차이 가 있다. MVP 에서 View 는 Model 을 직접 사용 하지 않 는 다. 그들 간 의 통신 은 Presenter (MVC 중의 Controller) 를 통 해 이 루어 진다. 모든 상호작용 은 Presenter 내부 에서 발생 하고 MVC 에서 View 는 Controller 가 아 닌 직접 Model 에서 데 이 터 를 읽는다.
MVP 모드 를 왜 사용 하 는 지
안 드 로 이 드 에서 Activity 인터페이스 와 데이터 획득 층 을 심각하게 결합 시 켰 기 때문이다.이 로 인해 Activity 의 유형 이 점점 커지 고 데이터 획득 층 을 수정 하면 전체 View 를 다시 써 야 할 수도 있다.모듈 과 자동화 테스트 에 도 매우 불리 하 다.
MVP 는 View 를 데이터 에 독립 시 켜 대량의 논 리 를 Activity 에서 추출 했다.응용 층 을 나 누 면 각 층 이 독립 적 으로 테스트 하고 변동 할 수 있다.
MVP 모드 는 어떻게 작 동 합 니까?MVP 모델 중의 캐릭터 구분 은 표준적 인 구분 방법 이 없다.대체적인 정 의 는 다음 과 같다.
  • 표시 기 (Presenter) 표시 기 는 지휘 기 라 고도 할 수 있 으 며, View 와 Model 사이 에 있 으 며, Model 에서 데 이 터 를 가 져 와 View 에 되 돌려 주 는 것 을 책임 진다.동시에 보기 의 상호작용 처 리 를 결정 합 니 다.
  • 보기 (View) 보 기 는 이해 하기 쉬 우 며, Android 에 서 는 일반적으로 Activity, Fragment 또는 View 에 대응 합 니 다.보기 의 상호작용 은 알림 표시 기 가 필요 하기 때문에 무엇 을 할 지 결정 합 니 다.그래서 View 에는 보통 Presenter 의 인용 이 포함 되 어 있 습 니 다.이상 적 인 상황 에서 Presenter 는 일반적으로 주입 에 의존 하 는 방식 으로 이 루어 진다.
  • 모델 (Model) 모델 은 응용 프로그램의 데이터 처리 와 업무 논리 부분 이다.

  • MVP 처리 절 차 는 다음 그림 과 같다. 그림% 1 개의 캡 션 을 편 집 했 습 니 다.http://www.360doc.com/content/10/0225/18/86732016805936.shtml_
    사용자 의 요청 은 먼저 View 에 도착 하고 View 는 특정한 Presenter 에 요청 을 전달 하 며 Presenter 는 Model 에서 데 이 터 를 얻 은 후에 처리 결 과 를 인터페이스 로 View 에 전달 합 니 다.
    본 고 를 다 쓴 후에 실제 실천 사례 가 없 는 것 을 발견 하면 독 자 는 글 중의 참고 문장 을 깊이 읽 을 수 있 고 그 안에 관련 사례 가 있다.나 는 뒤에 있 는 블 로그 에 MVP 모드 를 사용 하 는 과정 을 계속 기록 할 것 이다.

    좋은 웹페이지 즐겨찾기