Yazılım Mühendisliği

Sistem geliştirme yaşam döngüsü içinde çalışan profesyoneller, akademisyenler ve öğrenciler için soru-cevap

7
Bir nesneyi, nesneyi değiştiren bir yönteme geçirmek, ortak (anti-) bir kalıp mıdır?
Martin Fowler'in Refactoring kitabındaki ortak kod kokularını okuyorum . Bu bağlamda, bir kod tabanı içinde gördüğüm bir model merak ediyordum ve biri objektif bir anti-desen olarak düşünebilir olsun. Desen, bir nesnenin, tümü nesnenin durumunu değiştiren ancak hiçbiri nesneyi döndürmeyen bir veya daha fazla yönteme argüman olarak iletildiği modeldir. Bu nedenle …

2
Kendi ses tanıma kodumu yazma [kapalı]
Kapalı . Bu sorunun daha fazla odaklanması gerekiyor . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Soruyu yalnızca bu yayını düzenleyerek tek bir soruna odaklanacak şekilde güncelleyin . 4 yıl önce kapalı . Sorun Açıklaması Ses tanımayı, tamamen kendi içinde olmasını istediğim bir donanım projesinin parçası olarak …

4
Kayıtların tarihe göre tanımlanabilmesi için veritabanımda kimliklere ihtiyacım var mı?
Android için ilk uygulamamı yazıyorum ve SQLite veritabanını kullanacağım, bu yüzden boyutu olabildiğince sınırlamaya çalışacağım, ancak sorunun genel olarak veritabanı tasarımı için geçerli olduğunu düşünüyorum. Metin ve oluşturulma tarihi olan kayıtları saklamayı planlıyorum. Uygulama tek başına bir uygulama, yani internet bağlantısı olmayacak ve sadece bir kullanıcı güncelleme olacak, bu nedenle …
17 database 


5
Arayüzler ne zaman kullanılır (birim testi, IoC?)
Burada bir öğrenci hatası yaptığımı sanıyorum ve açıklama arıyorum. Benim çözüm (C #) sınıfların birçoğu - ben çoğunluk söylemeye cesaret - Ben karşılık gelen bir arayüz yazma sona erdi. Örneğin, bir "ICalculator" arayüzü ve onu uygulayan bir "Hesap Makinesi" sınıfı, bu hesap makinesini asla farklı bir uygulama ile değiştirmeme rağmen. …

4
Standardı takip etmek, bu konuda C standardını almak gerekli mi?
Stack Overflow'da her zaman C standardı hakkında konuşan çok deneyimli insanlar var. İnsanlar benim için çalışıyor olsalar bile taşınabilir olmayan çözümleri sevmiyor gibi görünüyor. Tamam, standardın takip edilmesi gerektiğini anlıyorum, ancak programcının yaratıcılığına pranga koymuyor mu? Bir standardı takip etmenin getirdiği somut faydalar nelerdir? Özellikle derleyiciler standardı biraz farklı uygulayabildiğinden.

4
Kalıcı veri yapılarının işlevsel olmayan dillerde kullanımı
Tamamen işlevsel veya neredeyse tamamen işlevsel olan diller, değişmez oldukları ve vatansız fonksiyonel programlama tarzına iyi uydukları için kalıcı veri yapılarından yararlanırlar. Ancak zaman zaman Java gibi (devlet tabanlı, OOP) diller için kalıcı veri yapıları kütüphaneleri görüyoruz. Kalıcı veri yapıları lehine sıkça duyulan bir iddia, değişmez oldukları için iplik güvenli …

9
Ölçü birimlerine erişmek için veri yapısı
TL; DR - Bir ölçü birimi içindeki birimleri tanımlamak için en uygun veri yapısını tasarlamaya çalışıyorum. A Unit of measureesasen a valueile ilişkili bir (veya miktar) ' dır unit. SI Üniteleri yedi tabana veya boyuta sahiptir. Yani: uzunluk, kütle, zaman, elektrik akımı, sıcaklık, madde miktarı (mol) ve ışık şiddeti. Bu …

5
Verilerin kodda saklanması
Geçmişimde birkaç kez verileri kodda saklamak istedim. Bu, nadiren değişen ve bir veritabanına erişimin mümkün olmadığı, pratik veya istenildiği yerlerde kullanılan veriler olacaktır. Küçük bir örnek, ülkelerin bir listesini saklamak olabilir. Bunun için şöyle bir şey yapabilirsiniz: public class Country { public string Code { get; set; } public string …
17 c# 


5
C ++ 'da her şey için nesneleri (ilkel türler yerine) kullanmak anlamlı olur mu?
Üzerinde çalıştığım yeni bir proje sırasında, şöyle görünen bir çok işlevi kullanmak zorunda kaldım: static bool getGPS(double plane_latitude, double plane_longitude, double plane_altitude, double plane_roll, double plane_pitch, double plane_heading, double gimbal_roll, double gimbal_pitch, double gimbal_yaw, int target_x, int target_y, double zoom, int image_width_pixels, int image_height_pixels, double & Target_Latitude, double & Target_Longitude, …

7
Python, Tarayıcılarda istemci tarafı kullanımı için çok yavaş olur mu?
Python'un tarayıcılarda herhangi bir kullanım için çok yavaş olacağını ifade ettim. Javascript'in bu açıdan sadece Google'a hızlı ihtiyaç duyan (ve hızlı hale getiren) şirketler nedeniyle hayatta kalmaları gerektiğinden üstün olduğunu düşünüyorum, ancak yanlış olabilirim. Python ve Javascript'in nasıl tasarlandıkları konusunda tarayıcılarda nasıl performans gösterecekleri (etkisi) üzerinde herhangi bir fark var …

5
Kendimi korumak ve telif hakkımı kaybetmemek için önceki yazılı kodumdan bazılarını işverene vermek için MIT lisansını kullanabilir miyim?
Benim durumum: Yeni işime başlamadan önce bir çerçeve yazdım. Telif hakkına sahibim. İçinde herhangi bir yazılım parçası gibi bir sürü kaynatma plakası mantığı vardır. (Yaa!) Tüm çerçeveyi yeni işimde kullanmak istemiyorum, ancak bazı bölümlerini yeni işim için oluşturduğum benzer bir çerçevede yeniden kullanmam gerekiyor . Tüm mantığı sıfırdan uygulamak / …

4
Kod kararlılığını ölçmek için kaynak kodu metrikleri?
Yazılımın bir yayın döngüsü sırasında nasıl geliştirildiğini göz önünde bulundurarak (uygulama, test, hata düzeltme, serbest bırakma) Kod satırında değiştirilen kod satırlarında bazı desenleri görebilmeliydi; Örneğin, projenin sonuna doğru, kod daha kararlı hale gelirse, birim zaman başına daha az kod satırının değiştirildiğini görmelidir. Örneğin, projenin ilk altı ayında, ortalamanın günde 200 …

6
Önbelleği yoğun kullanan birim test yöntemleri için en iyi uygulamalar?
Saklamak ve (filtreleme ile) nesneleri ve nesne listelerini önbellekten almak iş mantık yöntemleri bir dizi var. Düşünmek IList<TObject> AllFromCache() { ... } TObject FetchById(guid id) { ... } IList<TObject> FilterByPropertry(int property) { ... } Fetch..ve Filter..çağırır AllFromCacheorada değilse önbellek ve getiri doldurmak ve eğer sadece ondan dönecekti hangi. Genellikle bunları …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.