Rekayasa Perangkat Lunak

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

3
Bingung tentang definisi 'abstraksi' di OOP
Saya mencoba memahami definisi 'abstraksi' dalam OOP. Saya telah menemukan beberapa definisi utama. Apakah semuanya valid? Apakah salah satunya salah? Saya bingung. (Saya menulis ulang definisi dengan kata-kata saya sendiri). Definisi 1: Abstraksi adalah konsep mengambil beberapa objek dari dunia nyata, dan mengubahnya menjadi istilah pemrograman. Seperti membuat Humankelas dan …



4
Mengapa kode mesin asli tidak dapat dengan mudah didekompilasi?
Dengan bahasa mesin virtual berbasis bytecode seperti Java, VB.NET, C #, ActionScript 3.0, dll. Anda kadang-kadang mendengar betapa mudahnya untuk hanya mengunduh beberapa decompiler dari Internet, menjalankan bytecode melewatinya sekali, dan seringkali, muncul dengan sesuatu yang tidak terlalu jauh dari kode sumber asli dalam hitungan detik. Seharusnya bahasa semacam ini …



8
Apa itu proses peninjauan kode umum dan apa yang dianggap buruk?
Perusahaan saya baru-baru ini mulai melakukan tinjauan kode formal. Prosesnya seperti ini: Anda mengirimkan ke github, meminta permintaan tarik, kode ditinjau oleh sekitar tiga orang, lalu jika semua lewat, kode Anda masuk. Prosesnya tampak adil, namun tiga orang yang melakukan tinjauan kode tampaknya tidak adil. Saya perhatikan bahwa ketika saya …

2
Algoritma untuk pencarian tag cepat
Masalahnya adalah sebagai berikut. Ada satu set entitas E sederhana, masing-masing memiliki satu set tag T terlampir. Setiap entitas mungkin memiliki jumlah tag yang berubah-ubah. Jumlah entitas hampir 100 juta, dan jumlah total tag adalah sekitar 5000. Jadi data awal adalah seperti ini: E1 - T1, T2, T3, ... Tn …

4
Apakah ada perbedaan antara iterable dan enumerable?
Banyak bahasa tampaknya memiliki struktur yang sangat mirip yang disebut iterable atau enumerable. Ini adalah struktur yang dapat diulang atau dicacah, yang bagi saya tampak sangat mirip. Apakah kata-kata ini bersinonim atau ada perbedaan semantik yang halus antara iterable dan enumerable yang membenarkan pilihan istilah?


2
Antarmuka bebas efek samping di atas perpustakaan stateful
Dalam sebuah wawancara dengan John Hughes di mana ia berbicara tentang Erlang dan Haskell, ia memiliki pendapat berikut tentang penggunaan perpustakaan negara di Erlang: Jika saya ingin menggunakan perpustakaan stateful, saya biasanya membangun antarmuka bebas efek samping di atasnya sehingga saya dapat menggunakannya dengan aman di sisa kode saya. Apa …

3
Bagaimana obat generik diimplementasikan?
Ini adalah pertanyaan dari perspektif internal kompiler. Saya tertarik pada obat generik, bukan template (C ++), jadi saya menandai pertanyaan dengan C #. Bukan Java, karena AFAIK generik dalam kedua bahasa berbeda dalam implementasinya. Ketika saya melihat bahasa tanpa generik, itu sangat mudah, Anda dapat memvalidasi definisi kelas, menambahkannya ke …
16 c#  generics 

1
Memahami Pola Pengunjung
Saya memiliki hierarki kelas yang mewakili kontrol GUI. Sesuatu seperti ini: Control->ContainerControl->Form Saya harus mengimplementasikan serangkaian algoritme yang bekerja dengan objek melakukan berbagai hal dan saya berpikir bahwa pola Pengunjung akan menjadi solusi terbersih. Mari kita ambil contoh algoritma yang membuat representasi Xml dari hierarki objek. Dengan menggunakan pendekatan 'klasik' …

5
Fitur "Seluruh tim" C ++?
Di C ++, fitur-fitur seperti pengecualian memengaruhi seluruh program Anda: Anda bisa menonaktifkannya di seluruh program Anda , atau Anda perlu mengatasinya di seluruh kode Anda. Seperti artikel terkenal tentang C ++ Report menuliskannya: Kontra-intuitif, bagian sulit dari pengkodean pengecualian bukanlah lemparan dan tangkapan eksplisit. Bagian yang sangat sulit dari …

2
Konteks & Domain Terbatas DDD?
Saya telah bekerja dalam aplikasi yang relatif kompleks dengan 10 tabel database (Agregat, Entitas / Nilai Objek) dan menerapkan DDD. Pada titik ini pada dasarnya tampak DDD-Lite yang berarti bahwa ada Layanan Aplikasi / Domain, Model Domain (Entitas, Nilai Objek), dan Repositori. Saya mengambil buku Menerapkan DDD dan hal pertama …

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.