Latihan 1 dari materi Refactoring Patterns di Clean Code — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Implementasikan tiga fungsi refactoring berikut:
extractMethod(code, methodName) — menerima string kode dan nama method, mengembalikan string yang mengandung function [methodName]renameVariable(code, oldName, newName) — mengganti semua kemunculan oldName dengan newName dalam string kode, mengembalikan kode hasil renameremoveDeadCode(functions, usedFunctions) — menerima array semua nama fungsi dan array nama fungsi yang digunakan, mengembalikan hanya fungsi yang digunakanKemudian panggil dan cetak hasilnya:
extractMethod("const x = 1 + 2;", "calculateSum") → cetak apakah hasilnya mengandung "function calculateSum"renameVariable("const d = new Date();", "d", "currentDate") → cetak hasilnyaremoveDeadCode(["fetchUser", "sendEmail", "formatDate", "unusedHelper"], ["fetchUser", "formatDate"]) → cetak hasilnya (JSON)