Pertanyaan yang diberi tag «design»

Pertanyaan tentang penyelesaian masalah dan perencanaan untuk solusi melalui desain perangkat lunak.

3
Jumlah Jenis vs Polimorfisme
Tahun terakhir ini saya mengambil lompatan dan belajar bahasa pemrograman fungsional (F #) dan salah satu hal yang lebih menarik yang saya temukan adalah bagaimana hal itu mempengaruhi cara saya mendesain perangkat lunak OO. Dua hal yang paling saya lewatkan dalam bahasa OO adalah pencocokan pola dan jumlah. Di mana-mana …

3
Apakah OK untuk membuat objek Entity Framework DataContext dan membuangnya di blok menggunakan di setiap metode CRUD saya?
Saya sedang membangun aplikasi WPF yang mengimplementasikan fitur-fitur berikut: Ambil input pengguna dan baca data dari basis data melakukan beberapa perhitungan di atasnya Perlihatkan kepada pengguna dalam berbagai jenis tampilan dan tulis perubahan kembali ke db Arsitektur yang diajukan: Database -> Kerangka Entitas -> Repositori -> Logika Bisnis -> Layanan …
10 c#  design  architecture  wpf 

6
Apakah Dijkstra berniat untuk modularisasi kode, ketika ia menulis tentang pemisahan kekhawatiran?
Pertama, saya membaca kutipan makalah Edsger W. Dijkstra tahun 1974 "Tentang peran pemikiran ilmiah": Biarkan saya mencoba menjelaskan kepada Anda, apa yang menurut selera saya adalah karakteristik untuk semua pemikiran cerdas. Yaitu, bahwa seseorang bersedia untuk mempelajari secara mendalam suatu aspek materi pelajaran seseorang secara terpisah demi konsistensinya sendiri, sepanjang …

2
Granularitas Pengecualian
Saya mengalami perdebatan antara beberapa teman dan saya. Mereka lebih suka pengecualian umum seperti ClientErrorExceptiondan ServerErrorExceptiondengan detail sebagai bidang pengecualian, sedangkan saya lebih suka membuat hal-hal lebih spesifik. Sebagai contoh, saya mungkin memiliki beberapa pengecualian seperti: BadRequestException AuthenticationFailureException ProductNotFoundException Masing-masing dibangun berdasarkan kode kesalahan yang dikembalikan dari API. Mengikuti Kelebihan …


2
Apakah ini pendekatan yang baik untuk hirarki kelas berbasis "pImpl" di C ++?
Saya memiliki hierarki kelas yang ingin saya pisahkan antarmuka dari implementasinya. Solusi saya adalah memiliki dua hierarki: hierarki kelas pegangan untuk antarmuka dan hierarki kelas non-publik untuk implementasi. Kelas pegangan dasar memiliki pointer-to-implementasi yang kelas pegangan turunan dilemparkan ke pointer dari tipe turunan (lihat fungsi getPimpl()). Inilah sketsa solusi saya …
9 design  c++  c++11 

3
Apakah OK untuk antarmuka bergantung pada kelas beton?
Saya membuat antarmuka di Jawa untuk penangan kesalahan khusus. Ingin meneruskan objek kesalahan argumen tapi saya perlu menjadi anak Exceptionkelas. Apakah saya tetap bisa menggunakan nama kelas yang saya tentukan di antarmuka? Tidakkah itu membuatnya kurang dari antarmuka dalam hal tidak tergantung pada implementasi apa pun? Saya mencoba melakukan sesuatu …

1
Desain Kode: Delegasi fungsi sewenang-wenang
Di PPCG, kita sering menghadapi tantangan King of the Hill , yang mengadu bot kode yang berbeda satu sama lain. Kami tidak suka membatasi tantangan ini hanya dalam satu bahasa, jadi kami melakukan komunikasi lintas platform di atas standar I / O. Tujuan saya adalah menulis kerangka kerja yang akan …


2
Prinsip Segregasi Antarmuka: Apa yang harus dilakukan jika antarmuka memiliki tumpang tindih yang signifikan?
Dari Pengembangan Perangkat Lunak, Prinsip, Pola, dan Praktek Agile: Pearson New International Edition : Terkadang, metode yang digunakan oleh berbagai kelompok klien akan tumpang tindih. Jika tumpang tindih kecil, maka antarmuka untuk grup harus tetap terpisah. Fungsi umum harus dideklarasikan di semua antarmuka yang tumpang tindih. Kelas server akan mewarisi …

2
Mengapa tidak pantas menggunakan diagram UML untuk merencanakan bagaimana kode Anda akan diatur?
Jadi, ya, diagram terkadang tidak sesuai. Kapan itu tidak pantas? Ketika Anda membuat mereka tanpa kode untuk memvalidasinya, dan kemudian bermaksud untuk mengikutinya. Tidak ada yang salah dengan menggambar diagram untuk mengeksplorasi ide. Pengembangan Perangkat Lunak Agile: Prinsip, Pola, dan Praktek - Robert C. Martin Apa sebenarnya yang dia maksudkan …


3
API CRUD: Bagaimana Anda menentukan bidang mana yang akan diperbarui?
Katakanlah Anda memiliki semacam struktur data, yang bertahan dalam beberapa jenis database. Untuk kesederhanaan, sebut saja struktur data ini Person. Anda sekarang ditugaskan untuk merancang API CRUD, yang memungkinkan aplikasi lain untuk membuat, membaca, memperbarui, dan menghapus Person. Untuk mempermudah, mari kita asumsikan bahwa API ini diakses melalui beberapa jenis …

1
Ulasan desain serialisasi C ++
Saya menulis aplikasi C ++. Sebagian besar aplikasi membaca dan menulis kutipan data yang diperlukan dan yang satu ini tidak terkecuali. Saya membuat desain tingkat tinggi untuk model data dan logika serialisasi. Pertanyaan ini meminta peninjauan desain saya dengan mengingat tujuan khusus ini: Untuk memiliki cara yang mudah dan fleksibel …
9 design  c++  c++11 

2
Apakah kita perlu memvalidasi seluruh penggunaan modul atau hanya argumen metode publik?
Saya pernah mendengar bahwa disarankan untuk memvalidasi argumen metode publik: Haruskah seseorang memeriksa nol jika dia tidak mengharapkan nol? Haruskah metode memvalidasi parameternya? MSDN - CA1062: Validasi argumen metode publik (Saya memiliki latar belakang .NET tetapi pertanyaannya tidak spesifik C #) Motivasi bisa dimengerti. Jika modul akan digunakan dengan cara …

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.