Sinopse do Episódio "Diga, não peça (Tell, don’t ask)"
Como seus objetos se relacionam? Conhece o "Tell Don't Ask"? E o "Train Wreck"? O que isso tem a ver com encapsulamento? Aperte o play e confira! Participantes Marcio Frayze David [email protected] https://twitter.com/marciofrayze https://segunda.tech https://masto.donte.com.br/web/accounts/138458 https://linkedin.com/in/marcio-frayze Julianno Martins Silva [email protected] https://twitter.com/juliannoms https://linkedin.com/in/juliannoms Links: Um dos artigos originais onde o termo é criado (Andy Hunt and Dave Thoma), 2003: http://media.pragprog.com/articles/jan_03_enbug.pdf Definição de Tell don't ask, Martin Fowler: https://www.martinfowler.com/bliki/TellDontAsk.html Vídeo (em inglês) com alguns exemplos: https://www.youtube.com/watch?v=ZJ6bH6Df4K8 Texto do Giovanni Bassi: https://www.lambda3.com.br/2009/07/tell-dont-ask-ou-fique-longe-das-minhas-propriedades/ Exemplo TDA: Statement recebe um printer pra impressão do extrato, e não pega o extrato pra imprimir https://github.com/sandromancuso/Bank-kata/blob/master/src/main/java/org/craftedsw/domain/Statement.java Screencast Sandro Mancuso https://www.youtube.com/watch?v=XHnuMjah6ps https://www.youtube.com/watch?v=gs0rqDdz3ko https://www.youtube.com/watch?v=R9OAt9AOrzI http://www.mockobjects.com/2006/10/tell-dont-ask-and-mock-objects.html?m=1 Artigo sobre TDD que cita TDA https://martinfowler.com/articles/mocksArentStubs.html#DesignStyle Link sobre TrainWreck https://wiki.c2.com/?TrainWreck
Ouvir "Diga, não peça (Tell, don’t ask)"
Mais episódios do podcast p de Podcast
- Pattern Matching for instanceof
- Feedback
- Teste A/B (e porquê isso importa)
- Coragem
- Generics mais avançado: Invariância, Covariância, Contravariância e Bivariância
- Generics Básico
- Migrations
- Vazamento de memória
- Diga, não peça (Tell, don’t ask)
- Código como Documentação
- Programação em Par
- Estrangulamento de Software
- Transações Distribuídas
- ACID, BASE e o Teorema CAP
- Software Resiliente
- Monólito Primeiro e Design Simples
- Retrospectiva 2020
- Arquitetura Baseada em Serviços (Service-based Architecture)
- Linguagem onipresente
- Programação Assíncrona
- O resto do REST
- REST: você (provavelmente) está fazendo isso errado
- Refatoração: o que é e como fazer
- SRP x CRUD (Bônus)
- SRP: O Princípio da Responsabilidade Única
- Injeção de dependência e inversão de controle
- Por que usar programação funcional em linguagens OO?
- UX: Por que todo mundo está falando disso?
- Integração Contínua não é (apenas) automatizar a build
- Pare de usar IF/Else
- ORM amar ou odiar?
- Imutabilidade e programação defensiva
- DevOps
- Código limpo
- Frameworks e o seu impacto na arquitetura de software
- TDD: Desenvolvimento Guiado Por Testes
- p de Podcast
- Arquitetura de software no desenvolvimento mobile
- Arquitetura Monolítica versus Microsserviços - parte 3
- Arquitetura Monolítica versus Microsserviços - parte 2
- Arquitetura Monolítica versus Microsserviços - parte 1
- O que é Arquitetura de Software?