Mengapa Design By Kontrak Is Not Online
Arg. Design by Kontrak telah sekitar untuk waktu yang lama, namun tidak pernah mendapatkan popularitas paradigma pemrograman lain. Walaupun saya tidak sepenuhnya mengerti mengapa karena pengujian unit suplemen begitu baik dan meningkatkan kualitas perangkat lunak secara keseluruhan, saya kira bahwa saya dapat mengerti beberapa tebakan.
<Berteriak-teriak>
Yang pertama adalah karena cocok (yang adalah apa yang kita sebut MEREKA tipe manajemen di blog ini [ini tidak termasuk beberapa tipe manajemen yang saya suka]). Suits tidak suka DBC. Suits tidak DBC karena itu adalah sesuatu yang memerlukan sedikit partisipasi pada akhir mereka, dan karena itu mereka memiliki sedikit wawasan ke dalam keseluruhan proses. Sejak setelan cenderung menjadi orang-orang yang baik secara langsung bertanggung jawab atas proyek doa, cenderung menjadi sponsor proyek secara keseluruhan, mereka tidak penggemar ketika mereka tidak bisa memiliki peran langsung dalam proses pengembangan perangkat lunak. Sepanjang baris yang sama, pakaian cenderung untuk tidak datang dari latar belakang pemrograman sendiri, atau ada latar belakang pemrograman begitu fricking kuno itu benar-benar tak berguna, karena itu, DBC cenderung untuk menembak di atas kepala mereka. Dengan cocok untuk, biaya adalah raja, dan DBC, jika diadaptasi, biaya akan lebih banyak waktu dan uang. Ketika Anda mengatakan cocok untuk anda akan mengambil sepuluh menit tambahan untuk mengembangkan sesuatu, di sini adalah bagaimana percakapan umumnya akan pergi:
[pengembang] saya akan memikirkan kembali pendekatan pembangunan. Saya akan menggunakan beberapa prinsip DBC sehingga metode saya memiliki kondisi pra-dan pasca-kondisi. Ini akan membuat lebih mudah untuk menulis unit test karena pada dasarnya akan membangun sebuah tes memanfaatkan bagi saya untuk digunakan.
[setelan] Apapun. berapa lama waktu yang dibutuhkan.
[pengembang] aku akan memperkirakan, tetapi tidak lebih dari beberapa jam
(diam, pengembang dapat mengatakan ini akan lebih seperti kentut di gereja)
[setelan] Apakah aplikasi saat ini bekerja?
[pengembang] Tentu saja, tetapi akan meningkatkan keandalan perangkat lunak, jadi mungkin penting untuk dipertimbangkan.
[setelan] Tapi sekarang kerjanya bukan?
[pengembang] Bekerja tidak sama dengan kehandalan atau kekokohan.
[setelan] Jika berhasil, Anda harus mulai bekerja pada persyaratan berikutnya.
[pengembang] (senjata mengangkat) baik-baik saja!
Jadi, itulah alasan pertama yang menurut saya DBC belum pernah tertangkap, meskipun hanya NATURAL.
Kedua, saya tidak berpikir orang menemukan yang menarik, dan kebanyakan orang melakukan pembangunan SharePoint hanya tidak CARE. Dan klien tidak CARE. Itu alasan yang sama saya pikir outsourcing fricking melepas begitu mengagumkan (ini adalah pernyataan yang longgar). Orang-orang yang bersedia mengorbankan kualitas dari perangkat lunak untuk waktu dan uang. Ini tidak seperti produk lain karena jarang bahwa orang bahwa perangkat lunak yang disampaikan untuk benar-benar tampak di bawah tenda, dan berkata, "Hei, apa !?!?!?". Jika berjalan, ia berjalan. Jika rusak, oh well, walaupun mungkin biaya lebih untuk memperbaiki aplikasi daripada pasti akan meluangkan lebih banyak waktu di tempat pertama.
Ketiga, orang tidak menyadari bahwa Anda dapat melakukan Kontrak Driven Design (CDD) dengan TDD. Kau tahu, ini mungkin.
Keempat, orang-orang yang bingung dengan DBC unit testing. Mereka mungkin terlihat serupa, tetapi mereka TIDAK sama. CDD adalah pertama otomatis, karena data acak ini dapat langsung berlalu dan kontrak tertentu bertindak sebagai tes baju zirah. Ini akan membantu Anda menemukan bug perangkat lunak yang mungkin tidak anda jika tidak ditemukan dalam kode Anda. Untuk memperpanjang yang lebih besar, CDD pasangan dengan TDD (seperti yang dijelaskan di atas mengeluh) dalam arti bahwa ketika Anda menjalankan kode unit test pada kendala kontrak Anda akan dipertimbangkan.
Terakhir, karena saya bosan menulis tentang ini kebanyakan klien bisa memberikan apa-apa tentang dokumentasi API. Mengapa? Aku tidak tahu, tetapi mereka benar-benar tidak bisa. DBC seperti membangun kontrak Anda ke dokumentasi API Anda (yang umumnya adalah otomatis) sangat meningkatkan pembacaan kode Anda seperti yang diserahkan dari pengembang ke pengembang.
Ugh, aku sudah selesai menulis tentang hal ini.
</ Berteriak-teriak>
2 Komentar »
RSS feed untuk komentar di posting ini. Trackback URL































Wow. Saya kira saya menyaksikan percakapan ini. Ya, setelan = buruk.
Komentar oleh Chooklay - 27 Juni 2007 @ 4:25
Ya, Anda cukup banyak yang
Comment by Adam Buenz - 2 Juli 2007 @ 11:57