O Design Pattern que virou Vilão! Singleton na Prática + Alternativa Clean Code // Mão no Código #43

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 ธ.ค. 2024

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

  • @vlademiro
    @vlademiro 3 ปีที่แล้ว +8

    Muito bom.
    Implementação exemplo em 00:02:18.
    Críticas em 00:07:35.
    Monostate em 00:08:50
    Singleton : "A ideia por trás do singleton é que a própria classe carregue a sua instância".

    • @fabianolandim
      @fabianolandim ปีที่แล้ว

      😅😊😊😅😊😅😊w😮😊😊😅😅😅😊😊😊 h

  • @Nicolasmelo12
    @Nicolasmelo12 4 ปีที่แล้ว +31

    Video excelente mais uma vez, sério, super parabéns pelo conteúdo, massa demais!!!
    Pra quem ta começando agora ou até mesmo pra quem ja programa a algum tempo eu diria uma coisa:
    Não precisa estudar todos os Design Patterns existentes e sair aplicando por ai em todo projeto que vcs veem, estudem antes de mais nada sobre lógica, programem bastante, façam projetos, evitem usar libs (especialmente quando vc ta começando, entra no código fonte, tem mt lib que é literalmente um arquivo só, tem mt lib que nem precisaria ser usada) , ai vc eventualmente vai dar de cara com um caso de uso que vc precisa implementar um design pattern. Vcs vão saber quando vcs vão ter que implementar um Design Pattern específico naquele contexto que vcs estão trabalhando. E sinceramente também nem liguem tanto pro Clean Code assim, sei que todo mundo fala dele, mas esqueçam a existência dele pra quando de fato vcs precisarem dele.
    Tem um video do Programador BR que ele literalmente diz "F###-se o clean code" e é justamente isso. Antes de aprender algo pq alguém disse que tem que ser feito assim, foquem em desenvolver a lógica e especialmente o senso crítico em cima das coisas, aprendam a quando dizer NÃO pra algo. Tem vários momentos que aplicar o Clean Code não faz o menor sentido.
    Posso dar um exemplo pessoal: Eu tava no meu projeto implementando um websocket (utilizando a API de WebSockets do Browser e não libs como o socket.io) percebi que enquanto eu desenvolvia quando eu tinha duas conexões abertas no browser com o mesmo websocket a conexão antiga se perdia e só se mantinha a última. Além disso tinha outro problema, quando eu fazia um fast refresh ou do server ou do front a conexão se perdia e eu precisava me reconectar novamente automaticamente. Fui atras de como resolver isso na internet e então dei de cara com o Singleton. Com ele eu consigo manter só uma instância do meu websocket ativa no browser e também fica fácil de me reconectar quando eu perco a conexão ou com o back ou com o front. Para aquele caso de uso o Singleton era a melhor opção. E era a melhor opção pq eu sabia que de fato teria que usar ele pra resolver meu problema.
    Então voltando, meu processo foi: Encontrei um problema no meu código e preciso resolve-lo ---> Encontro um design pattern capaz de resolver meu problema ---> uso o Design Pattern para resolver o problema.
    Vejo muito dev fazendo esse caminho: Não existe um problema ainda e usei um design pattern pq aprendi que é importante usar ---> uso um design pattern para resolver um problema que nem existe e talvez nunca exista
    TL:DR: Aprendam lógica antes de aprender Design Patterns, Clean Code e qualquer coisa e USEM QUANDO VCS DE FATO PRECISEM. Vcs precisam ter um problema antes de sair implementado algo que foi criado justamente pra resolver um problema

    • @codigofontetv
      @codigofontetv  4 ปีที่แล้ว +3

      Muito obrigado pelo seu comentário Nicolas!

    • @rockduds
      @rockduds 3 ปีที่แล้ว

      Enriquecedor. Valeu!

    • @nickk1994
      @nickk1994 2 ปีที่แล้ว

      Concordo plenamente xará, só complemento sugerindo o uso em projetos de testes pelo fato de que se for precisar usar e/ou trabalhar em uma empresa /projeto que necessite é bom ter pelo menos o básico para não ficar muito perdido.

    • @williamsobrinho771
      @williamsobrinho771 ปีที่แล้ว +1

      Nicolasmelo12 eu vi esse vídeo do "f###-se o clean code" mas a pouco tempo atrás , tive minha primeira entrevista para Dev Mobile Jr e a coisa que me "reprovou" foi não ter tido contado com Cean Code e SOLID.
      Entrevista pra Jr e os recruiter/empresas estão exigindo clean code mano. é foda, mas infelizmente quem que entrar numa vaga precisa dançar conforme a música.
      .
      A regua pra entrar no mercado parece estár ficando cada vez mais alta.

  • @fernandobessa6834
    @fernandobessa6834 4 ปีที่แล้ว +8

    Foi citado (8:18) que um dos problemas de usar o Singleton é que uma chamada a um método da classe pode alterar um estado da classe e um outro lugar que esteja consumindo esses dados pode ter problemas, por não detectar ou não tratar essa alteração. O MonoState também não teria esse problema, uma vez que mesmo sendo instâncias diferentes elas compartilham o mesmo estado?

    • @emerson0001
      @emerson0001 ปีที่แล้ว +2

      Eu levantei esse mesmo questionamento. Creio que essa restrição de "estado compartilhado" ainda seja verdadeira. O monorepo soluciona o princípio de responsabilidade única e faz o código mais "limpo". Porém de fato não vi solução para o estado compartilhado.

  • @ProfessorEdsonMaia
    @ProfessorEdsonMaia 3 ปีที่แล้ว +4

    Eu assinei a Hostgator faz algum tempo, por causa da publicidade em um vídeo de vcs.

    • @TechCutts
      @TechCutts 18 วันที่ผ่านมา

      Melhor professor de Js

  • @JeanPaulLopes
    @JeanPaulLopes 4 ปีที่แล้ว +4

    Para mim os dois padrões implementam a mesma funcionalidade com abordagens diferentes, pois os dois se utilizam de atributos estáticos para suas implementações. Os mesmo problemas de notificação de mudanças de estado dos atributos existentes no Singleton se apresentam no MonoState.

    • @AlexnaldoSantos
      @AlexnaldoSantos 3 ปีที่แล้ว

      Exato! 6 por meia dúzia!

    • @manoellopes211
      @manoellopes211 ปีที่แล้ว

      Concordo, em ambos os patterns você trabalha com algo muito próximo de variáveis globais, na prática eu procuro evitar ambos e utilizar Dependency Injection, mas quando não é possível, o principal ponto que pra mim pesa mais contra o Silgeton e a favor do Monostate é a utilização de interfaces, facilita bastante os testes. Porém em ambos eu utilizaria propriedades readonly, sem setters, ou com setters utilizando regras bem restritas, algo nessa linha, buscando ao menos minimizar os possíveis problemas.

  • @marcosboaventura1977
    @marcosboaventura1977 4 ปีที่แล้ว +4

    Muito bom! Eu particularmente não conhecia o Monostate e já utilizei singletons algumas vezes, principalmente quando precisava implementar algum tipo de "Service". Achei a abordagem do monostate tão simples quando a do singleton, porém, nos permite usar melhor o poder da OO.
    Como sugestão de design pattern acho que vale a pena mencionar o DELEGATE.
    Parabéns e muito obrigado pelo vídeo. ❤👨‍💻

  • @inTerActionVRI
    @inTerActionVRI ปีที่แล้ว

    Eu passei por uma fase de paixão por laços de repetição, mas como paixão é doença eu comecei a trabalhar com chamada de funções e classes como vocês fazem e vi o código ter saltos de performance. Minha paixão por laços tem relação com a checagem de dados de saída de comandos sem escrever arquivos de saída. Ainda quero conseguir fazer isso sem for. Mas creio que se performance fir exigida será necessário fazer arquivos temporários. E também estou vendo que limpar arquivos temporários de modo inconsequente também traz dir de cabeça. O certo é remover somente o que o código cria, mesmo que estenda um pouco o código isso é eficiente, eficaz e deixa de causar problemas em aplicações que rodam em paralelo.
    Essa observação é valida apenas no uso da pasta temporária do sistema ou com o uso de processos assíncronos da aplicação.
    Só digo que essa nova fase está complicada de aprender, mas é graças a vocês que passei a ver a importância de se saber utilizar as chamadas de classes e funções.
    Um grande abraço!

  • @wallaceandrade5230
    @wallaceandrade5230 4 ปีที่แล้ว +10

    Eu já conhecia os dois, porém não precisei implementar nenhum deles ainda. Ultimamente tenho até usado o singleton, mas através da injeção de dependência (o contêiner injeta sempre a mesma instância quando preciso dela)

  • @franciscos.f9474
    @franciscos.f9474 3 หลายเดือนก่อน

    Perfeita explicação!!!!

  • @hopfer66
    @hopfer66 4 ปีที่แล้ว +2

    Uso o singleton para criar "managers" dentro da aplicação e ele tem funcionado muito bem para isso. Não conhecia o mono state. Vou implementar para ver se é aplicável a minha solução. Minha dúvida fica com a alocação de memória e recursos, o mono state não usaria mais? Obrigado pelo tutorial!

  • @robertochostakovis
    @robertochostakovis 4 ปีที่แล้ว +10

    Vídeo bem legal, trabalho em um projeto bem grande em Java que usaram singleton, eu não usaria mas tudo bem! Só faltou um detalhe, proteger a getInstance() contra multiplas execuções simultâneas, resultando em instâncias perdidas. Em Java usamos Synchronized na declaração da função.

  • @flaviovissoto
    @flaviovissoto 4 ปีที่แล้ว +1

    Caraca, eu já tinha pensado nisso, eu implementei isso a muito tempo mas não sabia que isso era um Design Patterns.
    Que legal...

  • @RicardoSantos-wl1bg
    @RicardoSantos-wl1bg 4 ปีที่แล้ว +1

    Eu conhecia apenas o singleton, a partir de agora vou aposenta-lo. Muito obrigado!

  • @filomenag.pacoalpascoal4552
    @filomenag.pacoalpascoal4552 4 ปีที่แล้ว

    Muito legal o video. Eu não conhecia o Monostate, e já usei o Singleton para solucionar alguns problemas e deu super certo.

  • @felipexcavalcante
    @felipexcavalcante 4 ปีที่แล้ว +2

    Já usei muito o Singleton, mas só o usava com atributos somente leitura, que carregados basicamente na inicialização do sistema: dados da conexão com o banco de dados, dados da conexão com um outro servidor de algum outro serviço e outros do tipo. E usando dessa forma ainda vejo problema.

    • @deadrat2003
      @deadrat2003 4 ปีที่แล้ว

      Tipo os dados serem acessados ao mesmo tempo?

  • @marcotuliomoreiracortescar5695
    @marcotuliomoreiracortescar5695 4 ปีที่แล้ว

    Utilizo muito singleton, e agora pretendo migrar para o monostate. Não o conhecia. Muito obrigado pelo vídeo.

    • @Unknown-868
      @Unknown-868 4 ปีที่แล้ว

      Monostate também é um anti-padrão.

  • @cesarberci2830
    @cesarberci2830 4 ปีที่แล้ว +2

    Penso que o Singleton não seja um antipatern, mas carece de muito cuidado em sua aplicação. Particularmente costumo usar, principalmente em sistemas embarcados e depois de um tempo desenvolvi certa prática para identificar as situações onde ele se aplica.

  • @rockduds
    @rockduds 3 ปีที่แล้ว +1

    Vocês são demais, parabéns!

  • @luizfernandonoschang8298
    @luizfernandonoschang8298 4 ปีที่แล้ว +4

    Interessante. Mas como isso resolve o problema da geração de bugs?
    O fato de ter um atributo compartilhado entre todas as instâncias ainda permite que um determinado trecho de código faça alterações nós dados de forma transparente e que podem impactar em outros locais

    • @Unknown-868
      @Unknown-868 4 ปีที่แล้ว +1

      Piora o fato de que isso não é thread-safe :)

  • @seninha208
    @seninha208 4 ปีที่แล้ว +1

    Seria legal vídeos explicando, para quais exemplos de projetos ou trechos de código, utilizar os padrões, eu fico muito perdido nisso ainda, acredito que muitos devs Jr também. Há e muito obrigado pela dedicação em trazer conteúdo de qualidade 😃

  • @gillall4828
    @gillall4828 3 ปีที่แล้ว

    Monostate assim viola o D (Dependency Inversion principle) do SOLID, já que ta fazendo instanciação do objeto dentro da classe.
    Da pra resolver com uma interface "state" e receber/injetar o objeto que implementa state via construtor.
    Vale lembra que SOLID é uma recomendação, não uma regra. Se singleton funciona pra vc, use.

  • @athenasarantopoulos
    @athenasarantopoulos 3 ปีที่แล้ว +1

    Ameei

  • @geversoncarvalho711
    @geversoncarvalho711 4 ปีที่แล้ว +1

    Acredito que o maior problema do Singleton é o quando vc esconde dependências dentro dele. O que impossibilita que vc altere internamente alguma dependência sem modificar código ou que descubra (em alguns casos como c++/dll) o que vc precisa que exista para que internamente ele funcione. Acho que a maioria desses problemas podem ser resolvidos quando vc usa singleton através de um controle como injeção de dependências... que controla a quantidade de instâncias sem necessidade de variáveis estáticas.

  • @blackcitadel37
    @blackcitadel37 4 ปีที่แล้ว +1

    Queria que vcs falassem do Strategy ou do Command, se puder.

  • @AlissonFZ6Tenere250cc
    @AlissonFZ6Tenere250cc 3 ปีที่แล้ว +1

    tem playlist de design patterns?

  • @matheushonorato4740
    @matheushonorato4740 ปีที่แล้ว

    como ficaria o monostate se ficasse responsável por gerenciar conexão com o banco?

  • @mateus_andriola
    @mateus_andriola 4 ปีที่แล้ว

    Eu vendo o vídeo fiquei 'nossa, muito interessante, assim da não ter novas instancias e compartilhar as informações criadas em um lugar', depois que vocês falaram do monostate eu fiquei 'Obvio! Tinha aprendido em C# que tem os objetos staticos que já são por padrão compartilhados entre as instâncias'

  • @franciscobarbosaiprogramac5186
    @franciscobarbosaiprogramac5186 4 ปีที่แล้ว +3

    Bastante interessante esses design patterns!
    Video top! 👌

  • @ricardod5989
    @ricardod5989 4 ปีที่แล้ว +1

    Video excelente

  • @brunofernandes9858
    @brunofernandes9858 4 ปีที่แล้ว +1

    Falem sobre repository no laravel por exemplo, pois estudando a um tempo atrás é um assunto polemico entre os devs.

  • @arlandantas
    @arlandantas 4 ปีที่แล้ว

    Não conhecia o singlestate...
    Muito obrigado e parabéns pelo trabalho a toda equipe!

  • @raphaelmathias9225
    @raphaelmathias9225 4 ปีที่แล้ว

    Eu somente não compreendi no que o Monostate pode resolver o problema de uma mesma instancia ser executada em diferentes pontos da aplicação gerando bugs. Realmente não será mais uma instancia, porém várias, contudo os atributos ainda são estáticos, ou seja, o mesmo problema de acesso simultâneo em diferentes pontos da aplicação não permaneceria ?

  • @robertominelli3753
    @robertominelli3753 4 ปีที่แล้ว +9

    Acho que o Singleton quebra o Open-Closed Principle e não o SRP. Para uma classe ser "open", deve ser possível herdar dela e Herança é um relacionamento "is-a". Se você herdar de uma classe de singleton, as instâncias da classe filha também são instâncias da classe pai devido ao relacionamento "is-a ", o que significa que você pode repentinamente ter várias instâncias da classe de singleton.
    Se a classe singleton inibir a herança, ela não estará mais "open" e se uma classe singleton permite herança e está "open" para extensão, ela não pode mais impor o padrão singleton.

    • @cesartalves
      @cesartalves 4 ปีที่แล้ว +3

      O singleton, além de fazer a sua função, também cuida do seu ciclo de vida (criação e acesso), logo ele faz duas coisas, quebrando o SRP.

  • @dandantin
    @dandantin 4 ปีที่แล้ว

    Excelente Vídeo pessoal. Parabéns casal Código fonte.

  • @claudiodevelopment9527
    @claudiodevelopment9527 4 ปีที่แล้ว +2

    Qual alternativa em java?

  • @gabrielcancio1443
    @gabrielcancio1443 3 ปีที่แล้ว

    Já que a classe tem duas responsabilidades, por que não separar elas em duas classes distintas? Um com todas as "regras de negócio" da classe e outra somente para centralizar a instanciação ?

  • @viniciusmaia2795
    @viniciusmaia2795 4 ปีที่แล้ว +1

    Muito legal!!!
    Parabéns!!

  • @marcokoyama
    @marcokoyama 10 หลายเดือนก่อน +1

    essa animação de "foguinho" durante a escrita do código é pacabá hein KKK

  • @joaoviegas9675
    @joaoviegas9675 4 ปีที่แล้ว

    implementação bem parecida de verdaxi meismo vei! Muito bom ! Vou tirar 20 na programação 3

  • @alba5052
    @alba5052 4 ปีที่แล้ว +3

    seria legal um vídeo de Service Locator vs Injeção de Dependência

    • @Unknown-868
      @Unknown-868 4 ปีที่แล้ว

      Já que tocou no assunto, Service Locator seria uma opção mais interessante ao Monostate e Singleton, embora ele também seja considerado um antipattern.

  • @haroldbarros
    @haroldbarros 4 ปีที่แล้ว +2

    Muito bom, e nao conhecia o monostate

  • @itanuromero
    @itanuromero 4 ปีที่แล้ว +1

    Oba! Tava com saudades já! Hahaha

  • @inTerActionVRI
    @inTerActionVRI ปีที่แล้ว

    Sobre Anti-Pattern: Penso que é igual a quando a gente fala sobre algo que é tratado como excessão à regra. Para ser uma excessão isso tem que ter se tornado uma regra então uma atualização de documentação é essencialmente necessária. Ou seja, se tem uso é um pattern assim como qualquer outro com suas devidas aplicações e restrições. Só isso. Ou se for colocar que é anti-pattern que seja sempre especificado em relação a qual pattern. Nesse caso um pattern é anti-pattern do outro. Não?

  • @gabrielromao732
    @gabrielromao732 4 ปีที่แล้ว

    Vocês podem fazer qual a tecnologia por trás do jogo Gartic?

  • @dieghomoraes618
    @dieghomoraes618 4 ปีที่แล้ว +1

    E possível atuar na área sem ter faculdade?
    Eu sempre tive interesse na área, e estou aproveitando a crise para estudar por conta, mas fico com medo de tudo isso ser inútil.

    • @maxbugatti
      @maxbugatti 4 ปีที่แล้ว

      Sim e possível, inclusive conheço muitos que não possuem e atuam em diferentes níveis de cargo de júnior a especialista sem ter fáculdade. Meu comentário nãos desmerece o esforço de quem fez ou está fazendo, no entanto, o que conta é o conhecimento e isso cursos , e dedicação lhe garantem.
      Então estude muito e vai pra cima, cansei de ver gente formada em entrevista que não passa por não conseguir fazer a prova e pessoas sem faculdade passando e dando exemplo não se apega.
      Se puder faça faculdade, mas consegue fazer carreira sem ela também.

  • @PauloHenrique182
    @PauloHenrique182 4 ปีที่แล้ว

    Porque no video (apresentacao) a vanessa fica do lado direto e quando vai codificar fica do lado esquerdo ?

  • @navitecdesenvolvedordesist1581
    @navitecdesenvolvedordesist1581 4 ปีที่แล้ว +1

    Vc são top

  • @maiconjobim6431
    @maiconjobim6431 4 ปีที่แล้ว

    Muito bom, mostra o Repository na próxima

  • @ryanphpjs2
    @ryanphpjs2 3 ปีที่แล้ว +2

    Usava o monostate e nem sabia, kkk

  • @ConstantineYue
    @ConstantineYue 3 ปีที่แล้ว

    Duvida: Pelo fato do Monostate ter um GetMembers() e SetMembers(), não fere a responsabilidade única do Solid?

  • @LuizAbbott
    @LuizAbbott 4 ปีที่แล้ว

    Acredito que a melhor forma de utilizar o singleton seja com injeção de dependência, assim temos apenas uma instância que será injetada em seus modulos...

  • @med.brunofreire
    @med.brunofreire 4 ปีที่แล้ว +4

    Sempre usei o Monostate sem mesmo saber o que era kkkk! Acho desnecessário o Sigleton, sem sentido, já que você pode definir propriedades estáticas nas classes. Em um projeto grande, a alteração de uma “variável global” sem tratamento pode ser uma tremenda dor de cabeça, até mesmo se tornando uma missão impossível o debug. Por isso, melhor seguir o SOLID!
    Outra coisa que de fato tem muito peso na escolha do Design Pattern, é que a linguagem de programação, ela interfere muito nisso. Por exemplo, no .NET, é quase que intuitivo usar o Monostate, e pra mim, no PHP, pela falta de algumas funcionalidades em relação ao .NET, pode parecer, a primeira vista, mais fácil usar Singleton.

    • @TalesMarinho
      @TalesMarinho 4 ปีที่แล้ว +1

      Eu gosto que minhas fábricas sejam singletons.

    • @TalesMarinho
      @TalesMarinho 4 ปีที่แล้ว

      Ou melhor, deixo o construtor privado. Não é necessariamente a singleton pq não tem uma instância mas na minha visão é um singleton hehe. Na memória é quase a mesma coisa e o uso TB, mas em o chato getInstance()

    • @codigofontetv
      @codigofontetv  4 ปีที่แล้ว +1

      Excelente seu comentário!

  • @tgmspawn
    @tgmspawn 4 ปีที่แล้ว +4

    Que idade você tinha quando descobriu que chamava mono state de singleton?
    Eu: 34

  • @itec3247
    @itec3247 4 ปีที่แล้ว +2

    Segundo a comentar kkkkk
    Amo o vosso canal, amei o video!(no momento ainda nem vi(kkkkkkkkkk))

  • @ReinaldoRock
    @ReinaldoRock 4 ปีที่แล้ว

    Fogo do inferno este aí do VsCode.

  • @willianzuqui8005
    @willianzuqui8005 4 ปีที่แล้ว +4

    Boa noite Código Fonte TV, não concordo em dizerr que o Singleton é vilão ou fere o SOLID.
    o Angular e C# implementam muito bem o singleton com IoC e continua sendo muito usado.
    o time da Angular inclusive recentemente criou a propriedade provideIn pra isso, e o time do .netcore usa o ServiceCollection com o AddSingleton em seu container.

  • @caiorocha9050
    @caiorocha9050 4 ปีที่แล้ว +6

    wtf sai fogo quando o cara digita kkkkkkkkk

    • @caiorocha9050
      @caiorocha9050 4 ปีที่แล้ว +10

      @Akira Gustavo Minami Programação Orientada ao Ódio

    • @avessokkjj
      @avessokkjj 4 ปีที่แล้ว +3

      é pq o código acabou de sair do forno(badunts piada ruim)

    • @avessokkjj
      @avessokkjj 4 ปีที่แล้ว +1

      @Akira Gustavo Minami oi akira

    • @system_gang6995
      @system_gang6995 4 ปีที่แล้ว +3

      Pra sair fogo enquanto você digita:
      Baixe o VS Code
      Baixe a extenssão Power Mode
      No VS Code, aperte Ctrl + shift + p
      Escreva Json, aperte Enter
      E cole essa linha → "powermode.presets": "flames".
      Salve e aproveite!

    • @caiorocha9050
      @caiorocha9050 4 ปีที่แล้ว +1

      @@system_gang6995 Eca, sai com essa moda pra lá, irmão! Aqui é RAIZ!! kkk

  • @dimitrisantiago3359
    @dimitrisantiago3359 4 ปีที่แล้ว

    Estais hoje, mais linda! 😘

  • @Imakko92
    @Imakko92 4 ปีที่แล้ว

    Minha visão é que esse monoState é apenas caracteristica da orientação de objetos, tratar como design pattern parece over demais...

  • @joaomarcossantosdeoliveira993
    @joaomarcossantosdeoliveira993 4 ปีที่แล้ว

    Primeiro uhu

  • @RodrigoAlmeidaVilar
    @RodrigoAlmeidaVilar 4 ปีที่แล้ว

    Parabéns pelo vídeo!
    Não conhecia o Monostate e vou começar a citá-lo nas minhas aulas.
    Também sou crítico do Singleton, mas por outros motivos, e até comentei isso nos meus vídeos sobre esse padrão: th-cam.com/play/PL3EuFy3x9CgCTaIxg6vbtN6VxrCsYFdWr.html
    Abraços e continuem disponibilizando material relevante!

    • @Unknown-868
      @Unknown-868 4 ปีที่แล้ว

      Sinceramente, acredito que se você precisa recorrer ao Singleton ou Monostate é porque tem algo de errado no seu design.
      Ps: Monostate também é considerado um antipattern.

  • @felipelopes3171
    @felipelopes3171 2 ปีที่แล้ว

    Singleton e monostate são apenas variáveis globais glorificadas.

  • @BillRocha
    @BillRocha 4 ปีที่แล้ว +1

    SOLID => quem precisa de cabrestos?!

  • @thalyssonleite1479
    @thalyssonleite1479 3 ปีที่แล้ว

    Qual o problema de vocês em usar o pobre Javascript... eu não entendo quando usam php :sadnoises:

  • @tennokoi
    @tennokoi ปีที่แล้ว

    Pra games infelizmente é um pattern que simplifica muito.

  • @caquintella
    @caquintella 3 ปีที่แล้ว

    Da proxima vez aumente a fonte no editor