Ich bin ein Gymnasiast, der mit einem Freund von mir an einem C # -Projekt mit ungefähr dem gleichen Können wie ich arbeitet. Bisher haben wir ungefähr 3.000 Codezeilen und 250 Testcodezeilen in einem Bereich von 100 Commits geschrieben. Aufgrund der Schule habe ich das Projekt für ein paar Monate verschoben und kürzlich konnte ich es wieder aufnehmen.
Als ich es wieder aufgegriffen hatte, wurde mir klar, dass der von mir geschriebene Code schlecht gestaltet war, z. B. die Einbeziehung übermäßiger Threads in den Renderer, die schlechte Verhinderung von Race-Bedingungen bei der Interaktion zwischen emulierter CPU, GPU und Spielekassette sowie einfach redundanten und verwirrenden Code.
Das Problem ist, dass ich noch nicht einmal die Hauptfunktionalität meines Programms abgeschlossen habe, so dass ich nicht wirklich überarbeiten kann, und ich fühle mich entmutigt, mir vollkommen bewusst zu sein, dass das Design meines Codes fehlerhaft ist. Gleichzeitig möchte ich das Projekt nicht aufgeben; Es wurden erhebliche Fortschritte erzielt, und die Arbeit darf nicht vergeudet werden.
Ich habe das Gefühl, eine Reihe von Möglichkeiten zu haben: Die Funktionalität einfach zu beenden, indem ich das schlechte Design umgehe und dann alles umgestalte, sobald alles funktioniert, alles anhält und daran arbeite, alles zu entwirren, bevor der Rest der Funktionalität abgeschlossen werden kann, und das Projekt startet Überall, so dass es wieder frisch in meinem Kopf ist oder das Projekt aufgrund seiner übermäßigen Größe endgültig aufgibt (im Wesentlichen "Zurück zum Zeichenbrett").
Was ist der Grund, um mich wieder auf den richtigen Weg zu bringen, basierend auf den Erfahrungen anderer in solchen Projekten? Aus den Antworten auf dieser Website geht der allgemeine Konsens hervor, dass das Umschreiben im Allgemeinen nicht erforderlich ist, aber eine verfügbare Option ist, wenn der Code nicht ohne übermäßige Kosten gepflegt werden kann. Ich würde dieses Projekt gerne weiter verfolgen, aber so wie es aussieht, ist mein Code nicht gut genug für mich, um fortzufahren, und ein Gefühl der Mutlosigkeit hindert mich daran, fortzufahren.