Anda mengajukan beberapa pertanyaan.
Haruskah kita mencari kode kebohongan?
Tentu saja!
Haruskah kita membandingkan [kode] dengan dokumentasi yang ada?
Itu tidak akan pernah menyakiti, meskipun seperti yang disebutkan dalam jawaban lain, lebih sering daripada tidak ini akan menyebabkan Anda menemukan masalah dalam dokumentasi , bukan dalam kode .
Atau apakah [kode] biasanya sumber terbaik untuk apa yang perlu dilakukan?
Itu selalu merupakan sumber terbaik untuk apa yang dilakukannya. Sumber terbaik untuk kode apa yang harus dilakukan dapat (kombinasi dari) hal-hal yang berbeda, yang utama adalah:
- Kode itu sendiri;
- Kode panggilan;
- Komentar dalam kode itu;
- Dokumentasi;
- Tes unit;
- Tes integrasi dan regresi;
- Programmer;
- Pengguna akhir;
Sumber mana yang "terbaik" (atau kombinasinya) tergantung pada situasi Anda.
Jika itu adalah kode yang gesit, apakah ia cenderung berbohong, atau bisakah kode itu tidak berbohong sama sekali?
Saya tidak yakin apa yang Anda maksud dengan "kode gesit", AFAIK "gesit" biasanya mengacu pada proses pengkodean. Misalkan Anda berarti "kode yang dibuat dalam proses pemrograman tangkas" maka saya pikir aman untuk mengatakan bahwa itu masih bisa berbohong. Betapa mungkin berbohong, dibandingkan dengan kode yang dibuat dalam proyek-proyek gaya air terjun misalnya adalah masalah subyektif (secara pribadi saya tidak berpikir ada koneksi besar).
Catatan Kaki
Semua hal di atas adalah dengan asumsi bahwa kode dapat berbohong, dan bahwa ini adalah contoh dasar (walaupun sedikit dibuat-buat):
public int DivideByTwo(int input)
{
return input / 3;
}
Ini hanyalah salah satu contoh di mana saya akan mengatakan "kebohongan kode", @ user61852 memiliki beberapa yang lain (kode tidak terjangkau, kompleksitas kode tidak cocok dengan kompleksitas masalah, penamaan yang buruk), dan saya pikir masih banyak lagi. Wikipedia memiliki ringkasan kebohongan yang lumayan , banyak dari mereka dapat ditemukan kode.
Perhatikan bahwa jika Anda bertengkar dengan seseorang, pastikan orang lain tidak bermaksud dengan "kode tidak bisa berbohong" bahwa "kode melakukan apa yang dilakukannya". Pada dasarnya orang lain di sini mendefinisikan menggunakan definisi untuk "berbohong" yang sangat sempit sehingga dapat menyatakan pernyataan "kode tidak bisa berbohong" sebagai axioma / kebenaran dasar. Dalam hal ini mungkin yang terbaik adalah setuju dengan axioma-nya.