Rekayasa Perangkat Lunak

T&J untuk profesional, akademisi, dan siswa yang bekerja dalam siklus hidup pengembangan sistem


2
Apa perbedaan antara Mixin dan Trait?
Dari apa yang saya tahu dari Scala dan Hack- Mixin: Dapat memiliki status (mis. Properti instance) Hanya bisa memberikan metode konkret Dapat memiliki konstruktor, yang dipanggil dalam urutan yang sama dengan kelas mereka dicampur Jika Adicampur Bdan C, A instanceof B == falsedanA instanceof C == false Sifat: Hanya dapat …

3
Apa pendekatan yang benar untuk menguji kelas dengan warisan?
Dengan asumsi saya memiliki struktur kelas berikut (terlalu disederhanakan): class Base { public: Base(int valueForFoo) : foo(valueForFoo) { }; virtual ~Base() = 0; int doThings() { return foo; }; int doOtherThings() { return 42; }; protected: int foo; } class BarDerived : public Base { public: BarDerived() : Base(12) { …

7
Praktik terbaik untuk "melanjutkan" dari dalam lingkaran bersarang?
Berikut adalah contoh yang disederhanakan. Pada dasarnya, ia memeriksa string dari daftar string. Jika cek lolos, itu akan menghapus string itu ( filterStringOut(i);), dan tidak perlu lagi melanjutkan pemeriksaan lainnya. Demikian continueke string selanjutnya. void ParsingTools::filterStrings(QStringList &sl) { /* Filter string list */ QString s; for (int i=0; i<sl.length(); i++) …

4
Komunikasi antara komponen yang dipisahkan menggunakan peristiwa
Kami memiliki Aplikasi Web di mana kami memiliki banyak (> 50) komponen Web kecil yang berinteraksi satu sama lain. Agar semuanya dipisahkan, kita memiliki aturan bahwa tidak ada komponen yang dapat langsung merujuk yang lain. Alih-alih, komponen mengaktifkan peristiwa yang kemudian (dalam aplikasi "utama") terhubung untuk memanggil metode komponen lain. …

2
Apakah “terlalu banyak parameter” merupakan masalah visual atau logis?
menurut Apakah ada pedoman tentang berapa banyak parameter yang harus diterima fungsi? , suatu metode tidak boleh memiliki terlalu banyak parameter. Namun, beberapa jawaban menyarankan masalah ini dapat diselesaikan dengan pola builder: Builder b=new Builder(); b.setParm1("a"); b.setParm2("b"); . . . Obj obj=b.createObj(); atau merangkum parameter dalam satu objek. ObjectParam op=new …

3
Apakah praktik yang baik untuk menggunakan kontrol pengguna untuk menyusun formulir WPF bahkan jika kontrol pengguna ini hanya digunakan sekali?
Saya mengembangkan aplikasi WPF menggunakan MVVM dan saya belajar bagaimana melakukan hal-hal terbaik. Saya memiliki formulir WPF dengan pemilih, dua daftar dengan bidang pencarian, dan beberapa elemen lainnya. Saat ini semua dalam satu bentuk dan berfungsi. Tetapi sekarang VM untuk formulir itu memiliki lebih dari 800 baris dan belum selesai. …
8 c#  wpf  user-control 

1
Jika Anda mengelola proyek sumber terbuka berlisensi BSD, bagaimana Anda melindungi seseorang yang secara ilegal berkontribusi dengan kode lisensi GPL?
Proyek sumber terbuka yang dilisensikan di bawah BSD, MIT atau lisensi permisif lainnya menerima kontribusi kode dari komunitas. Bagaimana saya bisa mencegah seseorang mengambil kode berlisensi GPL yang bukan miliknya dan mengirimkannya ke proyek berlisensi BSD saya? Saya tidak tahu bahwa sumbangan itu dicuri dari proyek berlisensi GPL dan menerimanya. …

7
Haruskah saya menulis tes ketika saya bisa membuktikan kebenaran kode?
Orang mengatakan bahwa "berbicara tentang TDD tidak berhasil, jika Anda ingin meyakinkan seseorang untuk TDD, tunjukkan hasil". Namun, saya sudah mendapatkan hasil yang bagus tanpa TDD. Menunjukkan kepada saya bahwa orang yang menggunakan TDD mendapatkan hasil yang baik tidak akan meyakinkan, saya ingin melihat bahwa orang yang menulis TDD dan …
8 tdd 

2
Mempertahankan dan mendokumentasikan titik akhir API dari banyak aplikasi dalam arsitektur layanan mikro
Saya pikir salah satu titik sakit terbesar dalam bekerja dengan layanan microsoft adalah memastikan bahwa API didokumentasikan dengan baik dan API tidak mengubah perilaku mereka tanpa mempengaruhi aplikasi hilir. Masalah ini menjadi bertambah ketika Anda memiliki banyak layanan yang saling bergantung satu sama lain. Mungkin pada saat itu Anda melakukan …



7
Bagaimana menangani skrip “berguna sekali pakai” ditangani?
Anda tahu bagaimana kelanjutannya: ada beberapa tugas kecil yang berulang yang Anda temukan cara untuk mengotomatisasi 95% pekerjaan dengan cepat. Anda membuat skrip, menjalankannya, secara manual memperbaiki output, dan Anda selesai. Tentu saja Anda tidak melakukan skrip, karena tidak cocok dengan persyaratan kualitas perusahaan (tidak memiliki dokumentasi, juga tidak memiliki …



Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.