Estudando o MVC e MVP no Android…Parte I

Estou aqui lendo ainda o livro “50 Android Hacks” e me deparei com o MVP para Android. O tópico que fala sobre esse padrão no livro é realmente de deixar a desejar, por isso fui procurar mais informações sobre o uso do MVP nos fórums e demais meios de comunicação com desenvolvedores Android. Observei bem o modo de trabalhar com MVP no Android e notei uma grande falha que tenho feito no MVC, não que o uso de MVC no Android seja errado, na verdade ver o MVP me fez ver que tenho trabalhado errado com MVC..curioso, han? Ou será que realmente é o MVC que não é nada intuitivo na estrutura padrão das aplicações?

Parei para pensar a maneira que tenho trabalhado com o MVC no Android, usando a Activity como Controller, a View sendo apenas os arquivos XML e criando classes para trabalhar com as subcamadas da camada Model. Passei a não concordar já que acabo trabalhado com reações a interações do usuário e com a organização da própria view em uma única camada. O que quero dizer é que o papel da camada View, que é exibir elementos UI, e o papel da camada Controller, que é reagir a eventos vindos da camada View, sem perceber estou implementando dentro das Activities como se fossem uma única camada, já que os documentos XML não são suficientes ao tomar conta da camada View.

Por exemplo, a exibição e ocultamento de fragments em tempo de execução, além do preenchimento de campos, que deveriam ser papeis da camada View, eu costumo implementar juntamente de chamados de classes da camada model para preencher objetos e salvá-los no banco SQLite, tudo isso dentro de Activities. Sendo assim, a Activity está trabalhando como Controller e View ao mesmo tempo.

O que me pergunto agora é…Eu estou trabalhando errado com o MVC, ou o MVC no Android que não é como na teoria. Percebi a mesma situação em desenvolvimento Java para Softwares Desktop, onde também não há maneiras de se separar a View do Controller, sendo os JFrames, componentes Swing, os responsáveis pelos dois.

Se for assim, me interesso no uso do MVP…explicarei melhor o porque da preferência em um segundo post mais a frente…

Hasta Luego!

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s