M01A01.-.Apresentacao.mp4
Olá e seja bem vindo ao curso Aplicando Orientação a Objetos em Projetos Reais com C# 11 e .NET 7. Eu sou André Baltieri ou balta, 10x Microsoft MVP e vou te guiar por este curso.
Falamos muito sobre orientação a objetos e muitas vezes tornamos as coisas ainda mais obscuras e dificultamos o entendimento dos principais paradigmas.
É necessário entender que orientação a objetos nem sempre precisa ser algo extremamente complexo e gigante, na verdade ela tem que ser simples e eficiente, como tudo na computação.
Mas como aplicar conceitos e técnicas que abrangem projetos de grande e pequeno porte em qualquer tipo de aplicação?
Neste curso, vamos aprender a resolver problemas de um cenário real apenas utilizando orientação a objetos e alguns conceitos que vão mudar sua visão sobre desenvolvimento de software.
Passaremos por todos os tópicos de organização da aplicação em soluções e projetos, seguido pela sub-organização a aplicação em pastas, para deixar tudo no lugar certo.
Vamos entender mais sobre a criação de SDKs que realmente são simples de usar e domínios pequenos e bem modelados, com entidades e objetos de valor.
Vamos passar por conceitos como herança, abstração, encapsulamento e até obsessão primitiva, tornando nosso código ainda mais reutilizável.
Claro que tudo isso aplicando o que há de mais novo no C# 11 e .NET 7, com recursos como Source Generators, Implicit Operators e Extension Methods.
Para fechar, vamos entender em quais cenários devemos utilizar Exceptions e como utilizá-las de uma forma testável e legível.
Toda esta implementação sem testes de unidade não nos favorece em nada, então temos um módulo dedicado a testes, onde vamos debater sobre o que e como testar todo nosso domínio.
Como resultado final, teremos uma biblioteca completa e testada, pronta para ser consumida por outros projetos na solução ou mesmo ser publicada em um Nuget público ou privado.
E não esquece de conferir nosso curso de Git, GitHub, Azure e DevOps para aprender a publicar essa biblioteca de forma automatizada com GitHub Actions e GitHub Packages.
Este curso é destinado a todas as pessoas que já tem conhecimento em .NET, ou que vem seguindo nossa carreira aqui e querem dar um passo a frente.
Então se você já criou suas APIs ou Apps com .NET e quer aprender uma forma nova, eficiente e testável de escrever código, este curso é para você.
Este curso tem foco em .NET 7 e C# 11, contando com recursos exclusivos desta versão (ou superior).
Porém, conceitos como Implicit Operators, Extension Methods, Abstração, Herança, Encapsulamento e Primitive Obsession podem ser aplicados em diferentes versões do .NET e até mesmo outras linguagens de programação.