Rekayasa Perangkat Lunak

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

2
Apakah praktik yang baik untuk menyimpan nomor versi perangkat lunak di VCS?
Versi produk, seperti v1.0.0.100, tidak hanya mewakili rilis produksi perangkat lunak yang unik, tetapi juga membantu mengidentifikasi rangkaian fitur dan tahapan perbaikan terbaru untuk produk tersebut. Saat ini saya melihat dua cara untuk mempertahankan versi akhir paket / build / biner suatu produk: Kontrol Versi. File di suatu tempat menyimpan …

4
Mengapa tidak membuat kueri non-parameterisasi mengembalikan kesalahan?
Injeksi SQL adalah masalah keamanan yang sangat serius, sebagian besar karena sangat mudah untuk mendapatkannya salah: cara yang jelas dan intuitif untuk membangun kueri yang memasukkan input pengguna membuat Anda rentan, dan Cara yang Benar untuk memitigasinya mengharuskan Anda untuk mengetahui tentang parameter pertanyaan dan injeksi SQL terlebih dahulu. Tampak …
22 security  sql  rdbms 

5
Bagaimana saya bisa mengelola pengguna sampah?
Saya membuat sistem yang diharapkan akan memiliki banyak pengguna. Kami khawatir basis data kami akan mengisi pengguna sampah yang menggunakan nama pengguna dengan permintaan tinggi, atau mungkin mereka hanya mendaftar dan tidak pernah kembali. Saya tahu ini umum, saya melakukannya sendiri, karena saya memiliki 3 akun google, tetapi saya hanya …


2
Apakah kepemilikan fitur merupakan praktik yang baik?
Baru-baru ini di perusahaan saya disarankan bahwa satu pengembang harus fokus (dan hanya satu) dalam satu fitur. Itu akan berarti sesuatu seperti mengesampingkan pengembang dari rutinitas tim normal, melepaskannya dari beberapa tanggung jawab lain (rapat dan semacamnya) dan orang ini akan menjadi "satu-satunya" yang bertanggung jawab atas fitur tersebut, bijaksana …



4
Apakah git "Aturan Emas untuk Rebasing" begitu penting?
Saya baru-baru ini berdiskusi dengan orang-orang yang benar-benar menentang strategi rebase cabang fitur di GIT. Tampaknya menjadi pola yang diterima untuk menggunakan rebase hanya untuk cabang lokal, swasta tetapi tidak pernah menggunakannya ketika ada beberapa orang yang bekerja pada fitur & cabang yang sama, seperti yang disebut "Peraturan Emas untuk …
22 git 

5
Apakah implementasi agnostik tetap benar-benar layak?
Saya punya proyek yang saya kerjakan saat ini menggunakan Tomcat, Spring 4, Spring Security, MySQL, dan JPA w / Hibernate. Saya memilih JPA dari sudut pandang bahwa itu seharusnya membuat swapping implementasi yang mendasari penyedia ORM mulus, atau setidaknya kurang menyakitkan. Saya akan mengatakan bahwa ini secara mental menggunakan spec …



3
Apakah ada bahasa OO tanpa warisan?
Selama ulasan kode hari ini, seorang rekan saya mengatakan sesuatu yang menarik: prototypehanya berguna ketika Anda membutuhkan warisan - dan kapan warisan merupakan ide bagus ? Saya memikirkan hal ini dan saya menyadari bahwa saya biasanya menggunakan warisan untuk menyiasati kode yang awalnya dirancang dengan buruk. Gaya OO modern lebih …


2
Mengapa Scala harus kembali tetapi tidak istirahat dan melanjutkan
Scala tidak memiliki breakatau continue, sehingga beberapa perilaku berulang membutuhkan lebih banyak pemikiran. Mengakhiri loop lebih awal membutuhkan rekursi ekor, pengecualian, atau scala.util.control.Breaks(yang menggunakan pengecualian). Alasan untuk ini adalah bahwa, seperti goto, mereka adalah konstruksi aliran yang mengaburkan aliran, dan dapat dicapai dengan cara yang lebih baik, tidak terlalu mengejutkan. …

2
Cara terbersih untuk melaporkan kesalahan di Haskell
Saya sedang belajar Haskell, dan saya telah menemukan tiga cara berbeda dalam berurusan dengan kesalahan dalam fungsi yang saya tulis: Saya hanya bisa menulis error "Some error message.", yang melempar pengecualian. Saya dapat mengembalikan fungsi saya Maybe SomeType, di mana saya mungkin atau tidak dapat mengembalikan apa yang ingin saya …

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.