Zup Edu: Design e Qualidade de Código
Se 80% do que fazemos no dia a dia como desenvolvedor(a) é ler e escrever código, então nada mais justo do que investir no aprendizado sobre como desenhar, escrever e manter código de qualidade. Neste plano de estudo vamos navegar por diversos conceitos, técnicas, dicas de design e tradeoffs ao escrever código que seja fácil de ler e entender, simples de manter a médio-longo prazo e flexível o suficiente para ser evoluído mitigando a complexidade acidental.
Para isso, vamos estudar orientação a objetos, técnicas e conceitos de programação limpa, design patterns, princípios de design SOLID e Domain-Driven Design (DDD) e por fim alguns estilos arquiteturais para organizar e estruturar nosso código. Focaremos na linguagem Java, mas boa parte do que veremos são conceitos do paradigma orientado a objetos que podem ser facilmente aplicados à outras linguagens e plataformas.
Ao final deste plano de estudo você será capaz de:
- ler, escrever e manter código OO de qualidade;
- avaliar e criticar o desenho e implementação de estilos arquiteturais;
- revisar código de seus pares e propor melhorias de implementação e design do código;
- refatorar código escrito por outras desenvolvedores(as);
- explicar para outros desenvolvedores(as) os conceitos e técnicas estudados;
Bons estudos ��
Planos de estudo são sequências de cursos e outros conteúdos criados por alunos e alunas da Alura para organizar seus estudos. Siga planos que te interessem ou crie o seu próprio.
Passo a passo
-
1
Conteúdo do plano
-
Artigo POO: o que é programação orientada a objetos?
-
Artigo Como não aprender Java e Orientação a Objetos: getters e setters
-
Artigo Como não aprender orientação a objetos: Herança
-
Artigo Como não aprender orientação a objetos: o excesso de ifs
-
Curso Java OO: entendendo a Orientação a Objetos
-
Curso Java: aplicando a Orientação a Objetos
-
Curso Kotlin: orientação a objetos
-
Podcast Práticas de Orientação a Objetos – Hipsters #129
-
Podcast TechGuide: Orientação a Objetos – Hipsters Ponto Tech #350
-
Artigo Design patterns: Breve introdução aos padrões de projeto
-
Curso Design Patterns em Java I: boas práticas de programação
-
Curso Design Patterns em Java II: avançando nas boas práticas de programação
-
Podcast Design Patterns – Hipsters #206
-
Podcast TechGuide: Design Patterns – Hipsters Ponto Tech #347
-
Curso Design Patterns Java I: Boas práticas de programação
-
Curso Design Patterns Java II: Boas praticas de programação
-
Curso SOLID com Java: princípios da programação orientada a objetos
-
Curso SOLID com C#: princípios da programação orientada a objetos
-
Podcast SOLID: Código bom e bonito – Hipsters Ponto Tech #219
-
Curso SOLID com Java: Orientação a Objetos com Java
-
Alura+ Design de código vs Arquitetura de software
-
Alura+ O que é arquitetura hexagonal?
-
Alura+ Clean Architecture (Arquitetura Limpa) - O que é?
-
Curso Java e Clean Architecture: descomplicando arquitetura de software
-
Podcast Clean Architeture – Hipsters Ponto Tech #254
-
Artigo Clean Code: O que é, Casos de Uso, Exemplo de Código Limpo
-
Alura+ Domain-Driven Design (DDD) - O que é?
-
Curso Java e Domain Driven Design: apresentando os conceitos
-