Rekayasa Perangkat Lunak

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

2
Mengevaluasi apakah akan menulis tes unit atau tes integrasi terlebih dahulu pada proyek langit-biru / prototipe
Sesuatu yang saya perhatikan baru-baru ini adalah ketika saya melakukan jenis proyek berikut: Saat memulai proyek Bekerja pada MVP / prototipe Menambahkan fitur yang tidak sepenuhnya ditentukan Bekerja pada proyek skala kecil Sebagai referensi, saya sedang mengerjakan proyek Python sekarang yang saat ini memiliki ~ 1k baris kode, termasuk beberapa …



1
Membuat pernyataan masalah yang bagus
<backstory> Saya mengambil sebuah buku berjudul Code Complete di toko buku bekas tempo hari karena saya dengar itu buku yang bagus, dan mulai membacanya. Setelah sekitar 10 halaman saya menyadari bahwa saya agak bodoh tentang proyek baru-baru ini yang telah saya kerjakan. Sedikit klarifikasi yang harus saya masukkan pada saat …

2
Lapisan layanan aplikasi memanggil fungsi database. Arsitektur yang buruk?
Skenario: Stack: Java, Spring, Hibernate. Model: Aplikasi Client-Server. Pola: Model-View-Controller (MVC). Kelas-kelas Lapisan Layanan memiliki tiga perilaku: Beberapa layanan memiliki aturan bisnis dalam metode dan mendelegasikan ketekunan ke aplikasi. Suka: EntityManager.save (entitas); Beberapa layanan cukup memanggil fungsi basis data (melewati parameter) Seperti: CallableStatement cls = con.prepareCall ("{call databaseFunction (args)}"); Beberapa …

3
Di Java 8, apakah lebih baik menggunakan ekspresi metode referensi atau metode mengembalikan implementasi antarmuka fungsional?
Java 8 menambahkan konsep antarmuka fungsional , serta berbagai metode baru yang dirancang untuk mengambil antarmuka fungsional. Contoh dari antarmuka ini dapat dibuat secara ringkas menggunakan ekspresi referensi metode (misalnya SomeClass::someMethod) dan ekspresi lambda (misalnya (x, y) -> x + y). Seorang kolega dan saya memiliki pendapat yang berbeda mengenai …


1
Konvensi penamaan untuk paket pengujian
Kami sebenarnya menamai paket pengujian kami seperti rekan-rekan mereka untuk menguji. Jadi kita berakhir dengan struktur ini: src/main/java com.hello.world helloWorld.java src/test/java com.hello.world helloWorldTest.java Saya selalu merasa bahwa ini tidak cukup pintar karena Anda tidak dapat membedakan antara "test" dan "to-test" jika hanya disediakan dengan nama paket. Di sisi lain saya …
11 naming  packages 

4
Menghasilkan kunci sortir saat menyusun ulang item
Kami memiliki sejumlah item yang dapat diatur oleh pengguna akhir menjadi pesanan yang diinginkan. Set item tidak teratur, tetapi setiap item berisi kunci pengurutan yang dapat dimodifikasi. Kami sedang mencari algoritme yang memungkinkan pembuatan kunci sortir baru untuk item yang ditambahkan atau dipindahkan menjadi item pertama, item terakhir, atau antara …
11 algorithms 

2
Mengapa ifstream.eof () tidak mengembalikan TRUE setelah membaca baris terakhir file?
Ketika seorang pemula mulai membaca ifstreams, instingnya adalah membaca file menggunakan loop yang biasanya terlihat seperti ini: while (!ifstream.eof() { ... } Namun, ketika saya menggunakan kode ini saya perhatikan bahwa itu tidak berhenti sampai membaca baris terakhir file dua kali. Pemrogram C ++ mencatat bahwa ini sebenarnya bukan bagaimana …
11 c++ 

5
Bagaimana memperlakukan validasi referensi antar agregat?
Saya sedikit kesulitan dengan referensi antar agregat. Mari kita asumsikan agregat Carmemiliki referensi ke agregat Driver. Referensi ini akan dimodelkan dengan memiliki Car.driverId. Sekarang masalah saya adalah seberapa jauh saya harus memvalidasi pembuatan Caragregat di CarFactory. Haruskah saya percaya bahwa yang lulus DriverIdmerujuk ke yang sudah ada Driver atau haruskah …

2
Praktik terbaik untuk kontrol versi di Unity?
Saya agak bingung bagaimana cara menggunakan kontrol versi dengan Unity, terutama dengan objek seperti adegan atau prefab yang bukan hanya kode. Kami memiliki masalah baru-baru ini ketika rekan saya dan saya sedang mengerjakan bagian berbeda dari adegan yang sama. yang mengakibatkan konflik, percabangan dan penggabungan yang berlimpah. Pada akhirnya, revisi …

4
Cara optimal untuk menggunakan operator bersyarat nol dalam ekspresi boolean
Anda sedang menulis ekspresi boolean yang mungkin terlihat seperti ini: team.Category == "A Team" && team?.Manager?.IsVietnamVet public class Manager { public bool IsVietnamVet { get; set; } } public class Team { public string Category { get; set; } public Manager Manager { get; set; } } ... dan Anda …
11 c# 

1
Bagaimana Inversi Kontrol terkait dengan Ketergantungan Inversi
Dalam banyak artikel di seluruh web, istilah Inversi Kontrol dan Ketergantungan Prinsip Inversi tampaknya digabungkan dan digunakan sebagai sinonim (kebingungan lebih lanjut ditegakkan oleh alat yang disebut "DI-Containers" dan "IoC-Containers"). Artikel Wikipedia melakukan pekerjaan yang bagus untuk menjelaskan bahwa IoC tidak sama dengan DI: inversion of control (IoC) menjelaskan desain …


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.