Skip to content

ucsal/202601-bes-mat-Marins-Mat

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

No primeiro commit me foquei em tentar implementar o principio de Single Responsability, retirando os métodos da classe App e criando classes adjacentes, como service e repositories para gerir, respectivamente as regras de negocio e os dados das classes.

No segundo commit continuei tentando aplicar o SRP na aplicação, retirando o método ImprimirTabuleiroFen da classe App e criando uma classe QuestãoXadrez que herda de Questão (Questão ainda é uma classe normal, desrespeitando o Dependency Inversion Principle - DIP, mas que pretendo corrigir nos próximos commits). Além disso foi aplicado o principio de Open-Closed Principle no Menu, fazendo com que para um novo item aparecer no menu é apenas necessário registra-lo no construtor do Menu, o OCP foi implementado fazendo com que as classes UI implementassem uma interface Executavel, o que ficou sem nexo, mas pretendo corrigir isso nos próximos commits.

No terceiro Commit eu criei uma classe DataSeeder que faz a inicianlização dos objetos, para retirar essa responsabilidade do App e a criação da classe ChessboardRenderer, que é responsavel por criar o Tabuleiro

No quarto Commit as principais alterações foram, a criação de uma Factory de Questão, que gerencia a criação e quando necessário cria a QuestãoXadrez, unica questão que tem um comportamento diferente. a alteração de materia e TipoQuestão para Enuns.

About

ucsal-classroom-20261-bes-mat-202601-bes-mat-olimpiada created by GitHub Classroom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 100.0%