Rekayasa Perangkat Lunak

14
TDD untuk pemrosesan batch: Bagaimana cara melakukannya?

Saya suka "merah / hijau / refactor" untuk RoR, dll. Pekerjaan harian saya melibatkan pemrosesan batch file yang sangat besar dari pihak ketiga dengan python dan alat kustom lainnya. Churn pada atribut dari file-file ini tinggi, sehingga ada banyak perbaikan / peningkatan yang diterapkan cukup...

14
Duplikasi kode tanpa abstraksi yang jelas

Pernahkah Anda menemukan kasus duplikasi kode di mana, setelah melihat garis-garis kode, Anda tidak bisa cocok dengan abstraksi tematik untuknya yang dengan setia menggambarkan perannya dalam logika? Dan apa yang Anda lakukan untuk mengatasinya? Ini adalah duplikasi kode, jadi idealnya kita perlu...

14
Unit menguji komponen internal

Sejauh mana Anda menguji komponen internal / pribadi dari kelas / modul / paket / dll? Apakah Anda mengujinya sama sekali atau hanya menguji antarmuka ke dunia luar? Contoh internal ini adalah metode pribadi. Sebagai contoh, bayangkan parser keturunan rekursif , yang memiliki beberapa prosedur...

14
Seberapa efektif "menjual" desain yang baik dalam pertemuan besar

Sering kali saya menyaksikan tragedi yang menyedihkan. Inilah yang terjadi: Tinjauan desain tim untuk proyek baru. Saya melihat desain sederhana yang memiliki beberapa lubang. Dengan santai saya menyebutkan lubang dan cara untuk menghindarinya. Peringatan diabaikan dengan komentar seperti "yang...

14
Waktu yang dialokasikan untuk ulasan kode

Jika Anda melakukan tinjauan kode Berapa banyak waktu yang Anda habiskan untuk review kode, dibandingkan dengan implementasi? Berapa banyak perubahan yang menjalani tinjauan kode? Anda pikir itu terlalu / harus lebih? Apakah ada studi tentang efektivitas? Terima kasih atas jawabannya, sulit...

14
Seberapa buruk tidak Buang () SqlConnections?

Secara pribadi, saya keluar dalam sarang jika saya tidak meletakkan objek ADO yang mengimplementasikan IDisposable dalam menggunakan pernyataan. Tetapi pada kontrak saya saat ini, saya telah menemukan bahwa kerangka kerja perusahaan mereka "kode penyedia akses data" tidak 1) menerapkan IDisposable...