Skip to content

Sprint 5

sofiapatrocinio edited this page Apr 7, 2022 · 16 revisions

Data

24/03/2022 até 07/04/2022

Objetivo da Sprint

Esta sprint teve como objetivo aplicar conceitos do clean code e SOLID no projeto, onde cada aluno individualmente fez alguma contribuição.

Participantes

Nome User no GitHub
Bruno Félix @Bruno-Felix
Danilo Domingo @Danilow200
Edvan Gomes @Eddie-gomes
Gabrielle Ribeiro @Gabrielle-Ribeiro
Gustavo Afonso @GustavoAPS
Gustavo Duarte @gustavoduartemoreira
Hugo Sobral @KiSobral
João Pedro José @sudjoao
Lucas Lima @mibasFerraz
Nicalo Ribeiro @nicaloribeiro
Sofia Patrocínio @sofiapatrocinio
Victor Amaral @VictorAmaralC

Issues da Sprint

João Pedro Guedes

Atividade Descrição
Branch solid-cleancode-joaopedroguedes
O que foi feito Aplicação de técnicas do clean code e solid no arquivo src/ARte/core/views.py
Problemas O código estava com alguns problemas em relação aos nomes das funções, pois elas não informavam claramente o que a função era responsável, existiam blocos de repetições de código, e além disso algumas das partes do código não seguiam a mesma convenção.
Solução Aplicação dos conceitos de nomeclatura, aplicação de convenções e refatoração de função para evitar repetições.

Bruno Félix

Atividade Descrição
Branch clean-code-bruno-felix
O que foi feito Aplicação da técnica de clean code - DRY: no arquivo models src/ARte/core/models.py
Problemas O código havia repetição de manipulação das medidas(scale e position)
Solução Aplicação dos conceitos de DRY (Don’t Repeat Yourself) e refatoração da manipulação dessas medidas

Nícalo Ribeiro

Atividade Descrição
Branch clean-code-nicaloribeiro
O que foi feito Aplicação de técnicas de clean code nos arquivos src/ARte/core/static/js/pdfGenerator.js e src/ARte/core/static/js/threex-arpatternfile.js
Problemas O código possuía funções com muitas responsabilidades e funções anônimas onde não ficava claro o que estavam fazendo
Solução As funções com muitas responsabilidades tiveram trechos extraídos para criação de funções menores e com nomes explícitos a respeito do que fazem e, no caso das funções anônimas, foram criadas novas funções com nomes explícitos e que são chamadas no lugar das anônimas

Gustavo Afonso Pires Severo

Atividade Descrição
Branch refactor/fix-forms
O que foi feito Aplicação de técnicas do clean code e solid no arquivo src/ARte/core/forms.py
Problemas O código estava fora da convenção PEP8 do python e contava com blocos lógicos desnecessários e ou repetidos.
Solução Refatoração da função clean_username em 2 partes do código e padronização para o a convenção de código do python.

Gabrielle Ribeiro Gomes

Atividade Descrição
Branch refactor/fix-forms
O que foi feito Aplicação de técnicas do clean code e solid no arquivo src/ARte/core/forms.py
Problemas O código possuia funções que tinha múltiplas responsabilidades.
Solução Refatoração da função clean_password em 2 partes do código, aplicando o conceito de single responsability principle.

Sofia Patrocínio

Atividade Descrição
Branch clean-code-users-view-refactor
O que foi feito Diminuição de linhas duplicadas, criação de funções para evitar a duplicação de código e separação de responsabilidades do código
Problemas O arquivo apresentava várias linhas duplicadas, espaços mal identados e repetição e complexidade de códigos desnecessários
Solução A partir do princípio da responsabilidade única, foram separadas novas funções para trechos de códigos repetidos. Também, com o auxílio de ferramentas que medem a code health do projeto, funcionalidade que vai de acordo com o clean code, foram removidas linhas e trechos de código que feriam o padrão de escrita da linguagem.

Hugo

Atividade Descrição
Branch clean-code-users-view-refactor
O que foi feito Simplificação de complexidade assintótica do código, exclusão de duplicação de código e nomeação de trechos de código.
Problemas O código, além de má formatação, apresentava trechos com complexidade desnecessária, alta repetição de código além de um código excessivamente longo, o que indica uma violação do princípio da responsabilidade única.
Solução Foram identificados trechos de código que se repetiam ao longo de várias etapas do código e separadas em funções próprias. Também, foram criados arquivos que tinham como responsabilidade agrupar um conjunto de funções com um mesmo propósito. Este trabalho teve o cuidado para, também, diminuir o número de linhas para deixar as funções o mais concisas possíveis. Além disso, os códigos, que antes eram longos trechos, foram passados para funções que agora podem ser lidas apenas como passos dentro do código de escopo maior.

Edvan Gomes

Atividade Descrição
Branch clean-code-eddie-gomes
O que foi feito Aplicação de técnicas do clean code e solid no arquivo src/ARte/core/forms.py
Problemas A classe LoginForm tem alguns condicionais redundantes
Solução Refatoração da classe removendo os condicionais

Victor Amaral

Atividade Descrição
Branch cleanCode_SOLID_Victor
O que foi feito Aplicação de técnicas do SOLID para limpeza do codigo
Problemas O código possuía uma baixa quantidade de variaveis inutilizadas e comentarios desnecessarios
Solução Remocao das variaveis que nao estavam sendo utilizadas, revisao dos comentarios e reorganizacao de import`s em documentos

Versionamento

Data Versão Atividade Responsável
07/04/2022 0.1 Criação e Desenvolvimento da Wiki Sprint 5 João Pedro Guedes
07/04/2022 1.0 Inserção de implementações Todos os integrantes