De volta aos princípios SOLID com o terceiro princípio do acrônimo: o Princípio de Substituição de Liskov (Liskov Substitution Principle), ou simplesmente LSP. Recomendo que leiam os 2 posts anteriores da série <aqui> e <aqui>, principalmente o post sobre o OCP, que está diretamente relacionado a este. DEFINIÇÃO O Princípio de Substituição de Liskov leva... Continuar Lendo →
Princípios SOLID: Princípio do Aberto/Fechado (OCP)
Voltando à série sobre os princípios SOLID iniciada <aqui>, vamos desta vez com o Open-Closed Principle (Princípio do Aberto/Fechado), ou simplesmente, OCP. O OCP é mais um daqueles princípios de orientação a objetos que nos ajudam a eliminar design smells, possibilitando que nosso código ganhe em facilidade de manutenção e extensão. DEFINIÇÃO "Entidades de software... Continuar Lendo →
Princípios SOLID: Princípio da Responsabilidade Única (SRP)
Neste post darei início a uma série que falará sobre os princípios SOLID, os quais são boas práticas vindas de décadas de experiência em engenharia de software. Estes 5 princípios passaram a ser chamados de SOLID após a popularização dos mesmos por meio do Uncle Bob (os 5 princípios fazem parte do famoso livro "Agile... Continuar Lendo →
Abstrair (mas em pontos estratégicos)
Um erro comum quando nós programadores iniciamos com orientação a objetos é a tentativa de projetar um software 100% "à prova de futuro". Em outras palavras, não é sabido que determinado comportamento irá variar e já criamos interfaces e classes abstratas por toda parte. Normalmente isso ocorre por inexperiência, quando programadores aplicam certos conceitos sem... Continuar Lendo →
Domain-Driven Design na Engenharia de Software Magazine ed. 45
Acaba de sair meu artigo sobre Domain-Driven Design na <<Engenharia de Software, edição 45>>, revista da DevMedia. Infelizmente, a revista é apenas digital e o conteúdo fica disponível online somente para assinantes. Se você ou sua empresa assinam, dê uma conferida (e ajude a divulgar, por favor). Vale muito a pena! obs.: Um aperitivo do... Continuar Lendo →