Rekayasa Perangkat Lunak

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

2
Mengapa menggunakan metode generik dengan batasan tipe dan bukan tipe itu sendiri?
Dalam pertanyaan StackExchange yang berbeda, saya perhatikan seseorang menggunakan prototipe ini: void DoSomething<T>(T arg) where T: SomeSpecificReferenceType { //Code.... } Mengingat hanya ada satu jenis kendala ( SomeSpecificReferenceType), apa perbedaan dan keuntungan menulisnya seperti itu, bukan hanya: void DoSomething(SomeSpecificReferenceType arg) { //Code.... } Dalam kedua kasus, argakan dikenakan pemeriksaan jenis …
14 c#  .net  generics 

3
Banyak orang membangun satu implementasi. DI putus asa? Gunakan pencari lokasi layanan?
Katakanlah kita memiliki 1001 klien yang membangun dependensi mereka secara langsung daripada menerima suntikan. Refactoring the 1001 bukanlah pilihan menurut bos kami. Kami sebenarnya bahkan tidak diizinkan mengakses sumbernya, hanya file kelas. Apa yang seharusnya kita lakukan adalah "memodernisasi" sistem yang dilalui oleh 1001 klien ini. Kita dapat memperbaiki itu …

1
Bagaimana mencegah rekan memperkenalkan kompleksitas dan abstraksi yang ekstrem?
Saya mengalami waktu yang sangat sulit karena kolega saya tampaknya menunjukkan Upaya optimalisasi dini / tidak perlu Deduplikasi prematur dengan abstraksi yang dipertanyakan Sebagai contoh, kami menggunakan arsitektur VIPER yang dimodifikasi. Dia memperkenalkan kelas dasar untuk komponen Router (menggunakan generik) sebagai bagian dari penerapan tumpukan viper pertama tanpa benar-benar tahu …

2
Dunia Nyata - Prinsip Pergantian Liskov
Latar Belakang: Saya sedang mengembangkan kerangka kerja pengiriman pesan. Kerangka kerja ini akan memungkinkan: pengiriman pesan melalui bus layanan berlangganan antrian di bus pesan berlangganan topik pada bus pesan Kami saat ini menggunakan RabbitMQ, tapi saya tahu kami akan pindah ke Microsoft Service Bus (on Premise) dalam waktu dekat. Saya …


3
Saya kehilangan jejak aliran aplikasi web PHP saya, itu menjadi sulit untuk dikerjakan
Saya sudah pemrograman selama beberapa tahun, dan menjadi sangat akrab dengan C # dan JavaScript dari waktu ke waktu. Saya memiliki beberapa proyek C # dan JavaScript yang lebih besar sehingga saya tidak kesulitan menavigasi. Baru-baru ini saya memulai proyek PHP & AngularJS untuk pekerjaan tanpa pengalaman sebelumnya dengan PHP. …


2
Bagaimana menerapkan manajer proses dalam sumber acara
Saya sedang mengerjakan contoh aplikasi kecil untuk mempelajari konsep CQRS dan event sourcing. Saya memiliki Basketagregat dan Productagregat yang harus bekerja secara independen. Berikut beberapa kode semu untuk menunjukkan implementasinya Basket { BasketId; OrderLines; Address; } // basket events BasketCreated { BasketId; } ItemAdded { BasketId; ProductId; Quantity } AddItemSucceeded …

2
Sekarang tidak semua deklarasi metode dalam Java Interface adalah abstrak publik, haruskah metode tersebut dideklarasikan dengan pengubah ini?
Dimulai dengan Java 8, defaultmetode diperkenalkan ke antarmuka. Secara efektif, ini berarti bahwa tidak semua metode dalam suatu interfaceare abstract. Dimulai dengan Java 9 (mungkin), privatemetode akan diizinkan. Ini berarti bahwa tidak semua metode di dalam interfaceadalah public abstract. Pertanyaan "Haruskah metode dalam antarmuka Java dideklarasikan dengan atau tanpa publicpengubah …


7
Bagaimana cara merancang otentikasi pengguna dari aplikasi klien?
Saya telah mengembangkan aplikasi yang akan mendukung banyak pengguna. Masalahnya adalah saya tidak bisa mencari tahu, bagaimana cara mengotentikasi klien / pengguna. Saya membuat aplikasi seperti http://quickblox.com/ di mana saya akan memberikan kredensial kepada pengguna saya dan mereka akan menggunakannya untuk membangun aplikasi N di mana mereka tidak dapat memasukkan …

2
Kompresi aliran video yang cepat dan tanpa kehilangan
Saya punya video yang berasal dari kamera stasioner. Baik resolusi dan FPS cukup tinggi. Data yang saya dapatkan adalah dalam format Bayer dan menggunakan 10 bit per piksel. Karena tidak ada tipe data 10 bit di platform saya, data asli disimpan dalam memori menggunakan kata-kata 16-bit. Saya ingin menerapkan semacam …

1
Bagaimana cara korelasi Free monad dan Extensions?
Saya berasal dari latar belakang C #, di mana LINQ berevolusi menjadi Rx.NET, tetapi selalu memiliki minat pada FP. Setelah beberapa pengantar untuk monad dan beberapa proyek sampingan di F #, saya siap untuk mencoba dan melangkah ke tingkat berikutnya. Sekarang, setelah beberapa pembicaraan tentang monad gratis dari orang-orang dari …

3
Mendukung pengembangan untuk OS lama
Saya mempertahankan sebagian besar kode warisan, ditulis dalam C. Kode ini awalnya ditulis untuk dikompilasi dengan Windows 3 untuk Workgroups, dan kemudian versi untuk NT dibuat. Aplikasi warisan ini masih digunakan sampai sekarang, dengan gembira berjalan bersama pada 3.11 dan workstation NT dari awal 90-an. Ini berfungsi dan melakukan apa …
14 c  windows  legacy 

4
Pola untuk algoritme yang menampilkan penjelasan tentang bagaimana hal itu sampai ke solusi saat diperlukan
Skenario berikut terjadi pada saya beberapa kali. Saya memprogram algoritma yang memecahkan masalah tertentu. Ini berfungsi dengan baik dan menemukan solusi yang benar. Sekarang, saya ingin memiliki opsi untuk memberi tahu algoritma "tulis penjelasan lengkap tentang bagaimana Anda mendapatkan solusi". Tujuan saya adalah untuk dapat menggunakan algoritma dalam demonstrasi online, …

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.