Rekayasa Perangkat Lunak

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

3
Banyak Program Kecil Terhubung melalui Soket vs Satu Program Besar
Saya berada di awal proyek yang melibatkan pembacaan dari beberapa sensor dan menggabungkan data dari sensor tersebut bersama-sama. Secara keseluruhan akan ada 4 sensor yang terhubung melalui USB dan webcam, juga terhubung melalui USB. Salah satu kolega saya sangat vokal tentang betapa menyenangkannya membagi program menjadi bagian-bagian yang lebih kecil …
8 design 


4
Apakah variabel `static` file-scope dalam C seburuk variabel global` extern`?
Dalam C, Anda akan sering / kadang-kadang (karena gaya) menggunakan staticvariabel lingkup file di mana Anda akan menggunakan variabel anggota kelas pribadi di C ++. Saat melakukan penskalaan ke program multithreaded, cukup menambahkan thread_localC11 atau ekstensi yang didukung lama __threadcocok. Saya tahu Anda bisa melakukan hal yang persis sama dalam …
8 c  globals 


1
Algoritma pengelompokan
Kami telah mengembangkan algoritma yang bergantung pada waktu check-in dari beberapa pekerja dan tempat tinggal mereka, menghitung cara untuk mengelompokkan mereka menjadi beberapa kendaraan dan rute yang harus diikuti oleh kendaraan untuk membawa mereka ke tempat kerja. Ini telah dicapai dengan menggunakan algoritma TSP (Traveling Salesman Problem) dan beberapa penyesuaian …

3
Haruskah saya membuat pengecualian sendiri, atau mengooptasi pengecualian serupa untuk tujuan yang agak non-standar?
Ini adalah pertanyaan desain umum, tapi saya fokus pada C # dan .NET karena itu adalah bahasa yang saya gunakan saat ini. Haruskah saya membuat sendiri, kelas pengecualian baru, atau mengkooptasi kerangka kerja yang ada untuk tujuan yang sedikit berbeda? Sebagai contoh, saya mendapati diri saya membutuhkan pengecualian yang menunjukkan …

2
Fitur opsional: metode default atau antarmuka terpisah
Antarmuka khusus tampaknya menjadi cara yang baik untuk mengekspos fitur opsional dalam hierarki jenis khusus domain. Namun, mereka menghambat penggunaan dekorator dan pola komposit, yang juga umum dalam hierarki semacam ini. Terutama, mungkin tidak ada yang ingin mengimplementasikan dekorator / komposit untuk setiap kemungkinan kombinasi antarmuka ini, jadi lebih sering …

4
Kapan Undefined Behavior in C melompati penghalang kausalitas
Beberapa kompiler C hiper-modern akan menyimpulkan bahwa jika suatu program akan memanggil Perilaku Tidak Terdefinisi ketika diberi input tertentu, input seperti itu tidak akan pernah diterima. Akibatnya, kode apa pun yang tidak relevan kecuali jika input tersebut diterima dapat dihilangkan. Sebagai contoh sederhana, diberikan: void foo(uint32_t); uint32_t rotateleft(uint_t value, uint32_t …

1
Mempertahankan pemisahan masalah
Saya membuat aplikasi C # pertama saya dan saya mengalami sedikit kesulitan dengan pemisahan kekhawatiran. Saya mengerti konsepnya, tetapi saya tidak tahu apakah saya melakukannya dengan benar. Saya memiliki ini sebagai contoh cepat untuk menggambarkan pertanyaan saya. Dalam aplikasi seperti game, ada kelas utama yang menjalankan loop utama, seperti Program …
8 design 


4
Apa strategi pengujian yang tepat dalam tim Agile Scrum / Kanban?
Masalahnya adalah: Tim, saya bekerja di memiliki rasio 10 pengembang untuk 2 penguji yang berarti kita akan mengeluarkan kode lebih cepat daripada "Tes" dilakukan. Jadi, Apa yang harus menjadi pendekatan yang tepat untuk melacak aktivitas dalam skenario seperti itu menurut para pakar tangkas? Ketakutan saya adalah bahwa sebentar lagi hari …
8 testing  agile 



1
Menangani Kode Masuk di Lingkungan Sumber Terkendali
Sekadar pertanyaan singkat, semoga: Tim saya mengelola perangkat lunak yang menggunakan penyebaran ClickOnce dan ditandatangani dengan sertifikat. Kami menyimpan sertifikat publik yang sebenarnya digunakan pada mesin terpisah yang hanya digunakan untuk penandatanganan. Itu bekerja dengan baik. Namun, di mana kami kadang-kadang mengalami masalah, adalah ketika seseorang harus menandatanganinya secara lokal …
8 git 


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.