Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions src/primeiroRefactoring/Endereco.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package primeiroRefactoring;

public class Endereco {
private String logradouro;
private String complemento;
private String cep;

public Endereco(String logradouro, String complemento, String cep) {
this.logradouro = logradouro;
this.complemento = complemento;
this.cep = cep;
}
public String getLogradouro() {
return logradouro;
}
public void setLogradouro(String logradouro) {
this.logradouro = logradouro;
}
public String getComplemento() {
return complemento;
}
public void setComplemento(String complemento) {
this.complemento = complemento;
}
public String getCep() {
return cep;
}
public void setCep(String cep) {
this.cep = cep;
}
}
31 changes: 7 additions & 24 deletions src/primeiroRefactoring/Pessoa.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
package primeiroRefactoring;

import java.util.Date;

public class Pessoa {
Expand All @@ -10,22 +9,18 @@ public class Pessoa {
private Date dataNascimento;
private String nomePai;
private String nomeMae;
private String logradouro;
private String complemento;
private String cep;
private Endereco endereco;

public Pessoa(String nome, String cpf, String registroGeral, Date dataNascimento, String nomePai, String nomeMae,
String logradouro, String complemento, String cep) {
Endereco endereco) {
super();
this.nome = nome;
this.cpf = cpf;
this.registroGeral = registroGeral;
this.dataNascimento = dataNascimento;
this.nomePai = nomePai;
this.nomeMae = nomeMae;
this.logradouro = logradouro;
this.complemento = complemento;
this.cep = cep;
this.endereco = endereco;
}
public String getNome() {
return nome;
Expand Down Expand Up @@ -63,22 +58,10 @@ public String getNomeMae() {
public void setNomeMae(String nomeMae) {
this.nomeMae = nomeMae;
}
public String getLogradouro() {
return logradouro;
}
public void setLogradouro(String logradouro) {
this.logradouro = logradouro;
}
public String getComplemento() {
return complemento;
}
public void setComplemento(String complemento) {
this.complemento = complemento;
}
public String getCep() {
return cep;
public Endereco getEndereco() {
return this.endereco;
}
public void setCep(String cep) {
this.cep = cep;
public void setEndereco(Endereco endereco) {
this.endereco = endereco;
}
}
73 changes: 46 additions & 27 deletions src/segundoRefactoring/Quicksort.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,43 +5,62 @@
public class Quicksort {

public static void main(String[] args) throws IOException {
int quantidade = 10000;
int[] vetor = new int[quantidade];

int tamanho = 10_000;
int[] vetor = gerarVetorDeInteirosAleatorios(tamanho);
System.out.println("Vetor desordenado: ");
for (int i = 0; i < vetor.length; i++) {
vetor[i] = (int) (Math.random() * quantidade);
System.out.print(i + " ");
}
imprimirVetor(vetor);

quickSort(vetor, 0, vetor.length - 1);

System.out.println("\nVetor ordenado: ");
imprimirVetor(vetor);
}

private static int[] gerarVetorDeInteirosAleatorios(int tamanho) {
int[] vetor = new int[tamanho];
for (int i = 0; i < vetor.length; i++) {
vetor[i] = (int) (Math.random() * tamanho);
}
return vetor;
}

private static void imprimirVetor(int[] vetor) {
for (int i : vetor) {
System.out.print(i + " ");
}
}

private static void quickSort(int[] vetor, int inicio, int fim) {
if (inicio < fim) {
int pivo = vetor[inicio];
int i = inicio + 1, f = fim;
while (i <= f) {
if (vetor[i] <= pivo)
i++;
else if (pivo < vetor[f])
f--;
else {
int troca = vetor[i];
vetor[i] = vetor[f];
vetor[f] = troca;
i++;
f--;
}
if (inicio >= fim) {
return;
}
int posicaoPivo = partitionarLista(vetor, inicio, fim);
quickSort(vetor, inicio, posicaoPivo - 1);
quickSort(vetor, posicaoPivo + 1, fim);
}

private static int partitionarLista(int[] vetor, int inicio, int fim) {
int pivo = vetor[inicio];
int i = inicio + 1;
int f = fim;

while (f > i) {
if (pivo > vetor[i])
i++;
else if (pivo < vetor[f])
f--;
else {
int troca = vetor[i];
vetor[i] = vetor[f];
vetor[f] = troca;
i++;
f--;
}
vetor[inicio] = vetor[f];
vetor[f] = pivo;
int posicaoPivo = f;
quickSort(vetor, inicio, posicaoPivo - 1);
quickSort(vetor, posicaoPivo + 1, fim);
}

vetor[inicio] = vetor[f];
vetor[f] = pivo;
return f;
}
}
48 changes: 17 additions & 31 deletions src/terceiroRefactoring/Discente.java
Original file line number Diff line number Diff line change
@@ -1,36 +1,14 @@
package terceiroRefactoring;

import java.util.Date;

public class Discente {

private String[] disciplinasCursadas;
private Date dataIngresso;
private InformacaoInstitucional informacaoInstitucional;
private Pessoa discente;
private int numeroPeriodosCursados;
private String emailPessoal;

public Discente(String[] disciplinasCursadas, Date dataIngresso, int numeroPeriodosCursados, String emailPessoal) {
super();
this.disciplinasCursadas = disciplinasCursadas;
this.dataIngresso = dataIngresso;
public Discente(InformacaoInstitucional informacaoInstitucional, Pessoa discente, int numeroPeriodosCursados) {
this.informacaoInstitucional = informacaoInstitucional;
this.discente = discente;
this.numeroPeriodosCursados = numeroPeriodosCursados;
this.emailPessoal = emailPessoal;
}

public String[] getDisciplinasCursadas() {
return disciplinasCursadas;
}

public void setDisciplinasCursadas(String[] disciplinasCursadas) {
this.disciplinasCursadas = disciplinasCursadas;
}

public Date getDataIngresso() {
return dataIngresso;
}

public void setDataIngresso(Date dataIngresso) {
this.dataIngresso = dataIngresso;
}

public int getNumeroPeriodosCursados() {
Expand All @@ -41,11 +19,19 @@ public void setNumeroPeriodosCursados(int numeroPeriodosCursados) {
this.numeroPeriodosCursados = numeroPeriodosCursados;
}

public String getEmailPessoal() {
return emailPessoal;
public InformacaoInstitucional getInformacaoInstitucional() {
return informacaoInstitucional;
}

public void setInformacaoInstitucional(InformacaoInstitucional informacaoInstitucional) {
this.informacaoInstitucional = informacaoInstitucional;
}

public Pessoa getDiscente() {
return discente;
}

public void setEmailPessoal(String emailPessoal) {
this.emailPessoal = emailPessoal;
public void setDiscente(Pessoa discente) {
this.discente = discente;
}
}
40 changes: 13 additions & 27 deletions src/terceiroRefactoring/Docente.java
Original file line number Diff line number Diff line change
@@ -1,44 +1,30 @@
package terceiroRefactoring;

import java.util.Date;

public class Docente {

private String[] disciplinasMinistradas;
private Date dataAdmissao;
private String emailInstitucional;
private InformacaoInstitucional informacaoInstitucional;
private Pessoa docente;
private double remuneracao;

public Docente(String[] disciplinasMinistradas, Date dataAdmissao, String emailInstitucional, double remuneracao) {
super();
this.disciplinasMinistradas = disciplinasMinistradas;
this.dataAdmissao = dataAdmissao;
this.emailInstitucional = emailInstitucional;
public Docente(InformacaoInstitucional informacaoInstitucional, Pessoa docente, double remuneracao) {
this.informacaoInstitucional = informacaoInstitucional;
this.docente = docente;
this.remuneracao = remuneracao;
}

public String[] getDisciplinasMinistradas() {
return disciplinasMinistradas;
}

public void setDisciplinasMinistradas(String[] disciplinasMinistradas) {
this.disciplinasMinistradas = disciplinasMinistradas;
}

public Date getDataAdmissao() {
return dataAdmissao;
public InformacaoInstitucional getInformacaoInstitucional() {
return informacaoInstitucional;
}

public void setDataAdmissao(Date dataAdmissao) {
this.dataAdmissao = dataAdmissao;
public void setInformacaoInstitucional(InformacaoInstitucional informacaoInstitucional) {
this.informacaoInstitucional = informacaoInstitucional;
}

public String getEmailInstitucional() {
return emailInstitucional;
public Pessoa getDocente() {
return docente;
}

public void setEmailInstitucional(String emailInstitucional) {
this.emailInstitucional = emailInstitucional;
public void setDocente(Pessoa docente) {
this.docente = docente;
}

public double getRemuneracao() {
Expand Down
70 changes: 70 additions & 0 deletions src/terceiroRefactoring/InformacaoInstitucional.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
package terceiroRefactoring;

import java.util.Date;

public class InformacaoInstitucional {
private String siape;
private String matricula;
private double coeficienteRendimento;
private String[] disciplinas;
private Date dataVinculo;
private String email;

public InformacaoInstitucional(String siape, String matricula, double coeficienteRendimento, String[] disciplinas,
Date dataVinculo, String email) {
this.siape = siape;
this.matricula = matricula;
this.coeficienteRendimento = coeficienteRendimento;
this.disciplinas = disciplinas;
this.dataVinculo = dataVinculo;
this.email = email;
}

public String getSiape() {
return siape;
}

public void setSiape(String siape) {
this.siape = siape;
}

public String getMatricula() {
return matricula;
}

public void setMatricula(String matricula) {
this.matricula = matricula;
}

public double getCoeficienteRendimento() {
return coeficienteRendimento;
}

public void setCoeficienteRendimento(double coeficienteRendimento) {
this.coeficienteRendimento = coeficienteRendimento;
}

public String[] getDisciplinas() {
return disciplinas;
}

public void setDisciplinas(String[] disciplinas) {
this.disciplinas = disciplinas;
}

public Date getDataVinculo() {
return dataVinculo;
}

public void setDataVinculo(Date dataVinculo) {
this.dataVinculo = dataVinculo;
}

public String getEmailInstitucional() {
return email;
}

public void setEmailInstitucional(String email) {
this.email = email;
}
}
Loading