Saya sudah pemrograman dalam C dan C ++ untuk beberapa waktu, meskipun saya akan mengatakan saya jauh dari menjadi ahli. Untuk beberapa waktu, saya telah menggunakan berbagai strategi untuk mengembangkan kode saya seperti tes unit, desain uji coba, ulasan kode dan sebagainya.
Ketika saya menulis program pertama saya di BASIC, saya mengetik di blok panjang sebelum menemukan mereka tidak akan berjalan dan itu adalah mimpi buruk untuk debug. Jadi saya belajar menulis sedikit dan kemudian mengujinya.
Hari-hari ini, saya sering menemukan diri saya berulang kali menulis sedikit kode kemudian menggunakan kompiler untuk menemukan semua kesalahan. Tidak apa-apa jika mengambil kesalahan ketik tetapi ketika Anda mulai menyesuaikan jenis parameter dll hanya untuk membuatnya kompilasi Anda dapat mengacaukan desain. Tampaknya juga kompiler masuk ke dalam proses desain padahal seharusnya hanya digunakan untuk memeriksa sintaksis.
Ada bahaya di sini karena terlalu mengandalkan kompiler untuk membuat program saya lebih baik. Apakah ada strategi yang lebih baik dari ini?
Samar-samar saya ingat beberapa waktu lalu sebuah artikel di sebuah perusahaan yang mengembangkan jenis kompiler C di mana file header tambahan juga menentukan prototipe. Idenya adalah bahwa inkonsistensi dalam definisi API akan lebih mudah ditangkap jika Anda harus mendefinisikannya dua kali dengan cara yang berbeda.