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
Java'nın Boolean sınıfı - neden bir numaralandırma olmasın?
Bana göre Boolean sınıfı bir enum olarak uygulanacak ideal bir aday. Kaynak koduna bakıldığında, sınıfın çoğu değişmeden bir numaralandırmaya taşınabilen statik yöntemlerdir, geri kalanı bir numaralandırma olarak çok daha basit hale gelir. Orijinali karşılaştırın (yorumlar ve statik yöntemler kaldırıldı): public final class Boolean implements java.io.Serializable, Comparable<Boolean> { public static final …
11 java  api  source-code 

3
E-posta sunucusu kullanmadan e-posta gönderme
JavaMail e-postaları, genellikle bir e-posta sağlayıcısının SMTP arabirimi aracılığıyla bir e-posta sunucusu kullanarak gönderir. E-posta göndermek için e-posta sunucusu kullanmak gerekli mi? E-posta gönderecek bir web sitem var ve mümkünse e-postaları bir e-posta sunucusu kullanmadan doğrudan web sitesi kodundan göndermek istiyorum. JavaMail SSS, bir e-posta sunucusunun gerekli olduğunu söylüyor. JavaMail …
11 java  email 

2
Bir mesajın komut mesajı mı yoksa olay mesajı mı olması nasıl belirlenir?
İki kurumsal entegrasyon modeli, komut mesajı ve olay mesajıdır . Mesajlaşmayı yalnızca diğer sistemlerle entegrasyon için değil, servisler arasında dahili iletişim için de kullandığımız bir sistem üzerinde çalışıyorum. Bir olması gerekiyordu sonunda tutarlı sistemi ve hizmetler (birkaç özel amaçlı hizmetlerine hariç) birbirinden habersiz olması gerekiyordu. Bu nedenle, uzaktan yordam çağrıları …

2
Apple neden iOS'ta yalnızca Statik Çerçevelere izin veriyor?
Açıkça Apple, XCode (UIKit gibi) ile birkaç tane gönderdiklerinden, iOS için dinamik olarak yüklenmiş kütüphaneler (çerçeveler olarak bilinir) oluşturma yeteneğine sahiptir. Uygulama geliştiricileri yalnızca statik kütüphaneler oluşturma yeteneğine sahiptir veya en iyisi, aslında statik bir kütüphane yüklerken bir çerçeve yüklediğini düşünmek için Xcode'u kandırır, bu sahte bir çerçeve, sürükle ve …

3
Kanban: İş öğesi boyutu nasıl seçilir
Kanban'dan başlayarak, iş öğelerimin ne kadar ayrıntılı olması gerektiğinden emin değilim. WIP'in nasıl seçileceğine dair çok sayıda somut tavsiye bulurken, okuduğum Kanban eğiticilerinin çoğu, bir iş öğesinin boyutu (= tahtadaki bir kart) hakkında oldukça belirsiz kalıyor. İçin planlama ve tahmin , insanlar genellikle bir et Small boyutunu tutmak için tavsiye, …
11 kanban 


2
Senkronizasyon ve asenkron yöntemlerin tek bir yöntemde verimli bir şekilde karıştırılması?
Tamam, kulağa garip geliyor, ancak kod çok basit ve durumu iyi açıklıyor. public virtual async Task RemoveFromRoleAsync(AzureTableUser user, string role) { AssertNotDisposed(); var roles = await GetRolesForUser(user); roles.Roles = RemoveRoles(roles.Roles, role); await Run(TableOperation.Replace(roles)); } (Aşağıdaki özette biraz bahsettiğimi biliyorum, ama yukarıdaki gerçek üretim kodunun ne olacağından gerçek bir yöntem. zaman …

2
TDD, işbirlikçi açık kaynak projelerinde uygulanabilir mi?
Diyelim ki birçok insanın yama göndermesini umduğum / beklediğim açık kaynaklı bir proje başlatmak istedim. Katı bir TDD yaklaşımı benimsemek uygun mu? Bir yama gönderdiklerinde ortak çalışanlardan kalite testleri yazmalarını bekleyebilir miyim / güvenebilir miyim? Düşündüğüm bir şey, bireysel hata raporları ve özellik istekleri için test paketleri yazmak ve tüm …

3
MVC sitesi genelinde küresel sabit değerler
MVC (.NET) sitemde telefon numarası, fiziksel adres, e-posta adresi vb.Gibi bazı sabit değerler var. Bu değeri bir kez saklamak istiyorum, bu nedenle gelecekteki güncellemeler ayrıntılarını değiştirdiklerinde daha kolay. Sorumu kolaylaştırmak için yalnızca telefon numarasına odaklandım. Sorum, bu numarayı nerede ve nasıl saklayacağım ve kararımda karşılaştığım bir problem. Şu anda, statik …
11 mvc 

1
C # bilgisi olmadan ciddi bir F # projesine nasıl yaklaşabilirim?
Yani, aslında üstlenmek istediğim proje bir SVG editörü. WPF kullanmayı tercih ederim, çünkü o zaman uygulama düzenim için XAML'den yararlanabiliyorum (bu tasarımcı çok şık). Ne yazık ki, sadece birkaç aydır .NET çerçevesini kullanıyorum ve hala sınıf adlarının çoğunu bilmiyorum. Amaç F # kullanmaktı çünkü işlevsel bir programlama dili ve F …
11 wpf  f# 

10
Test Etme vs Kendini Tekrar Etme (KURU)
Testler yazarak kendinizi tekrar etmek neden bu kadar teşvik edilir? Testler temel olarak kodla aynı şeyi ifade eder ve bu nedenle kodun bir kopyasıdır (kavram olarak, uygulamada değil). DRY'nin nihai hedefi tüm test kodlarının kaldırılmasını içermez mi?
11 testing  dry 


3
Sabit kodlu nesne ile yöntem nasıl alay edilir?
Birden çok katmanı olan bir uygulama üzerinde çalışıyorum. Veri kaynağından veri almak ve kaydetmek için veri erişim katmanı, verileri değiştirmek için iş mantığı, verileri ekranda göstermek için kullanıcı arayüzü. Ayrıca iş mantığı katmanı üzerinde birim testi yapıyorum. Tek gereklilik, iş katmanı mantığının akışını test etmektir. Bu yüzden veri erişim katmanı …

2
İşverene özgü değişikliklerle açık kaynaklı bir projeyle çalışmak için en iyi Git iş akışı hangisidir?
Mevcut işverenimde, başvurumuzun bir bileşeni olarak Github'da barındırılan açık kaynaklı bir proje kullanıyoruz. Bu projede hem ihtiyaç duyduğumuz bazı özellikleri eklemek hem de yapı sistemlerimizle entegre etmek için çalışıyorum. Yöneticim ve ben, bu bileşenle ilgili çalışmalarımızın çoğunu açık kaynak projesine makul bir şekilde sunmak istediğimizi kabul ediyoruz. Sorum, Git'imin taahhütlerini …
11 git 

2
Yeniden düzenleme yorumlarıyla kod yaymak iyi bir fikir midir?
Bir "spagetti-code" projesi üzerinde çalışıyorum ve hataları giderirken ve yeni özellikler uygularken, kod birim test edilebilir hale getirmek için bazı yeniden düzenleme yapmak. Kod genellikle o kadar sıkı bağlanır veya karmaşıktır ki, küçük bir hatayı düzeltmek birçok sınıfın yeniden yazılmasına neden olur. Bu yüzden yeniden düzenlemeyi bıraktığım kodda bir yere …

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.