CLEAN ARCHITECTURE + MVVM [PARTE 2] - NA PRÁTICA

Поделиться
HTML-код
  • Опубликовано: 25 окт 2024

Комментарии • 81

  • @CanalDebug
    @CanalDebug  3 года назад +1

    Segue lá no instagram.com/debug.uchoa

    • @moissesfalcao2713
      @moissesfalcao2713 2 года назад

      Um vídeo sobre testes seria muito bom mesmo, ainda não sei quase nada sobre o assunto, mas gostaria de saber oque é teste, oque são testes unitário e automatizado; qual a visão teórica e também como fazer na prática.

    • @moissesfalcao2713
      @moissesfalcao2713 2 года назад

      Um vídeo sobre APIs também seria o máximo!

  • @niltoneverton1823
    @niltoneverton1823 Год назад

    Sensacional, cara. Finalmente entendi como se usa MVVM e Clean juntos no Kotlin

  • @victorhugo7137
    @victorhugo7137 10 месяцев назад

    Cara que vídeo maravilhoso, só tenho a agradecer!!!!❤❤

  • @josedocpt
    @josedocpt 7 месяцев назад

    Explicação clara e eficaz.
    Obrigado

  • @viniciuscoscia
    @viniciuscoscia 3 года назад +17

    Quando eu crescer quero ser foda que nem tu.
    Este vídeo e o anterior são TUDO o que eu buscava sobre Clean Arch, tá perfeito!

    • @CanalDebug
      @CanalDebug  3 года назад +2

      HAHAHHA Valeu Vinicius
      Que bom que curtiu o vídeo

  • @DiogoLScarmagnani
    @DiogoLScarmagnani Год назад

    Obrigado pelo vídeo, deu pra começar entender bem sobre Clean Architecture. Me inscrevi no canal.

  • @nortista-do-sul
    @nortista-do-sul 3 года назад +15

    Depois de algum tempo batendo cabeça com clean architecture finalmente comecei a entender sobre os usecases graças a esse video. Vlw man.

    • @CanalDebug
      @CanalDebug  3 года назад

      Feliz em conseguir ajudar Antoni 😁

  • @diegodeoliveira1304
    @diegodeoliveira1304 Год назад

    Você podia voltar a produzir conteúdo. É sem dúvida nenhuma o melhor canal que eu já vi pra poder entender como as coisas funcionam!

  • @guga_padilha_4919
    @guga_padilha_4919 2 года назад +1

    de longe o melhor conteúdo do youtube sobre clean e mvvm
    seria de grande ajuda um video explicando dependency injection com koin também!
    parabens pelo trabalho, sucesso!

  • @wilkisonmartins7081
    @wilkisonmartins7081 2 года назад +1

    Perfeito o vídeo. Pra quem ja conhece mvvm, isso fica mto claro como mesclar o clean e refatorar o código. Obrigado pelas dicas.

  • @aldemirgomes9722
    @aldemirgomes9722 2 года назад

    Muito bom, parabéns!

  • @aramispaesdeveloper8386
    @aramispaesdeveloper8386 2 года назад

    SENSACIONAL! muito obrigado

  • @DanielLuche
    @DanielLuche 2 года назад

    Simples e fácil de entender.
    Muito bom.

  • @lucianobrandao6217
    @lucianobrandao6217 10 месяцев назад

    Top demais o vídeo. Você podia fazer um similar só que usando só Java né? Hahah. Valeu pelo conteúdo

  • @wallacethierre9419
    @wallacethierre9419 3 года назад

    Parabéns pelo conteúdo, simples, sucinto e preciso. As imagens que vc utilizou facilita muito o entendimento.

  • @rafaeldouglas4149
    @rafaeldouglas4149 3 года назад +2

    Vídeo show de bola, torcendo para ter a parte de testes também! parabéns e muito obrigado

    • @CanalDebug
      @CanalDebug  3 года назад +1

      Valeu Rafael... Vou criar algumas coisas a mais na aplicação e depois faço um vídeo só sobre teste

  • @CarlosHenrique-er7zq
    @CarlosHenrique-er7zq 3 года назад +2

    Sensacional, ótima explicação!

  • @igorfastroni3625
    @igorfastroni3625 3 года назад +1

    Cara, que conteúdo massa. Por favor continue com o canal, muito bom.

    • @CanalDebug
      @CanalDebug  3 года назад

      Muuuuuuito obrigado pelo feedback Igor 😀

  • @carolinamaciel4917
    @carolinamaciel4917 3 года назад

    Seu vídeo me ajudou bastante, parabéns! Ótimo conteúdo!

  • @alaksion
    @alaksion 3 года назад +1

    Conteúdo excelente parabéns

  • @He4dless97
    @He4dless97 3 года назад

    Cara, meus parabéns! Esses 2 vídeos foram simplesmente sensacionais!

    • @CanalDebug
      @CanalDebug  3 года назад

      Valeu demais Matheus 😃

  • @ricardosousa4678
    @ricardosousa4678 3 года назад +1

    Excelente trabalho, cara! Parabéns e obrigado por esclarecer esse assunto de forma tão simples!

  • @LucasYamato
    @LucasYamato 10 месяцев назад

    Muito bom conteúdo, primeira vez que vejo um segundo tipo de mapeamento de domain pra Ui, qual seria o beneficio ?

  • @brunajellinek1686
    @brunajellinek1686 3 года назад +1

    Muito bom!!! Adorei!!!

  • @marcosribeirodesousa8345
    @marcosribeirodesousa8345 2 года назад

    Top de mais!

  • @FilipeMarques
    @FilipeMarques 3 года назад +1

    Muito show! Queria ver mais sobre os testes e a dependency injection

  • @allysonjd
    @allysonjd 3 года назад +2

    Muito bom o material, parabéns! Sobre o modulo de network, gostaria de entender melhor aquelas classes que você usou para tratar o retorno do retrofit com sealed classes e generics.

    • @CanalDebug
      @CanalDebug  3 года назад +2

      É pouco complicado de explicar essa camada de rede por aqui e ela esta sem validações tbm, é apenas um esboço pra fazer uma request... Mas eu vou tentar criar um material para disponibilizar a explicação dela

  • @thiagosouza8931
    @thiagosouza8931 3 года назад +1

    Muito bom!

  • @diegoribeiro5992
    @diegoribeiro5992 3 года назад +2

    Olá. Quero um vídeo de injeção de dependência.

    • @CanalDebug
      @CanalDebug  3 года назад

      Valeu Diego. Estou preparando e logo logo estará no canal 😀

  • @lucascabral100
    @lucascabral100 3 года назад +1

    Belo conteúdo. Aguardando pela aula sobre testes.
    Com clean o projeto fica bem organizado e com fácil manutenção.
    Posso fazer uma pergunta? Você tem quanto tempo de experiência? Eu gostaria de chegar até o final desse ano com um bom conhecimento. haha

    • @CanalDebug
      @CanalDebug  3 года назад +1

      Valeu Lucas.. Vai rolar o vídeo de testes tbm 😀
      Cara, eu mexo com android desde 2014 mais ou menos... E com certeza, até o final do ano, vc consegue!!! 🚀

  • @diegodromer
    @diegodromer 2 года назад +1

    vc tem esse exemplo, mostrando a implementacao entre o observer e a implementacao do viewmodel da recyclerview?

    • @CanalDebug
      @CanalDebug  2 года назад

      Na descrição tem o repo do projeto... Lá tem essa implementação

  • @lotaviods
    @lotaviods 3 года назад

    Como é tratado alguma interação com a view ? É passada essa informação pra viewModel e ela é responsável por modificar a model? To meio perdido ainda nessa parte

  • @gabrielsantana369
    @gabrielsantana369 2 года назад

    A conversão .toUiModel() não deveria ser feita na camada domain? seguindo a mesma lógica da camada de data, a próxima camada não deve conhecer o modelo da camada anterior.

  • @carolquiterio4682
    @carolquiterio4682 3 года назад

    Top demais, ajudou muito :)

  • @cassioferrazzo
    @cassioferrazzo 3 года назад +1

    Conteúdo sensacional, gostaria de ver como que funciona o data binding nesse caso

    • @CanalDebug
      @CanalDebug  3 года назад

      Ai depende muito do jeito que vc está utilizando o data binding. Se tiver lógicas dentro dos XML foge um pouco desse padrão

    • @cassioferrazzo
      @cassioferrazzo 3 года назад

      @@CanalDebug não tem nenhuma "best practice"?

  • @zlucas2k
    @zlucas2k 3 года назад

    Como eu poderia deixar a estrutura do projeto caso meu projeto além de uma parte remota tenha também um banco de dados local (Room)?

  • @numseidizer
    @numseidizer 3 года назад

    Muito bom. Faz um com java e spring boot. não há bons tutoriais com eles

    • @numseidizer
      @numseidizer 3 года назад

      Por favor, obviamente

    • @CanalDebug
      @CanalDebug  3 года назад

      hahahah eu até faria mas minha especialidade é Android 😅.. Ai infelizmente eu vou ficar devendo

  • @kurosakiichigo7606
    @kurosakiichigo7606 3 месяца назад

    não importa quantos videos eu veja sempre continua a mesma coisa, complexo aplicar essa arquitetura, acho que é por que me perdo e não entendo bem como se encaixa esse domain.....ele serve para que ali ? (Compreendo os outros 3, view= tela do usuário, view model observa o data e o domain ?)

  • @aramispaesdeveloper8386
    @aramispaesdeveloper8386 2 года назад

    só não entendi uma parte... na
    ​class​ ​MealViewModel​ vc fez um cast pra categories transformando Mutable em LiveData, mas não usou a variável categories. por q?

  • @viniciuscoscia
    @viniciuscoscia 3 года назад +1

    Aproveitando: Como ficaria a Clean Arch em uma aplicação grande?
    É possível usar algum módulo "data" e "domain" para outros módulos de View? Se sim, como? Através de módulos para cada "data" e "domain"? Separando cada camada em módulos diferntes?
    Se isso for possível, como utilizar esses módulos em outras aplicações? Por exemplo, quero usar o "data" e "domain" de Login de uma aplicação em outra aplicação, trocando apenas a View
    Grato!

    • @CanalDebug
      @CanalDebug  3 года назад +1

      Seria mais ou menos assim...
      Em uma aplicação grande vc faria a modularização por feature, então dentro de cada feature vc teria a arquitetura.
      Você pergunta se é possível usar um modulo data e domain em outras views... Daria sim.... imagina uma situação onde vc possui um modulo User, que possui todas as regras de negócios do seu usuário... Voce poderia expor essa camada de domínio do seu módulo user para ser consumido em outros módulos
      A ideia do clean e mvvm é exatamente vc conseguir "desplugar" suas camadas de domínio e usar em outras aplicações... então daria sim
      Eu fiz um vídeo sobre modularização que falo um pouco sobre módulos e pretendo trazer mais um mais pra frente =]
      Depois me segue no instagram tbm que dou bastante dicas e abro bastante caixinhas de perguntas lá 😀

    • @viniciuscoscia
      @viniciuscoscia 3 года назад

      Muito obrigado pela resposta!
      E no caso, como ficaria o versionamento disso, no caso para utilizar em dois projetos diferentes, digamos assim...

  • @henriquepetters
    @henriquepetters 3 года назад +1

    Cara, pergunta tosca, mas o Koin já é usado em produção?

    • @CanalDebug
      @CanalDebug  3 года назад +2

      Cara... Não existe pergunta tosca 😃
      Da pra usar sim, no app q eu trabalho atualmente utilizamos Koin e funciona muito bem
      O que eu gosto do Koin é a simplicidade dele

    • @henriquepetters
      @henriquepetters 3 года назад +1

      @@CanalDebug Ah, e excelente vídeo! Me inscrevi e dei o like. Dale hermano.

  • @MaisUmSomente
    @MaisUmSomente 3 года назад

    Bacana

  • @MrDannNamesake
    @MrDannNamesake 3 года назад

    Lucas, tenho uma dúvida:
    No arquivo "GetCategories.kt", você criou uma interface e a sobrescreveu (override) para chamar o repositório. No MealRepository.kt você segue o mesmo procedimento. Qual o motivo de não ter criado direto a função dentro da classe?
    Meu palpite é que seria para já poder deixar "reservado" uma função daquele nome para outra pessoa ir trabalhando em outra parte do app. Estou certo?

    • @CanalDebug
      @CanalDebug  3 года назад +1

      Eu fiz isso porque o UseCase é terá apenas um método exposto, a UseCase deve ter apenas uma responsabilidade, já no repository eu posso expor vários métodos. Ai por questão de organização, eu prefiro separar os arquivos quando tenho mais métodos expostos mas nada te impede de colocar na mesma classe. É apenas minha preferencia mesmo 😃

    • @MrDannNamesake
      @MrDannNamesake 3 года назад

      @@CanalDebug Acho que vou suprimir só para ficar mais simples, pelo menos nas primeiras vezes. Obrigado pela ajuda!

    • @MrDannNamesake
      @MrDannNamesake 3 года назад

      @@CanalDebug Ahhhh agora eu entendi direitinho heheheeh. Vou fazer igual! :)

    • @CanalDebug
      @CanalDebug  3 года назад

      Hahahah massa cara 😃

  • @nunonuninho10
    @nunonuninho10 3 года назад +1

    Boa tarde 😊, vamos montar um grupo no whats pessoal

    • @CanalDebug
      @CanalDebug  3 года назад

      Boa ideia Bruno... Vou ver de criar e passar pra galera 😁

  • @stephanieverissimo3985
    @stephanieverissimo3985 3 года назад +1

    A teoria foi de boa,mas na prática eu me perco todinha msm c a explicação:(

    • @CanalDebug
      @CanalDebug  3 года назад +1

      Mas não desiste não Stephanie. Me segue lá no Instagram que tiro suas dúvidas se precisar 😃

  • @Zabotrap
    @Zabotrap 3 года назад

    Tem como disponibilizar esse código no git?

    • @CanalDebug
      @CanalDebug  3 года назад +1

      Vou disponibilizar e deixar na descrição do vídeo 😁... No máximo quarta estará no git

    • @Zabotrap
      @Zabotrap 3 года назад

      @@CanalDebug Boaa! Top!

    • @CanalDebug
      @CanalDebug  3 года назад +1

      Depois da uma olhadinha lá
      github.com/LucasUchoaRodrigues/clean-mvvm