forked from memeLab/Jandig
-
Notifications
You must be signed in to change notification settings - Fork 1
Sprint 5
sofiapatrocinio edited this page Apr 7, 2022
·
16 revisions
24/03/2022 até 07/04/2022
Esta sprint teve como objetivo aplicar conceitos do clean code e SOLID no projeto, onde cada aluno individualmente fez alguma contribuição.
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 |
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. |
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 |
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 |
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. |
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. |
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. |
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. |
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 |
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 |
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 |