Baru-baru ini saya menemukan kegembiraan fitur "Save Actions" di Eclipse IDE. Saya dapat memaksanya untuk memformat ulang kode saya, memasukkan @Override
anotasi yang hilang , dan melakukan beberapa hal bagus seperti menghapus tanda kurung yang tidak perlu dalam ekspresi atau meletakkanfinal
kata kunci di mana-mana secara otomatis setiap kali saya menekan ctrl + S
. Saya mengaktifkan beberapa pemicu itu dan, nak, ini sangat membantu!
Ternyata banyak dari pemicu tersebut bertindak seperti cek kewarasan cepat untuk kode saya.
- Saya bermaksud mengganti metode tetapi anotasi tidak muncul ketika saya menekan
ctrl + s
? - mungkin saya mengacaukan tipe parameter di suatu tempat!
- Beberapa tanda kurung telah dihapus dari kode di save? - mungkin ekspresi logika itu terlalu sulit bagi programmer untuk bergaul dengan cepat. Kalau tidak, mengapa saya menambahkan tanda kurung itu di tempat pertama?
- Parameter atau variabel lokal itu tidak
final
. Apakah harus mengubah nilainya?
Ternyata semakin sedikit variabel berubah semakin sedikit masalah yang saya miliki pada waktu debug. Berapa kali Anda mengikuti nilai beberapa variabel hanya untuk menemukan bahwa itu entah bagaimana berubah dari katakan 5 ke 7? "Bagaimana bisa ?!" Anda bertanya pada diri sendiri dan menghabiskan beberapa jam berikutnya melangkah masuk dan keluar dari metode yang tak terhitung jumlahnya untuk mengetahui bahwa Anda telah membuat kesalahan dalam logika Anda. Dan untuk memperbaikinya Anda harus menambahkan satu lagi bendera, beberapa kondisi dan hati-hati mengubah beberapa nilai di sana-sini.
Oh, aku benci debugging! Setiap kali saya menjalankan debugger, saya merasa waktu saya hampir habis dan saya sangat membutuhkan waktu itu untuk membuat setidaknya beberapa impian masa kecil saya menjadi kenyataan! Persetan dengan debugging! final
Berarti tidak ada lagi perubahan nilai yang misterius. Lebih banyak final
s => lebih sedikit bagian yang rapuh dalam kode saya => lebih sedikit bug => lebih banyak waktu untuk melakukan hal-hal yang baik!
Sedangkan untuk final
kelas dan metode saya tidak terlalu peduli. Saya suka polimorfisme. Polimorfisme berarti penggunaan kembali berarti lebih sedikit kode berarti lebih sedikit bug. JVM melakukan pekerjaan yang cukup bagus dengan devirtualization dan metode inlining, jadi saya tidak melihat nilai dalam membunuh kemungkinan untuk menggunakan kembali kode untuk manfaat kinerja yang tidak sehat.
Melihat semua final
itu dalam kode agak mengganggu pada awalnya dan membutuhkan waktu untuk terbiasa juga. Beberapa rekan tim saya masih sangat terkejut melihat begitu banyak final
kata kunci. Saya berharap ada pengaturan di IDE untuk pewarnaan sintaks khusus untuk itu. Saya akan senang untuk mengubahnya ke beberapa warna abu-abu (seperti anotasi) sehingga mereka tidak akan terlalu mengganggu ketika membaca kode. Eclipse saat ini memiliki warna terpisah untuk return
dan semua kata kunci lainnya tetapi tidak untuk final
.
final
bidang memiliki semantik yang sama dengan menulisvolatile
bidang, dan kemudian membacanya nanti harus memiliki semantik baca yang mudah berubah, ini tidak selalu seperti yang Anda inginkan