Rekayasa Perangkat Lunak

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


10
Bagaimana cara menguji tes?
Kami menguji kode kami untuk membuatnya lebih benar (sebenarnya, kecil kemungkinannya akan salah ). Namun, tes juga merupakan kode - mereka juga dapat mengandung kesalahan. Dan jika tes Anda buggy, mereka hampir tidak membuat kode Anda lebih baik. Saya dapat memikirkan tiga jenis kemungkinan kesalahan dalam pengujian: Kesalahan logis, ketika …

14
Apakah TDD benar-benar berfungsi untuk proyek yang kompleks?
Saya mengajukan pertanyaan ini mengenai masalah yang saya alami selama proyek TDD. Saya perhatikan tantangan berikut saat membuat unit test. Menghasilkan dan memelihara data tiruan Sulit dan tidak realistis untuk mempertahankan data tiruan besar. Ini bahkan lebih sulit ketika struktur basis data mengalami perubahan. Menguji GUI Bahkan dengan MVVM dan …
53 tdd 

4
Apa yang terjadi jika fitur yang digabungkan ke dalam pengembangan ditunda oleh manajemen?
Kami baru-baru ini memiliki masalah di mana fitur untuk aplikasi web kami (pendaftaran otomatis) ditunda oleh manajemen karena mereka merasa permulaannya terlalu "dingin" tetapi mereka menginginkan semua fitur lain yang telah kami kerjakan untuk ditayangkan. Masalahnya adalah bahwa fungsionalitas ini telah digabungkan menjadi pengembangan ketika selesai bersama dengan semua fitur …

1
Konvensi Penamaan Protokol Swift [ditutup]
Berasal dari latar belakang c #, saya terbiasa menggunakan istilah "antarmuka" untuk menggambarkan suatu objek tanpa implementasi yang mendefinisikan perilaku. Di c #, konvensi ini untuk menambahkan nama antarmuka dengan "I", seperti pada IEnumerable, dll. Tentu saja, konsep tersebut memiliki nama yang berbeda dalam bahasa yang berbeda. Dalam Swift, konsep …


7
Pengembang solo vs. pengembang tim: haruskah saya pindah? [Tutup]
Saya bekerja sebagai pengembang solo di sebuah perusahaan kecil. Ada lebih dari cukup pekerjaan, tetapi hal yang sama tidak berlaku untuk uang. Dengan demikian, saya tidak akan melihat kolega baru dalam waktu dekat. Saya bertanggung jawab atas semua yang berhubungan dengan operasi TI. Ini melibatkan pengembangan dan pemeliharaan perangkat lunak …

5
Haruskah saya memasukkan nama file untuk dibuka, atau membuka file?
Misalkan saya memiliki fungsi yang melakukan hal-hal dengan file teks - misalnya membaca dari itu dan menghapus kata 'a'. Saya bisa memberikannya nama file dan menangani pembukaan / penutupan fungsi, atau saya bisa memberikannya file yang dibuka dan berharap siapa pun yang memanggilnya akan berurusan dengan menutupnya. Cara pertama sepertinya …

6
Apakah menggunakan ekspresi Lambda bila memungkinkan dalam java praktik yang baik?
Saya baru-baru ini menguasai ekspresi Lambda yang diperkenalkan di java 8. Saya menemukan bahwa setiap kali saya menggunakan antarmuka fungsional, saya cenderung selalu menggunakan ekspresi Lambda alih-alih membuat kelas yang mengimplementasikan antarmuka fungsional. Apakah ini dianggap praktik yang baik? Atau situasi mereka di mana menggunakan Lambda untuk antarmuka fungsional tidak …
52 java  lambda 

4
Apa kepintaran yang tepat dari pipa Unix
Saya telah mendengar kisah bagaimana Douglas Mcllroy datang dengan konsep dan bagaimana Ken Thompson menerapkannya dalam satu malam. Sejauh yang saya mengerti, pipa adalah panggilan sistem yang berbagi sepotong memori antara dua proses di mana satu proses menulis dan lainnya membaca dari. Sebagai seseorang yang tidak terbiasa dengan OS internal …

9
Lempar pengecualian atau biarkan kode gagal
Saya bertanya-tanya apakah ada pro dan kontra terhadap gaya ini: private void LoadMaterial(string name) { if (_Materials.ContainsKey(name)) { throw new ArgumentException("The material named " + name + " has already been loaded."); } _Materials.Add( name, Resources.Load(string.Format("Materials/{0}", name)) as Material ); } Metode itu, untuk masing-masing name, harus dijalankan hanya sekali. …
52 exceptions 

11
Bagaimana cara menghindari refactoring cascading?
Saya punya proyek. Dalam proyek ini saya ingin memperbaiki itu untuk menambahkan fitur, dan saya refactored proyek untuk menambahkan fitur. Masalahnya adalah ketika saya selesai, ternyata saya perlu membuat sedikit perubahan antarmuka untuk mengakomodasi itu. Jadi saya membuat perubahan. Dan kemudian kelas konsumsi tidak dapat diimplementasikan dengan antarmuka saat ini …


5
Mengapa pointer pintar penghitungan referensi sangat populer?
Seperti yang saya lihat, smart pointer digunakan secara luas di banyak proyek C ++ dunia nyata. Meskipun beberapa jenis pointer cerdas jelas bermanfaat untuk mendukung RAII dan transfer kepemilikan, ada juga kecenderungan menggunakan pointer bersama secara default , sebagai cara "pengumpulan sampah" , sehingga pemrogram tidak harus memikirkan alokasi sebanyak …

14
Apakah mempelajari bahasa alami apa pun akan memajukan karier pemrograman Anda? [Tutup]
Tampak jelas bahwa bahasa Inggris adalah bahasa internasional yang dominan untuk pemrograman berdasarkan pada pertanyaan P.SE sebelumnya (meskipun komentar yang sangat terangkat dengan tepat menunjukkan bahwa mengajukan pertanyaan seperti itu di situs yang didominasi bahasa Inggris akan condongkan hasilnya). Namun, apakah ada manfaatnya mempelajari bahasa asing untuk pengembangan perangkat lunak? …

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.