return function() {
return {
"Topics": {
"Open-Closed Principle": {
"The Open/Closed principle and Strategy Pattern": {
"Context": [
"É responsável pela criação e manutenção de uma referência a uma classe Strategy específica."
],
"Strategy": [
"É a interface comum a todos os algoritmos suportados. Através dessa interface, o content pode chamar o algoritmo criado pela ConcreteStrategy."
],
"ConcreteStrategy": [
"Implementa o algoritmo usando a interface Strategy."
]
}
},
"S.R.P. - Single Responsability Principle": [
"A class should have one, and only one, reason to change"
],
"Liskov Substitution Principle": [],
"Interface Segregation Principle": [],
"Dependency Inversion Principle": []
}
}
}
return function() {
return {
"The S.O.L.I.D Principles in Pictures": "https://medium.com/backticks-tildes/the-s-o-l-i-d-principles-in-pictures-b34ce2f1e898"
}
}
composer init --name magicalstrangequark/solid
🔗 Alexandre Saudate - REST: Construa API’s inteligentes de maneira Simples, Casa do Código
-
1 Por que utilizar REST?
-
2 O protocolo HTTP
-
3 Conceitos de REST
-
4 Tipos de dados
-
5 Implementando serviços REST em Java com Servlets
-
Bibliografia
🔗 Kent Beck - TDD - Desenvolvimento Guiado por Testes
🔗 Maurício Aniche - Orientação a Objetos e SOLID para Ninjas: Projetando Classes Flexíveis
-
1
Orientação a Objetos, pra que te quero?
-
2
A coesão e o tal do SRP
-
3
Acoplamento e o tal do DIP
-
4
Classes abertas e o tal do OCP
-
5
O encapsulamento e a propagação de mudanças
-
6
Herança x composição e o tal do LSP
-
7
Interfaces magras e o tal do ISP
-
8
Consistência, objetinhos e objetões
-
9
Maus cheiros de design
-
10
Métricas de código
-
11
Exemplo prático: MetricMiner
-
12
Conclusão
🔗 Maurício Aniche - Testes Automatizados de Software: Um Guia Prático
🔗 Robert Cecil Martin - Arquitetura Limpa - O Guia do Artesão para Estrutura e Design de Software
-
Prefácio
-
Apresentação
-
Agradecimentos
-
Sobre o Autor
-
I. Introdução
-
1. O que são Design e Arquitetura?
-
2. Um Conto de Dois Valores
-
-
II. Começando com os Tijolos: Paradigmas da Programação
-
3. Panorama do Paradigma
-
4. Programação Estruturada
-
5. Programação Orientada a Objetos
-
6. Programação Funcional
-
-
III. Princípios de Design
-
7. SRP: O Princípio da Responsabilidade Única
-
8. OCP: O Princípio Aberto/Fechado
-
9. LSP: O Princípio de Substituição de Liskov
-
10. ISP: O Princípio da Segregação de Interface
-
11. DIP: O Princípio da Inversão de Dependência
-
-
IV. Princípios dos Componentes
-
12. Componentes
-
13. Coesão de Componentes
-
14. Acoplamento de Componentes
-
-
V. Arquitetura
-
15. O que é Arquitetura?
-
16. Independência
-
17. Fronteiras: Estabelecendo Limites
-
18. Anatomia do Limite
-
19. Política e Nível
-
20. Regras de Negócio
-
21. Arquitetura Gritante
-
22. Arquitetura Limpa
-
23. Apresentadores e Objetos Humble
-
24. Limites Parciais
-
25. Camadas e Limites
-
26. O Componente Main
-
27. Serviços: Grandes e Pequenos
-
28. O Limite Teste
-
29. Arquitetura Limpa Embarcada
-
-
VI. Detalhes
-
30. A Base de Dados é um Detalhe
-
31. A Web é um Detalhe
-
32. Frameworks são Detalhes
-
33. Estudo de Caso: Vendas de Vídeo
-
34. O Capítulo Perdido
-
-
VII. Apêndice
-
A. Arqueologia da Arquitetura
-
🔗 Robert Cecil Martin - Clean Architecture - A Craftsman's Guide to Software Structure and Design
🔗 Robert Cecil Martin - Clean Code - A Handbook of Agile Software Craftsmanship
🔗 Robert Cecil Martin - Código Limpo - Habilidades Práticas do Agile Software
-
Prefácio
-
Introdução
-
Sobre a capa
-
Capítulo 1: Código Limpo
-
Capítulo 2: Nomes Significativos
...
-
Capítulo 16: Refatorando o SerialDate
-
Capítulo 17: Odores e Heurísticas
-
Apêndice A: Concorrência II
-
Apêndice B
-
Apêndice C: Referência Cruzada das Heurísticas
-
Epílogo