Boas Práticas de Programação
Princípios SOLID
“Always code as if the guy who ends up
maintaining your code will be a violent
psychopath who knows where you live.”
Martin Golding
Quem é Vinicius Dias?
/CViniciusSDias
/in/vinícius-dias
Zend Certified Engineer
Programador desde os 14 anos
Boas práticas de programação
Boas práticas de programação
Boas práticas de programação
Single Responsibility Principle
Open / Closed Principle
Liskov Substitution Principle
Interface Segregation Principle
Dependency Inversion Principle
“Uma classe só deveria ter um único motivo para
mudar.”
Robert (Uncle Bob) Martin
“Entidades de software (classes, módulos,
funções, etc) devem ser abertas para expansão,
porém, fechadas para modificações.”
Bertrand Mayer
“Seja q(x) uma propriedade que se pode provar
do objeto x do tipo T. Então, q(y) também é
possível provar para o objeto y do tipo S, sendo S
um subtipo de T.”
Barbara Liskov
Classes filhas nunca deveriam infringir as
definições de tipo da classe pai.
“Uma classe não pode ser forçada a depender de
métodos que não utilizará.”
Robert C. Martin
“Abstrações não devem depender de
implementações. Implementações devem
depender de abstrações.”
Robert C. Martin
E Agora?
Se aprofunde!
● SOLID
● Design Patterns
● Padrões Arquiteturais
● Object Calisthenics
● Clean Code
Perguntas?
Obrigado!

Boas práticas de programação - Princípios SOLID