- Artikel yang membahas keterbacaan kode linear sambil menantang sudut pandang yang diajukan di Google Testing Blog
- Penulis tidak setuju dengan klaim Google Testing Blog bahwa fungsi yang memisahkan tingkat abstraksi lebih mudah dibaca
- Penulis berargumen bahwa kode linear yang dibaca dari atas ke bawah lebih intuitif dan lebih mudah dipahami daripada kode yang bolak-balik di antara berbagai tingkat abstraksi
- Penulis menjelaskan argumennya dengan contoh fungsi memanggang pizza, sambil mempertanyakan apakah fungsi memanggang pizza harus memanaskan oven atau apakah oven seharusnya dipanaskan terlebih dahulu
- Penulis mengusulkan bahwa keterbacaan kode bukan berasal dari struktur yang memisahkan tingkat abstraksi, melainkan dari penjelasan yang jelas tentang apa yang dilakukan tiap bagian kode
- Penulis menentang mengekstrak fungsi-fungsi kecil dari kode linear, terutama bila hanya digunakan sekali, dan menyimpulkan bahwa manfaatnya tidak cukup untuk mengimbangi hilangnya linearitas
- Penulis juga menunjukkan potensi masalah terkait fungsi memanggang pizza, dengan mempertanyakan mengapa oven baru dibuat setiap kali pizza dibuat, yang dapat menimbulkan masalah performa dalam kode nyata
- Penulis menyarankan agar oven menjadi parameter fungsi dan penyediaannya menjadi tanggung jawab pemanggil, serta bahwa fungsi tersebut seharusnya mengembalikan kotak, bukan pizza
1 komentar
Komentar Hacker News