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

5
Çok sayıda küçük nesnenin yaratılmasını en aza indirmeli misiniz?
Sıklıkla çok sayıda (1000) küçük nesne oluşturan bir şey yazarken, bunu performans için en aza indirmeye çalışmalısınız mı? Özellikle hangi sistemde çalışacağını bilmiyorsanız, düşük seviyeli masaüstü bilgisayarlardan hatta mobil cihazlara kadar. Mobil cihazlar için, çok fazla nesne oluşturmanın performansı biraz engellediğini duydum, ancak bunun ne kadar doğru olduğunu bilmiyorum. Bu …

2
Küçültülmüş CSS Git'te depolanmalı mı?
Üzerinde çalıştığım bir proje için SASS kodumdan küçültülmüş CSS oluşturmak için Gulp kullanıyorum. Git'ten canlı yayın yaparken bu küçültülmüş CSS'yi yeniden oluşturmanın en iyi uygulama olup olmadığını merak ettim ... veya Küçültülmüş CSS dosyalarını Git'te depolamak için, sunucunun üzerinde daha fazla çalışma yapmadan otomatik olarak üretime aktarılsın mı? İnsanların bu …

5
Benzer özellikler için farklı desenler kullanma
Herhangi bir yazılım projesinde olduğu gibi gelecekte başka biri tarafından alınabilecek bir projedeki tek geliştiriciyim. Diyelim ki X özelliğini A özelliğini uygulamak için kullandım. Özelliği geliştirip bitirdikten sonra, yeni öğrendiğim Y desenini kullanarak aynı özelliği uygulayabileceğimin farkındayım. Ancak A özelliği iyi çalışıyor ve X'ten Y'ye yeniden düzenleme zaman alıcı ve …

2
Oracle Java eğitiminde neden "tartışma" olarak adlandırılan denetlenmeyen ve denetlenmeyen istisnalar denetleniyor?
Java için yeniyim ve istisnalarla ilgili belgelerini okuyordum . ve özellikle Denetlenmeyen İstisnalar - Tartışma sayfası. Sonuç olarak: Bir istemcinin bir istisnadan kurtarması makul olarak isteniyorsa, denetlenen bir istisna yapın. İstemci özel durumdan kurtarmak için hiçbir şey yapamazsa, denetlenmeyen bir özel durum haline getirin. Makaleyi anlamıyorum. "Tartışma" ne hakkında? Basit …

1
Milyonlarca kayıtta kısmi ad eşleşmesi
İsim eşleme için web tabanlı bir uygulama geliştirdik. İsimleri parçalara bölerek çalışır ve her parçanın Soundex değeri bir veritabanında saklanır. Levenshtein mesafe metrik verilen bir isim karşı yüzde sesin eşleştirme ve yazım uygulamak için kullanılır. Çalışma zamanında, tüm kayıtları belleğe yükler ve tüm Soundex değerlerine Levenshtein mesafesini ve tüm adların …

