Eu sou um estudante do ensino médio que trabalha em um projeto C # com um amigo meu com o mesmo nível de habilidade que eu. Até agora, escrevemos aproximadamente 3.000 linhas de código e 250 linhas de código de teste em um intervalo de 100 confirmações. Devido à escola, adiei o projeto por alguns meses e recentemente pude recuperá-lo novamente.
No momento em que o recuperei, eu entendi que o código que havia escrito era mal projetado, como inclusão de encadeamentos excessivos no renderizador, prevenção deficiente de condições de corrida na interação entre CPU, GPU e cartucho de jogo emulados , bem como código que é simplesmente redundante e confuso.
O problema é que eu não terminei nem a principal funcionalidade do meu programa, por isso não posso refatorar de verdade e me sinto desencorajado por continuar perfeitamente ciente de que o design do meu código é defeituoso. Ao mesmo tempo, não quero abandonar o projeto; uma quantidade substancial de progresso foi feita e o trabalho não deve ser desperdiçado.
Sinto como se tivesse algumas opções: simplesmente finalizar a funcionalidade contornando o design deficiente e refatorando quando tudo estiver funcionando, interrompendo tudo e trabalhando para desemaranhar tudo antes que o restante da funcionalidade possa ser concluído, iniciando o projeto tudo de novo, para que eu esteja novamente em minha mente ou abandone o projeto devido ao seu tamanho excessivo (essencialmente "voltando à prancheta").
Com base na experiência dos outros em tais projetos, qual é o recurso para me colocar de volta no caminho certo? A partir das respostas neste site, o consenso geral é que a reescrita geralmente não é necessária, mas é uma opção disponível se o código não puder ser mantido sem custos excessivos. Eu realmente gostaria de prosseguir com esse projeto, mas, como está, meu código não foi projetado o suficiente para que eu possa continuar, e um sentimento de desânimo me impede de continuar.