Saya seorang siswa sekolah menengah yang mengerjakan proyek C # dengan seorang teman saya dengan tingkat keterampilan yang sama dengan saya. Sejauh ini, kami telah menulis sekitar 3.000 baris kode dan 250 baris kode uji dalam rentang 100 komit. Karena sekolah, saya menunda proyek selama beberapa bulan dan baru-baru ini saya bisa mengambilnya kembali.
Pada saat saya mengambilnya kembali, saya mengerti bahwa kode yang saya tulis tidak dirancang dengan baik, seperti dimasukkannya utas yang berlebihan dalam penyaji, buruknya pencegahan kondisi lomba dalam interaksi antara CPU yang ditiru, GPU, dan kartrid permainan , serta kode yang hanya mubazir dan membingungkan.
Masalahnya adalah bahwa saya belum menyelesaikan bahkan fungsi utama dari program saya, jadi saya tidak dapat benar-benar menolak, dan saya merasa berkecil hati untuk terus menyadari bahwa desain kode saya cacat. Pada saat yang sama, saya tidak ingin meninggalkan proyek; sejumlah besar kemajuan telah dibuat dan pekerjaan tidak boleh sia-sia.
Saya merasa seolah-olah saya memiliki beberapa pilihan: untuk hanya menyelesaikan fungsionalitas dengan bekerja di sekitar desain yang buruk dan kemudian refactoring setelah semuanya bekerja, menghentikan semuanya dan bekerja untuk mengurai semuanya sebelum sisa fungsi dapat diselesaikan, memulai proyek seluruh sehingga segar di pikiran saya lagi, atau benar-benar meninggalkan proyek karena ukurannya yang berlebihan (pada dasarnya "kembali ke papan gambar").
Berdasarkan pengalaman orang lain dalam proyek-proyek semacam itu, apa jalan untuk mengembalikan diri ke jalur yang benar? Dari jawaban di situs ini, konsensus umum adalah bahwa menulis ulang pada umumnya tidak perlu tetapi merupakan opsi yang tersedia jika kode tidak dapat dipertahankan tanpa biaya berlebihan. Saya benar-benar ingin mengejar proyek ini, tetapi sebagaimana adanya, kode saya tidak dirancang dengan cukup baik untuk saya lanjutkan, dan perasaan sedih membuat saya tidak bisa melanjutkan.