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

3
Farklı yazılım sürümleri arasında dosyaların geriye dönük uyumluluğuna izin vermek için iyi bir tasarım nedir?
Bir dosya türünün farklı yazılım sürümleri arasında geriye dönük uyumluluğa izin vermek için iyi bir tasarım nedir? Örneğin, microsoft 2007, 2010 ve 2013 vb. Kelimelerini tüm açık docx dosyalarına nasıl alır, ancak farklı sürümler daha fazla / daha az veri kaydedebilir ve verileri aynı dosya türüne, biraz farklı şekillerde kaydedebilir …

3
Fonksiyonel programlama ve Metin maceraları
Bu çoğunlukla FP hakkında teorik bir sorudur, ama benim açımdan göstermek için metin maceraları (eski okul Zork gibi) alacağım. FP ile durumsal bir simülasyonu nasıl modelleyeceğiniz hakkındaki görüşlerinizi bilmek istiyorum. Metin maceraları gerçekten OOP gerektiriyor gibi görünüyor. Örneğin, tüm "odalar" bir Roomsınıfın örnekleridir , taşıyabileceğiniz şeyler Itemgibi temel bir sınıfa …

9
Neden örtük dönüşüm olamaz?
Anladığım kadarıyla, örtük dönüşümler hatalara neden olabilir. Ama bu mantıklı değil - normal dönüşümler de hatalara neden olmamalı mı? Neden olmasın len(100) dil ile çalışarak (veya derleyerek) len(str(100)) özellikle de çalışmasının tek yolu bu. Dil hatanın ne olduğunu biliyor, neden düzeltmiyorsunuz? Bu örnekte Python kullandım, ancak bu küçük şey için …

3
Aynı ada sahip genel sınıflar içeren dosyaları yapılandırmanın ve adlandırmanın en iyi yolu nedir?
Şu anki projemde aynı isimde, ancak farklı sayıda jenerik parametreye sahip jenerik sınıflar yaratma gereksinimi ile karşılaştım. Örneğin: MyClass<T1> MyClass<T1, T2> MyClass<T1, T2, T3> Tüm bunları aynı isim alanında istediğim göz önüne alındığında, sınıflarımı ve dosyalarımı nasıl yapılandıracağım ve adlandıracağım konusunda kafam karıştı? Sınıflar dosya başına bir tane ile sınırlı …
14 c#  .net 

3
Yapılara kurucu eklemeli miyiz?
Üye yapısıyla tam bir modül olabilen sınıfın aksine veri yapısını tanımlamak için genellikle c ++ yapıları kullanırız. Şimdi derinlerde, ikisinin de aynı olduğunu biliyoruz (gevşek konuşma). Yapıları sık sık yalnızca veri varlıkları olarak kullandığımız / ele aldığımız, varsayılan kurucular da eklemediğimiz bu dürtü yaratır. Ancak yapıcılar her zaman harikadır, işleri …

3
Aynı genel projenin parçası olan birden fazla Git deposunu gruplama
Diyelim ki birden fazla bileşeni olan bir projem var: bir sunucu bileşeni, bir web uygulaması bileşeni, bir iOS bileşeni, bir Android bileşeni, vb. Bu bileşenlerin hepsi ayrı kod tabanlarıdır, ancak gevşek bir şekilde bağlanmıştır (örn. Sunucuda bir değişiklik) kodu diğer tüm bileşenlerde de değişiklik yapılmasını gerektirebilir) Git'te bu projeyi düzenlemenin …
14 git 

2
Tür teorisinde doğru terminoloji: türler, tür yapıcılar, türler / türler ve değerler
Önceki bir sorunun cevabında , belirli yapılar için doğru terminoloji hakkında küçük bir tartışma başladı. Bunu açıkça ele alacak bir soru bulamadığım için ( bu ya da bunun dışında , doğru olanı değil), bu yeni soruyu yapıyorum. Şüpheli terimler ve ilişkileri şunlardır: tür, tür yapıcı, tür parametresi, türler veya türler …

