Article image

JS

Julia Santana11/04/2024 00:44
Share

Arquitetura MVVM

    𝐕𝐨𝐜𝐞̂ 𝐣𝐚́ 𝐨𝐮𝐯𝐢𝐮 𝐟𝐚𝐥𝐚𝐫 𝐬𝐨𝐛𝐫𝐞 𝐚 𝐀𝐫𝐪𝐮𝐢𝐭𝐞𝐭𝐮𝐫𝐚 𝐌𝐕𝐕𝐌?

    MVVM, ou Model-View-ViewModel, é um padrão de arquitetura de software que separa a lógica de apresentação, da lógica e das regras de validação do aplicativo, utilizada em apps .NET, especialmente em plataformas como WPF (Windows Presentation Foundation), Xamarin e .NET MAUI (Multi-platform App UI). 

    𝐁𝐚𝐬𝐢𝐜𝐚𝐦𝐞𝐧𝐭𝐞:

    𝙈𝙤𝙙𝙚𝙡: Representa os dados, a lógica e as regras de validação do aplicativo. Ele não tem conhecimento sobre a interface do usuário (UI) ou como os dados serão apresentados. Pode incluir classes para acessar bancos de dados, serviços da web ou qualquer outra fonte de dados.

    𝙑𝙞𝙚𝙬: É a camada de interface do usuário que apresenta os dados ao usuário final. Ela é passiva e apenas exibe os dados e interage com o usuário.

    Na arquitetura MVVM, a View é mantida o mais livre possível de lógica do aplicativo.

    𝙑𝙞𝙚𝙬𝙈𝙤𝙙𝙚𝙡:Atua como um intermediário entre o Model e a View. Ele contém a lógica do aplicativo e transformação de dados para serem exibidos na View, expõe os dados da Model à View através de propriedades e comandos. Também manipula as interações do usuário e as "traduz" em ações no Model.

    "𝙖𝙝 𝙅𝙪́𝙡𝙞𝙖, 𝙦𝙪𝙖𝙞𝙨 𝙤𝙨 𝙗𝙚𝙣𝙚𝙛𝙞́𝙘𝙞𝙤𝙨 𝙙𝙖 𝙖𝙧𝙦𝙪𝙞𝙩𝙚𝙩𝙪𝙧𝙖 𝙈𝙑𝙑𝙈 𝙚𝙢 𝙖𝙥𝙡𝙞𝙘𝙖𝙩𝙞𝙫𝙤𝙨 .𝙉𝙀𝙏? "

     Simples, imagine que você está construindo uma casa (sim, uma casa de aplicativos!) No MVVM, você separa as responsabilidades como se estivesse construindo diferentes andares:

    𝙇𝙤́𝙜𝙞𝙘𝙖 𝙙𝙚 𝙖𝙥𝙧𝙚𝙨𝙚𝙣𝙩𝙖𝙘̧𝙖̃𝙤: É como montar uma festa no andar térreo da casa, onde você arruma os móveis para deixar tudo bonito. É o que dá vida à sua interface do usuário.

    𝑳𝒐́𝒈𝒊𝒄𝒂 𝒅𝒆 𝒏𝒆𝒈𝒐́𝒄𝒊𝒐𝒔: É o coração da casa, onde acontecem todas as decisões importantes. Aqui, você lida com processamento de dados, validações e regras de negócios - é como preparar os ingredientes na cozinha para fazer a mágica acontecer.

    𝑰𝒏𝒕𝒆𝒓𝒇𝒂𝒄𝒆 𝒅𝒐 𝒖𝒔𝒖𝒂́𝒓𝒊𝒐: É o andar superior, com uma vista incrível! Aqui, as pessoas veem e interagem com o seu aplicativo - é onde os botões são clicados, as coisas se movem e as informações são exibidas. É a janela para o mundo do seu aplicativo.

    𝙋𝙤𝙧 𝙦𝙪𝙚 𝙖 𝙖𝙧𝙦𝙪𝙞𝙩𝙚𝙩𝙪𝙧𝙖 𝙈𝙑𝙑𝙈 𝙚́ 𝙩𝙖̃𝙤 𝙡𝙚𝙜𝙖𝙡❓

     Porque ela torna a testabilidade uma brisa, permitindo que você verifique cada "andar" separadamente para garantir que tudo esteja funcionando perfeitamente, como inspecionar cada cômodo para garantir que tudo esteja no lugar certo. 

     Além disso, facilita a manutenção, pois você pode fazer alterações sem bagunçar todos os componentes - (é como redecorar uma sala sem afetar o resto da casa.) E o melhor de tudo, promove a reutilização de código, permitindo que você use os ViewModels como designs reutilizáveis em diferentes partes do seu aplicativo, como usar seu design de sala favorito em todas as casas que você constrói.

    me siga no Instagram para mais dicas:

    https://www.instagram.com/p/C5l1h8KRi6O/?igsh=cTJjOGt1bjlkM3l0

    Share
    Comments (1)
    Thiago Teixeira
    Thiago Teixeira - 11/04/2024 09:30

    Back in a day quando eu comecei a ouvir sobre MVVM em Android eu não entendia direito sobre isso, todos os tutoriais eram extremamente complexos utilizando Room, Corroutines Dagger e eu não consegui ver muito bem onde "começava" o MVVM principalmente essa parte da view não ter conhecimento da model. Até fazer um aplicativo usando só o MVVM long story short eu entendi assim:


    View é UI onde o usuário interage


    View-Model é onde tem todos os métodos, tratamento dos dados, chamadas de API's e por último, porém não menos importante, não tem referência da view


    Model é onde chama(expõem) a View-Model utilizando as regras de negócio (if elses)


    Se eu estiver errado por favor não exite em corrigir.