2016-07-01 4 views
-1

Я только начал использовать MVP в разработке Android. Согласно различным учебникам, найденным в Интернете, я создаю 5 (viewInterface, presenterInterface, presenterImpl, interector и interectorImpl) файлов для каждого фрагмента. Есть ли способ, с помощью которого я могу уменьшить количество этих файлов.Оптимизация MVP для Android

Благодаря

+0

Перед тем, как начать использовать примеры из Интернета, вы должны подумайте о своем программном обеспечении для вашего приложения. Вы уверены, что вам нужны эти «5 файлов» ?! Возьмите бумагу и ручку, сделайте некоторые диаграммы или что угодно. То, что я пытаюсь сказать, заключается в том, что перед тем, как вы берете и используете материал из Интернета, вы должны знать, для чего именно искать и какую часть этого делать. –

ответ

0

Как вы узнали основы Clean Architechure. В следующем примере показано, как реализуется ваш шаблон MVP.

Пример:

interface BaseContract { 
     interface BaseView { 
      //Methods for View 
      void onDoSomething(); 
     } 

     interface BasePresenter { 
      void doSomething(); 

     } 
    } 

    class BaseMainPresenter implements BaseContract.BasePresenter { 
     BaseContract.BaseView view; 

     BaseMainPresenter(BaseContract.BaseView view) { 
      this.view = view; 
     } 

     @Override 
     public void doSomething() { 
      if (view != null) 
       view.onDoSomething(); 
     } 
    } 

    class DemoClass implements BaseContract.BaseView { 

     //Create object of Presenter 

     /**** 
     * Example : 
     * BaseMainPresenter baseMainPresenter = new BaseMainPresenter(this); 
     */ 
     @Override 
     public void onDoSomething() { 
      //Deal with Context here. 
     } 
    } 

Вы можете обратиться в MVP шаблон с этой следующей ссылке: -

0

Yeah- не делать то, что вы делаете. MVP - хороший образец для некоторых случаев, но никогда не бывает причин для более чем трех классов - модели, представления и ведущего. Любой учебник, который идет на эту глубину, становится формальным и на самом деле является вредным учебником.

Android в основном MVP по умолчанию. Ваш ведущий - ваш класс активности. Ваш вид - это ваш макет - эта иерархия классов View. Ваша модель - это любые данные, необходимые для запуска вашего приложения.

Не подвешивайте чрезмерно формальные объяснения шаблонов и не применяйте шаблоны для применения шаблона. Реальное использование шаблонов не является целью сделать ваше приложение таким, что реальное использование шаблона - это способ описать, что вы делаете с другими архитекторами/программистами. Вы никогда не должны смотреть на образец и пытаться найти способы его использовать или посмотреть на проблему и подумать «какие шаблоны я могу использовать». Вы должны увидеть проблему, подумать о решении, и это может быть шаблон. К тому времени, когда вы будете готовы изучать шаблоны, вы должны были увидеть подавляющее большинство из них в коде.

+0

Я бы не сказал, что Android - это MVP: это больше похоже на MP + V, где M и P связаны чрезвычайно жестко. Чистый MVP Presenter может легко стать независимым от платформы посредником. –

 Смежные вопросы

  • Нет связанных вопросов^_^