Skip to content

Projeto de estudo desenvolvido a fim de entender as boas práticas em Java O programa simula a área de RH na parte de remuneração, onde são concedidos ajustes salariais com base na promoção de funcionarios a novos cargos conforme o desempenho.

Notifications You must be signed in to change notification settings

flaviocr2012/Departamento-de-Recursos-Humanos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

SOLID com Java

Princípios da Programação Orientada a Objetos

Sobre o Projeto

Projeto de estudo desenvolvido a fim de entender as boas práticas em Java O programa simula a área de RH na parte de remuneração, onde são concedidos ajustes salariais com base na promoção de funcionarios a novos cargos conforme o desempenho.

Tópicos cobertos

  • SRP — Single Responsibility Principle - uma classe deve ser especializada em um único assunto e possuir apenas uma responsabilidade dentro do software, ou seja, a classe deve ter uma única tarefa ou ação para executar.
  • OCP — Open-Closed Principle - objetos ou entidades devem estar abertos para extensão, mas fechados para modificação, ou seja, quando novos comportamentos e recursos precisam ser adicionados no software, devemos estender e não alterar o código fonte original. Separe o comportamento extensível por trás de uma interface e inverta as dependências.
  • LSP— Liskov Substitution Principle - Uma classe derivada deve ser substituível por sua classe base. (Polimorfismo) Seguir o LSP nos permite usar o polimorfismo com mais confiança. Podemos chamar nossas classes derivadas referindo-se à sua classe base sem preocupações com resultados inesperados.
  • ISP — Interface Segregation Principle - Uma classe não deve ser forçada a implementar interfaces e métodos que não irão utilizar. Esse princípio basicamente diz que é melhor criar interfaces mais específicas ao invés de termos uma única interface genérica.
  • DIP — Dependency Inversion Principle -  Dependa de abstrações e não de implementações. A inversão de dependências e de propriedade incentiva a reutilização de superior/política de camadas. Camadas superiores podem usar outras implementações dos serviços menores.

Com os princípios adotados é possível obter um código com menor acomplamento, mais coeso e encapsulado, favorecendo a leitura e manutenção do sistema.

Projeto criado com a linguagem Java.

About

Projeto de estudo desenvolvido a fim de entender as boas práticas em Java O programa simula a área de RH na parte de remuneração, onde são concedidos ajustes salariais com base na promoção de funcionarios a novos cargos conforme o desempenho.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages