
Apresentação do que vamos e não vamos ensinar nesse curso e também os pré requisitos para você ter a melhor experiência com esse curso
Criando a estrutura do projeto e adicionando o projeto no github.
https://github.com/MrSpock182/SunnyDayProject
Nessa aula vamos criar a conexão da nossa API com o banco de dados MySQL.
Nesta aula vamos estar criando uma representação do elemento que vamos salvar no banco de dados através de um objeto.
Nessa aula vamos estar criando a persistência dos dados com um ORM do Spring Boot, mas você pode estar usando o ORM da sua linguagem ou até mesmo fazer os scripts dentro do código sem problemas.
Nessa aula vamos utilizar uma ferramenta do Spring para realizar uma consulta de CEP em uma API externa, mas você pode estar usando a dependência que você preferir para realizar essa consulta.
Nessa aulas vamos criar a regra de negócio da empresa Sunny Day em código e criar nossos endpoints REST.
Nessa aula vamos ver o porque no código escrito na nossa aplicação está com alto acoplamento.
Desacoplando a dependência do Feign Client da nossa aplicação.
Desacoplando nossa regra de negócio e entrada e saída REST.
Modificando as propriedades para conexão com o banco de dados
Desacoplando nosso código do Spring Data
Separando pacotes para desacoplar o framework
Removendo a consulta de CEP do framework Spring
Nesse curso vamos ver de forma bem clara e simples o que é o desacoplamento de módulos, vamos estar utilizando Java com o framework Spring, mas o conceito apresentado aqui pode ser usado em quase todas as linguagens e também quase todos os frameworks; veremos como podemos trazer flexibilidade a mudanças no nosso software, entender o beneficio das interfaces para um software e entender o principio de inversão de dependência.
Vale ressaltar que apesar de falarmos de um dos princípio do SOLID o curso não visa ensinar todo o SOLID, apenas um dos pilares que temos dentro dele; Não iremos ensinar a instalação das ferramentas que iremos utilizar, este é um curso mais voltado a sentar e desenvolver; e também não vamos explicar as anotações do Spring Framework nem falar sobre a linguagem JAVA.
Pré requisitos
Para seguir o passo a passo do curso deve se ter um pequeno conhecimento em Spring Boot;
Deve ter instalado em seu equipamento um banco de dados relacional e um não relacional, no curso iremos estar utilizando MySQL e MongoDB;
E uma IDE para desenvolvimento, no curso iremos utilizar o IntelliJ.