Rekayasa Perangkat Lunak

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

8
Apakah dapat menyalin dan menempelkan kode yang panjang tapi langsung daripada membungkusnya ke dalam kelas atau fungsi?
Misalkan saya memiliki segmen kode untuk terhubung ke internet dan menunjukkan hasil koneksi seperti itu: HttpRequest* httpRequest=new HttpRequest(); httpRequest->setUrl("(some domain .com)"); httpRequest->setRequestType(HttpRequest::Type::POST); httpRequest->setRequestData("(something like name=?&age=30&...)"); httpRequest->setResponseCallback([=](HttpClient* client, HttpResponse* response){ string responseString=response->getResponseDataString(); if(response->getErrorCode()!=200){ if(response->getErrorCode()==404){ Alert* alert=new Alert(); alert->setFontSize(30); alert->setFontColor(255,255,255); alert->setPosition(Screen.MIDDLE); alert->show("Connection Error","Not Found"); }else if((some other different cases)){ (some other alert) …




6
Buat objek baru atau setel ulang setiap properti?
public class MyClass { public object Prop1 { get; set; } public object Prop2 { get; set; } public object Prop3 { get; set; } } Misalkan saya memiliki objek myObjectdari MyClassdan saya harus mengatur ulang sifat-sifatnya, adalah lebih baik untuk membuat objek baru atau menetapkan kembali masing-masing properti? Asumsikan …


10
Bukankah penggunaan variabel pointer overhead memori?
Dalam bahasa seperti C dan C ++, saat menggunakan pointer ke variabel kita perlu satu lokasi memori lagi untuk menyimpan alamat itu. Jadi bukankah ini overhead memori? Bagaimana ini dikompensasi? Apakah pointer digunakan dalam aplikasi kritis memori rendah waktu?
29 c++  c  pointers 

6
Bisakah Anda menerapkan pemrograman "berorientasi objek" tanpa kata kunci kelas?
Katakanlah kami ingin memberikan abstraksi "akun" di bank. Inilah satu pendekatan, menggunakan functionobjek dalam Python: def account(): """Return a dispatch dictionary representing a bank account. >>> a = account() >>> a['deposit'](100) 100 >>> a['withdraw'](90) 10 >>> a['withdraw'](90) 'Insufficient funds' >>> a['balance'] 10 """ def withdraw(amount): if amount > dispatch['balance']: return …

6
Apa tradeoff untuk inferensi tipe?
Tampaknya semua bahasa pemrograman baru atau setidaknya yang menjadi populer menggunakan inferensi tipe. Bahkan Javascript mendapat jenis dan tipe inferensi melalui berbagai implementasi (Acscript, typescript dll). Itu tampak hebat bagi saya tapi saya bertanya-tanya apakah ada trade-off atau mengapa katakanlah Java atau bahasa-bahasa lama yang baik tidak memiliki inferensi jenis …

3
Sistem tipe generik yang bagus
Sudah umum diterima bahwa generik Java gagal dalam beberapa hal penting. Kombinasi kartu liar dan batas menyebabkan beberapa kode serius tidak dapat dibaca. Namun, ketika saya melihat bahasa lain, saya benar-benar tidak bisa menemukan sistem tipe generik yang disukai oleh para programmer. Jika kami mengambil yang berikut sebagai sasaran desain …

2
Mengapa penghubung Unix disebut "ld"
Mencoba mencari di web dan tidak dapat menemukan jawaban. Mungkin ada hubungannya dengan "memuat", tetapi itu tidak masuk akal bagi saya. Jelas, "ln" sudah diambil, tetapi dari mana "d" itu berasal?
29 history 

9
Secara teori TDD saja
Sedikit lebih dari setahun yang lalu saya cukup beruntung untuk dapat istirahat 9 bulan dari pekerjaan. Saya memutuskan bahwa pada waktu itu saya akan mengasah keterampilan C # saya. Saya mulai mengerjakan banyak proyek dan memaksa diri saya untuk mengikuti TDD. Itu adalah proses yang cukup mencerahkan. Itu sulit pada …

7
Apakah ada pola algoritme untuk melindungi konten apa pun di web untuk memastikan saya orang pertama yang membuatnya?
Beberapa tahun yang lalu ada peretas ini (tidak ingat siapa dia) yang sepenuhnya mengungkapkan kerentanan dalam sistem yang diberikan, tetapi untuk memastikan tidak ada yang mengambil kredit untuk itu, ia menciptakan semacam kunci PGP. Apa yang saya pahami pada saat itu adalah bahwa dia menciptakan kunci untuk memastikan dia yang …

5
Panduan gaya untuk C ++ [ditutup]
Saat ini saya menggunakan Panduan Gaya C ++ Google dalam kode C ++ saya dan saya cukup senang dengannya. Baru-baru ini saya diberitahu bahwa panduan ini sangat buruk: ini digunakan secara internal oleh Google (saya tahu itu), sudah ketinggalan zaman, dan mempromosikan beberapa praktik yang sangat buruk. Jadi saya ingin …

6
Memahami “pemrograman ke suatu antarmuka”
Saya telah menemukan banyak istilah "pemrograman ke antarmuka bukan implementasi", dan saya pikir saya agak mengerti apa artinya. Tetapi saya ingin memastikan bahwa saya memahami manfaatnya dan kemungkinan implementasinya. "Pemrograman ke antarmuka" berarti, jika memungkinkan, seseorang harus merujuk ke tingkat kelas yang lebih abstrak (antarmuka, kelas abstrak, atau terkadang superclass), …

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.