5
7/24 çalışması gereken bir programda istisna işleme
Sadece ele alınabilecek istisnaları yakalamamız gerektiğini okudum, bu da temel istisna sınıfını yakalamayı (bu durumda C #) kötü bir fikir (diğer nedenlerin üstünde) haline getiriyor. Şu anda şimdiye kadar yakalanan temel istisna dışında hiçbir şey görmediğim bir projenin parçasıyım. Bunu yapmanın kötü bir uygulama olarak değerlendirildiğinden bahsettim, ancak yanıt "Bu …

6
Bir web uygulaması oluşturan çevik bir ekibi ölçeklendirmenin ve bölmenin en iyi yolu nedir?
Kısa süre önce bir web uygulaması oluşturan çevik bir geliştirme projesinde scrum ustası olarak çalıştığım bir şirkete katıldım. Takım, çevik bir takımın maksimum boyutu olacak (gelecek hafta 9 bekleniyor). Ekibi potansiyel olarak iki takıma ayırmaktan bahsettik, standup'ları kısaltmak için çok fazla değil (şu anda aşırı değil), ancak sprint planlama oturumlarında …

2
Özyinelemeli işlev çağrısında dönüş ifadesinin nedeni
Aklımda sadece bir şüphe vardı. Aşağıdaki alt yordamın (örneğin, bir listedeki bir öğeyi aramak için) sonunda bir döndürme ifadesi vardır: list *search_list(list *l, item_type x) { if (l == NULL) return(NULL); if (l->item == x) return(l); else return( search_list(l->next, x) ); } Sonunda dönüş deyiminin önemini alamıyorum (yani arama_listesi (l-> …

2
Nesne yönelimli ve vektör tabanlı programlama
Nesneye yönelik ve vektör tabanlı tasarım arasında kaldım. Nesnelerin tüm mimariye verdiği yetenekleri, yapıyı ve güvenliği seviyorum. Fakat aynı zamanda hız benim için çok önemli ve bir dizide basit değişken değişkenlere sahip olmak Matlab veya Python'daki numpy gibi vektör tabanlı diller / kütüphanelerde gerçekten yardımcı oluyor. İşte benim açımdan göstermek …

2
Bob Amca 'isim öbek adları' ile ne anlama geliyor?
Bob Amca'dan Temiz Kod okuyorum . Anadili İngilizce olmayan biri olmadığım için şu ifadeyi anlayamadım: Sınıflar ve nesneler gibi isim veya isim tamlaması ada sahip olmamalıdır Customer, WikiPage, Account, ve AddressParser. Kaçının kelimeler gibi Manager, Processor, Data, veya Infobir sınıfı adına. Sınıf adı bir fiil olmamalıdır. Ben, hiçbiri bildiği gibi …

2
Paylaşılan Önbellek - Geçersiz Kılma En İyi Uygulaması
Önbellek nesnelerini geçersiz kılmak / güncellemek için daha iyi bir yaklaşımın ne olacağını bilmek istiyorum. Ön şartlar Uzaktan memcached sunucusuna sahip olmak (birden fazla uygulama için önbellek görevi gören) Tüm sunucular azure tarafından barındırılıyor (yakın ilgi alanları, aynı veri merkezleri) Önbellek nesnesi boyutu 200 bayt ile 50 kilobayt arasında değişir …

3
MVC'de DAO, Kontrolör veya Modelden çağrılmalıdır
Doğrudan Controller sınıfından çağrılan DAO'ya ve Model sınıfından DAO'ya karşı çeşitli argümanlar gördüm. İçeriden DAO'yu çağırmalı ve denetleyici model sınıfını çağırmalıdır. DAO çağrısını denetleyiciye yazarsak, bir REST hizmetinin işlevselliği yeniden kullanması mümkün olmaz mı? Her iki yaklaşımı da özetledim. Yaklaşım # 1 public class CustomerController extends HttpServlet { proctected void …

6
Kaynak kodunu şemalarla açıklama olarak ekleyin
Hesaplamalı geometri ve grafiklere ve bu tür konulara değinen bir sürü (öncelikle c ++ ve javascript) kodları yazıyorum, bu yüzden görsel diyagramların problem çözme sürecinin vazgeçilmez bir parçası olduğunu gördüm. Hemen şimdi "oh, bir şekilde bir kod parçasına elle çizilmiş bir diyagramı yorum olarak ekleyebilirsem harika olmaz mıydı" dedim ve …

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.