SDF App Architecture #2 - Dominio é o mais importante!

แชร์
ฝัง
  • เผยแพร่เมื่อ 9 ม.ค. 2025

ความคิดเห็น • 55

  • @FlutterandoTV
    @FlutterandoTV  2 วันที่ผ่านมา

    Dúvidas? Tem um forum específico para a SDF do App Arch no discord da Flutterando.
    discord.flutterando.com.br

  • @murilonascimento272
    @murilonascimento272 2 วันที่ผ่านมา +2

    Jacob sempre fazendo conteúdo top, da para ver que o cara faz o que ama! Parabéns!

  • @ursochurrasqueira
    @ursochurrasqueira 22 ชั่วโมงที่ผ่านมา

    essa playlist tá sensacional, fera d+

  • @estrariofato1640
    @estrariofato1640 2 วันที่ผ่านมา +1

    Muito bom, excelente vídeo. Está colocando bastante carinho nessa série, Jacob. Está ficando excepcional!

  • @aureliozenor
    @aureliozenor วันที่ผ่านมา +1

    Parabéns pela iniciativa, o video chega em boa hora, tendo em vista a recente publicação do Flutter sobre arquitetura

  • @matheusaugusto4901
    @matheusaugusto4901 19 ชั่วโมงที่ผ่านมา

    Aulão.

  • @kaike_crvg6866
    @kaike_crvg6866 2 วันที่ผ่านมา +2

    Aula muito boa, aguardando as próximas!!!

  • @isackcosta5660
    @isackcosta5660 วันที่ผ่านมา

    Video toop 🎉🎉

  • @ironiafatal1750
    @ironiafatal1750 2 วันที่ผ่านมา

    Aula muito boa, confesso que senti uma dor no coração quando vi a utilização o freezed, porém entendi sua "necessidade". Esperando o próximo vídeo!

  • @gabrielvieira8290
    @gabrielvieira8290 2 วันที่ผ่านมา

    Eu pessoalmente ja estou bem familiarizado com freezed... uso ele nos meus projectos com clean architecture de boa...
    Boa aula Jocob... esperando a continuão...

  • @ernandofreire8895
    @ernandofreire8895 2 วันที่ผ่านมา

    Ótima aula, Jacob! Estou esperando as próximas.

  • @eduzinzas
    @eduzinzas 2 วันที่ผ่านมา

    Ótima aula, se lançar dois desses vídeos por dia eu não reclamaria kkkkkk

    • @FlutterandoTV
      @FlutterandoTV  2 วันที่ผ่านมา

      Se pudesse colocava sim!

    • @toniprado
      @toniprado 2 วันที่ผ่านมา

      @@FlutterandoTV olhada que também estava pensando que nem 'Neflix' tem como assistir tudo em seguida? kkk

  • @leomaiadev
    @leomaiadev 2 วันที่ผ่านมา

    Incrível esse lucid validator

  • @rafaeljb
    @rafaeljb วันที่ผ่านมา +1

    Jacob, você não vê a necessidade de ter um DTO na camada de data pra definir o modelo dos dados/serialização e outro imutável na camada de UI que é o que a tela vai consumir?
    Em projetos gigantes, pra mim acaba sendo essencial ter essa separação sem isso acabamos levando muito da lógica de serialização pra camada de UI sendo que não é de responsabilidade dela

    • @FlutterandoTV
      @FlutterandoTV  วันที่ผ่านมา

      É um bom ponto, mas você precisa ter um bom motivo para essa separação!

  • @thiago_uxui_dev
    @thiago_uxui_dev 2 วันที่ผ่านมา +1

    🚀

  • @toniprado
    @toniprado 2 วันที่ผ่านมา

    Excelente conteúdo! Muito didático e fazendo um belo trabalho de fortalecer a comunidade! Parabéns! ... só fiquei curioso porque você disse que tem gente que não gosta do Freezed, qual o 'mal' de usar o freezed?

    • @FlutterandoTV
      @FlutterandoTV  2 วันที่ผ่านมา +1

      @@toniprado preconceito com o build_runner

  • @rafaelb1619
    @rafaelb1619 วันที่ผ่านมา

    Fala Jacob! Na Clean Arch é uma alternativa colocar os comportamentos (métodos) dentro das entidades de domínio, mas nem no exemplo do app do Flutter e nem no seu exemplo foi utilizada essa abordagem. Estou falando da Rich Domain Model, que parece não ser o recomendado no Flutter, pelo menos foi isso que pareceu. Seria colocado em uma classe de serviço separada ou poderíamos utilizar o Rich Doain Model sem comprometer o recomendado? O que você pensa sobre isso?

    • @FlutterandoTV
      @FlutterandoTV  วันที่ผ่านมา

      Eu acho valido desde que seja usado com cautela. Nem todos da equipe podem entender esses conceitos, oq tornaria o projeto um sonho pra vc mas um pesadelo pra outros

  • @williambernardess
    @williambernardess 2 วันที่ผ่านมา

    Ótima aula 😁 por enquanto estou entendendo kkkkkkkk

  • @eronplay1015
    @eronplay1015 2 วันที่ผ่านมา

    O Remi ficou orgulhoso 👏🏽
    Agora só falta um vídeo do riverpod 😂😅

  • @maurojhs9400
    @maurojhs9400 วันที่ผ่านมา +1

    Uma pergunta do juninho, pq usar Freezed para garantir a imutabilidade, podendo usar a anotação @immutable, a anotação não faria isso?? Ok, temos a vantagem do freezed gerar o copyWith(), alguma outra vantagem?

    • @FlutterandoTV
      @FlutterandoTV  วันที่ผ่านมา

      @@maurojhs9400 o @immutable infelizmente nao obriga, ele causa um warning. Daria pra fazer esse warning ser tratado como erro, mas a ideia do freezed é obrigar logo na construcao da classe direto no seu fluxo.

  • @torrescode01
    @torrescode01 2 วันที่ผ่านมา

    Good❤❤❤

  • @christopher2010100
    @christopher2010100 2 วันที่ผ่านมา

    Jacob, mas no caso do store do mobx ainda assim ele ficaria entre o controller e a Model que no caso tu representou como entidade?

    • @FlutterandoTV
      @FlutterandoTV  2 วันที่ผ่านมา

      Nesse caso, o MobX consumiria o Repository que traria a entidade.

  • @jhoneferreira5408
    @jhoneferreira5408 2 วันที่ผ่านมา

    Muito bom Jacob! Esperando a próxima aula! Como disse em um outro comentário, eu vou ser mais ativo aqui. Então lá vai uma questão: sempre adotei (por conta do Java) o uso de dto imutável. Já aqui no flutter eu vejo muito o uso dele assim, mutável....afinal, por definição, é ou não é mutável? Melhor ainda, existe essa definição ou é dinâmico conforme a necessidade?

    • @FlutterandoTV
      @FlutterandoTV  2 วันที่ผ่านมา +1

      Total dinamismo.

    • @jhoneferreira5408
      @jhoneferreira5408 2 วันที่ผ่านมา

      @@FlutterandoTV show! Imaginei rs

  • @lazaroluismartinsalexandre6044
    @lazaroluismartinsalexandre6044 2 วันที่ผ่านมา

    Nossa! Muito estranho pra mim usar esse padrão nos enfeites. É novo pra mim e achei mó bacana. Sinto que as próximas aulas serão do balacobaco >.

  • @edilsontavares7128
    @edilsontavares7128 วันที่ผ่านมา

    Qual a necessidade de ter um NotLoggedUser , se ele nao possui nada de diferente do user, supondo que vamos usar lá nos testes , podemos considerar um usuário deslogado aquele que nao é loggedUser , o usuário padrão . e pelo que entendi voce disse que o freezed , é para evitar o uso de state patter ( caso eu nao tenha entendido errado ) .

    • @FlutterandoTV
      @FlutterandoTV  23 ชั่วโมงที่ผ่านมา

      As Unions acabam funcionando como State pattern. O NotLoggedUser server apenas para deixar mais descritivo.

  • @PedroHenrique-ot7pz
    @PedroHenrique-ot7pz วันที่ผ่านมา

    desculpe minha ignorância, mas qual a diferança de entity e model?

    • @FlutterandoTV
      @FlutterandoTV  วันที่ผ่านมา +1

      Acredito que não tenha diferença, eu só acredito que Entity é mais declarativo.

  • @VictorOnFlutter
    @VictorOnFlutter วันที่ผ่านมา

    up

  • @leomaiadev
    @leomaiadev 2 วันที่ผ่านมา

    Build runer naaaaaooo pelamordedeua

    • @FlutterandoTV
      @FlutterandoTV  2 วันที่ผ่านมา

      Nem doeu tanto assim

  • @leomaiadev
    @leomaiadev 2 วันที่ผ่านมา

    Num era mais facil criar fromJson e to Json na mao? Mds

    • @FlutterandoTV
      @FlutterandoTV  2 วันที่ผ่านมา +2

      Era, mas como estamos usando o Freezed, já aproveita logo. O que é um peido pra quem ta todo cagado?

  • @brunovercosa7119
    @brunovercosa7119 2 วันที่ผ่านมา

    Nossa, flutter precisa de 6 meses pra fazer um hello world. Pior q isso nem gera nativo, gera um cosplay de ios e material design :(

    • @FlutterandoTV
      @FlutterandoTV  2 วันที่ผ่านมา +2

      O Intuito não é mostrar o funcionamento do Framework, mas melhorar o código Dart. Dê uma olhada no primeiro vídeo.

    • @miguelqueiroga2737
      @miguelqueiroga2737 วันที่ผ่านมา +1

      Comentário de muita má-fé. Arquitetura é arquitetura em qualquer lugar. Por exemplo, conceitos como imutabilidade de entidade/model é discussão de anos, décadas se duvidar, tecnologias já criaram ferramentas para dar apoio a essa ideia. Inclusive, nativo inteligentão, Data Class para Kt e Struct para Swift. E nem me aprofundo em outros conceitos que foram e deve ser explorados na série.
      Eu mesmo não acho que flutter é o melhor no mundo mobile, imagine no resto das áreas dev. Mas, critique o flutter em outro lugar, a discussão aqui é arquitetura.

    • @fagnerlc07
      @fagnerlc07 วันที่ผ่านมา

      Não se pode esperar o mesmo nível de experiência em comentários de estagiários, trainees ou juniores.

    • @brunovercosa7119
      @brunovercosa7119 วันที่ผ่านมา

      @@fagnerlc07 Não, é pq n vejo muita utilidade desse monte de trambolho no mundo real. Criei aplicativos pro estado de minas gerais usados até hj com uma arquitetura muito mais simples e são muitos milhões de usuários e acessos diários. Parece q vcs tem tesão em escrever código pra parecer difícil kkk, acho meio bobo isso, um monte de nomenclatura sem sentido, "Ah tem colocar o entitie no logger e o adapter no tataanana" kkk acho engraçado demais! kkkk. Tenho 14 anos de desenvolvimento nas costas, já entreguei apps pra muitos milhões de usuários e já fui top 7 do brasil em apps de utilidade sozinho, tudo usando conceitos simples, compactos e funcionais, se eu sou junior, vcs então eu nem sei oq são kkk.

    • @miguelqueiroga2737
      @miguelqueiroga2737 วันที่ผ่านมา

      @@brunovercosa7119 O ponto que quis estabelecer ao mencionar o nativo é que o que é explorado no vídeo não está amarrado a nenhuma novidade. Na verdade, está bem longe de ser algo complexo, novo ou distinto do Flutter.
      Todos os conceitos abordados têm anos de discussão. Por exemplo, conceitos como domínio são explorados em DDD desde o início do século. O uso de freezed para imitar a tendência de várias linguagens, como Kotlin com data class, que já adotam modelos imutáveis, é um exemplo disso. Além disso, DTO é algo básico em qualquer curso de front-end e, principalmente, back-end.
      É óbvio que, para montar um app de IMC, não é necessário aplicar esses conceitos. Porém, em aplicativos maiores, alguns podem até considerar isso como o mínimo necessário.
      Quer algo realmente diferente e interessante? Pesquise o caso do Nubank. Eles utilizam componentes renderizados no servidor, uma técnica conhecida no mundo web, mas pouco vista no mobile. Além disso, discutem o uso do ClojureDart, uma forma de usar Flutter com Clojure, uma linguagem funcional que é um dialeto de Lisp, criada na década de 1950.

  • @VictorOnFlutter
    @VictorOnFlutter วันที่ผ่านมา

    up