Rekayasa Perangkat Lunak

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

1
Apakah kelanjutan kelas satu berguna dalam bahasa pemrograman berorientasi objek modern?
Lanjutan sangat berguna dalam bahasa pemrograman fungsional (misalnya Contmonad di Haskell) karena memungkinkan notasi sederhana dan teratur untuk kode gaya imperatif. Mereka juga berguna dalam beberapa bahasa imperatif lama karena mereka dapat digunakan untuk mengimplementasikan fitur bahasa yang hilang (mis. Pengecualian, coroutine, utas hijau). Tetapi untuk bahasa berorientasi objek modern …



2
Haruskah HTTP Request / Response object tidak berubah?
Saya pikir aman untuk mengatakan bahwa sebagian besar aplikasi web didasarkan pada paradigma permintaan / respons. PHP tidak pernah memiliki abstraksi formal dari objek-objek ini. Satu grup sedang mencoba untuk mengubah ini: https://github.com/php-fig/fig-standards/blob/master/proposed/http-message.md Namun, mereka semacam dilacak tentang masalah ketidakberdayaan. Di satu sisi, objek permintaan / respons umumnya membutuhkan sedikit …

4
Mengapa generator dan fungsi python berbagi kata kunci "def"?
Pertimbangkan yang berikut ini: def some_function(): return 1 def some_generator(): yield 1 Dalam kode di atas, some_functionadalah fungsi, sedangkan some_generatorgenerator. Mereka terlihat sangat mirip. Masalah yang saya miliki ketika membaca kode adalah bahwa saya perlu memindai setiap baris dalam "fungsi" mencari yieldkata kunci sebelum saya dapat menentukan apakah itu sebenarnya …

1
Bagaimana cara menghindari antarmuka yang cerewet
Latar Belakang: Saya merancang aplikasi server dan membuat dll terpisah untuk berbagai subsistem. Untuk menyederhanakan banyak hal, katakanlah saya memiliki dua subsistem: 1) Users2)Projects Antarmuka publik pengguna memiliki metode seperti: IEnumerable<User> GetUser(int id); Dan antarmuka publik Projects memiliki metode seperti: IEnumerable<User> GetProjectUsers(int projectId); Jadi, misalnya, ketika kita perlu menampilkan pengguna …

3
Apa itu arc eksklusif dalam database dan mengapa itu jahat?
Saya membaca kesalahan desain database paling umum yang dibuat oleh pengembang Q&A di stackoverflow. Pada jawaban pertama ada ungkapan tentang arc eksklusif: Busur eksklusif adalah kesalahan umum di mana sebuah tabel dibuat dengan dua atau lebih kunci asing di mana satu dan hanya satu saja yang bisa non-nol. Kesalahan besar. …

2
Mengapa kompilator Scala tidak dapat memberikan peringatan pencocokan pola untuk kelas / sifat yang tidak ditutup?
Jika saya menggunakan un disegel traitatau abstract classdalam Scala dan kemudian menggunakan pencocokan pola, saya bertanya-tanya, apakah kompiler tidak tahu pada waktu kompilasi untuk patternmatch khusus ini apa implementasi yang mungkin dari sifat / kelas ini yang tersedia? Jadi, jika ya, bisakah itu tidak memberikan peringatan kecocokan pola meskipun trait/ …

1
Pesan Antrian untuk RTOS untuk mikrokontroler
Saat ini saya sedang menulis RTOS untuk mikrokontroler. Semuanya ditulis dalam C ++ 11 - jika ada yang tertarik, dan tautan ke repositori ada di bagian bawah. Saat ini saya sedang menulis sebuah kelas yang merupakan antrian data sederhana untuk melewatkan objek di antara utas (atau antara penangan interupsi dan …

2
TDD dengan pola repositori
Dalam proyek baru saya, saya memutuskan untuk mencoba dengan TDD. Dan pada awalnya saya mengalami masalah. Hal pertama yang ingin saya lakukan dalam aplikasi saya adalah memberi kemampuan membaca data dari sumber data. Untuk tujuan ini, saya ingin menggunakan pola repositori. Dan sekarang: Jika tes untuk implementasi nyata dari antarmuka …

1
Strategi promosi ketergantungan: dibungkam atau diatur?
Kami memiliki banyak aplikasi dan layanan web (beberapa produk yang menghadap publik, beberapa internal dan bagian dari "backend" pribadi) yang saling bergantung satu sama lain. Masing-masing komponen ini memiliki 4 lingkungan (kelompok server / node yang melayani tujuan tertentu): Non-produksi DEV- Lingkungan pengembangan terintegrasi di mana CI membangun perubahan push; …

3
Bagaimana seharusnya tautan dependensi pribadi ditangani di setup.py
Di tempat kerja kami menggunakan server pypi pribadi. Server pypi ini ditetapkan sebagai tautan ketergantungan: ... from setuptools import setup config = ConfigParser.ConfigParser() rc = os.path.join(os.path.expanduser('~'), '.pypirc') config.read(rc) dependency_links = [ 'https://{}:{}@<private_url>'.format( config.get('dc', 'username'), config.get('dc', 'password'))] setup( dependency_links=dependency_links, ...) Ini berfungsi dengan baik di sebagian besar kasus kami. Namun, beberapa …
10 python 

2
Laporan cakupan kode terpisah untuk unit dan tes integrasi, atau satu laporan untuk keduanya?
Haruskah ada laporan cakupan kode terpisah untuk unit dan tes integrasi, atau satu laporan cakupan kode untuk keduanya? Pemikiran di balik ini adalah bahwa cakupan kode memungkinkan kami untuk memastikan bahwa kode kami telah dicakup oleh pengujian sejauh mungkin (sebanyak mesin sekarang dapat tetap). Memiliki laporan terpisah lebih mudah bagi …



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.