3
Kancalar ne zaman doğru tasarım seçeneğidir?
ActiveRecord geri aramalarının yaygın ve rahatsız edici olduğu büyük bir Rails uygulaması üzerinde çalıştım. Bir kaydın kaydedilmesi genellikle beklenmedik yan etkilere neden oldu ve bu sistem hakkında akıl yürütmek için bir zorluktu. Aynı zamanda, kalıtımın bir parçası olarak iyi etki için kullanılan kancaları gördüm (örneğin, alt sınıfların ebeveynin iç özelliklerini …
10 hooks 

4
Java'da null bir ifade ne zaman kullanılır?
Bir ders için aradığım bir ders kitabında, bir ifade boş olabilir (null deyimi). Null deyimi yalnızca noktalı virgül olarak tanımlanır. Yürütme zamanında kesinlikle hiçbir şey yapmaz. Null deyimi nadiren kullanılır. Orta derecede deneyimli bir programcı olarak, nadiren kullanıldıklarını söyledikleri ilginç buluyorum , bu bir yerde bunun bir kullanımı olduğunu ima …
10 java 

2
Mono Projesi, LGPLed kütüphanelerini MIT kapsamında nasıl serbest bırakabildi?
Mono projesi LGPLed kütüphanelerine sahipti. Aslında mbundlehala çalıştırdığınızı söylüyor LGPL Mono çalışma zamanını statik olarak bağlamanın, dinamik olarak bağlanmaktan daha fazla lisans kısıtlamasına sahip olduğunu unutmayın. Lisanslama ile ilgili ayrıntılar için http://www.mono-project.com/Licensing adresine bakın . Mart 2016 itibariyle MIT kapsamında yeniden lisansladılar. Proje uzun yıllardır ve muhtemelen birçok dış katkıda …

2
Tek amacı dolaylı olarak başka bir sınıfa dönüştürülecek sınıflar oluşturmak kötü mü?
CircleNesneleri oluşturmanıza izin veren bir kitaplık kullandığımız, onu tanımlamak için dairenin yarıçapını ve merkezini belirtebileceğiniz bir durum düşünün . Ancak, bazı nedenlerden dolayı, gerekli bir flavourparametreyi de alır . Şimdi Circlekendi uygulamamda gerçekten kullanmam gerektiğini söyleyelim , ancak uygulamamın amaçları için Flavours.Cardboardher seferinde lezzeti ayarlayabilirim . Bunu "çözmek" için Circle, …

3
Sınıf yapıcısına veri (davranış vs) enjekte etmek ne anlama gelir ve bu neden kötü uygulama olarak kabul edilir?
Remo Jansen'in "Learning TypeScript" kitabını okuyorum. Bir bölümde yazar, Modelsınıfın nasıl oluşturulacağı da dahil olmak üzere çok basit bir kavram kanıtı MVC çerçevesinin nasıl oluşturulacağını açıklar ve şunları söyler: Bir modelin, kullandığı web hizmetinin URL'siyle birlikte sağlanması gerekir. Tüketilecek hizmetin URL'sini ayarlamak için ModelSettings adlı bir sınıf dekoratörü kullanacağız. Hizmet …

4
Java: Ayarlayıcıların sırasının önemli olmadığı bir adım oluşturucu nasıl uygulanır?
Düzenleme: Bu sorunun teorik bir sorunu açıkladığını belirtmek isterim ve zorunlu parametreler için yapıcı bağımsız değişkenlerini kullanabilir veya API yanlış kullanılırsa bir çalışma zamanı özel durumu atabilirim. Ancak, ben bir çözüm için arıyorum değil yapıcı argümanları veya çalışma zamanı denetimini gerektirir. Bunun Cargibi bir arayüzünüz olduğunu düşünün : public interface …

3
Toplantı zamanı ile gelişme zamanından tasarruf arasında bir ilişki faktörü var mı?
Bir proje üzerinde çalışıyorum ve düzenli (genellikle haftalık), gayri resmi toplantılarımız var, burada projenin durumunu ve GUI'sini tartışıyoruz. Oradaki tek geliştiriciyim, diğer 4-5 kişinin BT dışı bir geçmişi var. Bu toplantı normalden çok daha uzun sürdü, ancak bir noktada meslektaşlarımdan biri programdaki bazı alanları ve nasıl doldurulduğunu sordu. Yanıt verdim …

3
Neden “marka” daki artımlı yapılar karma algoritmalar kullanmıyor?
Ben yeni başlayan makebiriyim ve ne zaman kullanacağımı merak ediyorum make clean. Bir meslektaşım bana artımlı yapıların makedosya zaman damgalarına dayandığını söyledi . Bu nedenle, VCS'nizdeki bir dosyanın eski sürümünü kullanıma alırsanız, bunun "eski" bir zaman damgası olur ve "bu dosyayı yeniden derlemeye gerek yoktur" olarak işaretlenir. Daha sonra, bu …
10 builds  make 

1
Çekme İstekleri Mercurial'ta neden ciddi şekilde uygulanamıyor?
Bir hafta önce LFNW'daydım ve konuşmasının ardından Larry Hastings ile konuşurken, dedi (başka deyişle ): Git'te Mercurial'da olmayan Çekme İsteği iş akışını mümkün kılan bir şey var. Bu yüzden BitBucket'teki Pull İstekleri harika değil. (Bağlam için, Python'un PR-iş akışı nedeniyle Mercurial'dan Git'e dosya-bug-attach-patch-iş akışının aksine hareket ettiğini tartışıyorduk.) Burada ne …

2
İş mantığını hizmet katmanına taşımadan etki alanı nesne özniteliklerindeki benzersiz çelişkileri kontrol etmenin zarif bir yolu var mı?
Yaklaşık 8 yıldır alan güdümlü tasarımı uyarlıyorum ve bunca yıldan sonra bile, beni rahatsız eden bir şey var. Bu, bir etki alanı nesnesine karşı veri depolamada benzersiz bir kayıt olup olmadığını kontrol etmektir. Eylül 2013'te Martin Fowler , mümkünse, tüm alan nesnelerine uygulanması gereken TellDon'tAsk prensibinden bahsetti , bu da …

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.