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
İşlevsel programlamada, değişken yapıların çoğuna sahip olmak daha fazla bellek kullanımı gerektiriyor mu?
İşlevsel programlamada, neredeyse tüm veri yapıları değiştirilemez olduğundan, durumun yeni bir yapıyı değiştirmesi gerektiğinde değişmezdir. Bu çok daha fazla bellek kullanımı anlamına mı geliyor? Nesneye yönelik programlama paradigmasını iyi biliyorum, şimdi işlevsel programlama paradigmasını öğrenmeye çalışıyorum. Değişmez olan her şeyin kavramı beni şaşırtıyor. Değişmez yapıları kullanan bir programın değişken yapıları …

9
Her gün kod işlemek / kontrol etmek iyi bir uygulama mıdır?
Martin Fowler'in Sürekli Entegrasyon ile ilgili notunu okudum ve “Herkes Her Gün Ana Hattına Bağlıyor” listesine girdi. Üzerinde çalıştığım bölüm tamamlanmadığı ve pratikte kodumu her üç günde bir işleme koyduğum sürece kod vermeyi sevmiyorum: bir gün görevi araştırmak / çoğaltmak ve bazı ön değişiklikler yapmak, değişiklikleri tamamlamak için ikinci bir …

22
Bazı programcılar neden teori ile pratik arasında bir kontrast olduğunu düşünüyor? [kapalı]
Yazılım mühendisliğini inşaat mühendisliği ile karşılaştırarak, farklı bir düşünce biçimini gözlemlememe şaşırdım: herhangi bir inşaat mühendisi, bahçede küçük bir kulübe inşa etmek istiyorsanız, sadece malzemeleri elde edip inşa etmeye devam ederken inşa etmek istediğini bilir. 10 katlı ev (veya, örneğin, gibi bir şey bu ) oldukça bazı matematik yapmak gerekir …

10
Çok fazla özel işlev / yöntem olması gibi bir şey var mı?
İyi belgelenmiş kodun önemini anlıyorum. Ancak, kendi kendini belgeleyen kodun önemini de biliyorum . Belirli bir işlevi görsel olarak okumak ne kadar kolay olursa yazılım bakımı sırasında o kadar hızlı ilerleyebiliriz. Bununla birlikte, büyük işlevleri diğer küçük işlevlere ayırmayı seviyorum . Ancak bunu, bir sınıfın yalnızca bir ortak yönteme hizmet …


4
Bir iş parçacığı havuzu nedir?
Bir threadpool nasıl uygulanır? "Threadpool" için wikipedia okudum, ancak hala bu soruyu çözmek için ne yapması gerektiğine karar veremiyorum (muhtemelen bir threadpool'un basit anlamda ne olduğunu tam olarak anlamadım çünkü). Birisi bana ne tür bir ipucu olduğunu açık bir şekilde açıklayabilir ve bu soruya nasıl cevap verilir?

11
Bir programı birden çok sınıfa bölmek neden iyidir? [kapalı]
Hala lisede öğrenciyim (10. sınıfa giriyorum) ve henüz okulda gerçek bir bilgisayar kursuna katılmamıştım. Şimdiye kadar yaptığım her şey kitaplardan geçiyor. Bu kitaplar bana kalıtım gibi kavramlar öğretti, ancak bir programı birden fazla sınıfa bölmek nasıl yardımcı olur? Kitaplar bana hiç söylemedi. Bunu temelde yeni bir proje yüzünden soruyorum. Bazılarının …

16
İstisnaları desteklemeyen bir dilde bölmeyi sıfıra nasıl kaldırabilirim?
Bazı işletme gereksinimlerini çözmek için yeni bir programlama dili geliştirmenin tam ortasındayım ve bu dil acemi kullanıcıları hedef alıyor. Bu nedenle, dilde istisna yönetimi için bir destek yoktur ve eklesem bile kullanmalarını beklemiyorum. Bölme operatörünü uygulamak zorunda olduğum noktaya ulaştım ve bir bölmeyi sıfır hatayla en iyi nasıl idare edeceğimi …

7
Birim testi yerine kabul ve entegrasyon testlerini kullanmak yeterli mi?
Bu soruya kısa bir giriş. Şimdi TDD'yi ve son zamanlarda BDD'yi bir yıldan fazla bir süredir kullanıyorum. Testlerimi daha verimli yazmak için alay etme gibi teknikleri kullanıyorum. Son zamanlarda kendime küçük bir para yönetimi programı yazmak için kişisel bir projeye başladım. Eski kodum olmadığından TDD ile başlamak için mükemmel bir …

7
Test edilebilirlik için tasarım yaparken statik fayda sınıfları ile nasıl baş edilir
Sistemimizi test edilebilir ve TDD kullanılarak geliştirilen parçaların çoğunda tasarlamaya çalışıyoruz. Şu anda aşağıdaki sorunu çözmeye çalışıyoruz: Çeşitli yerlerde ImageIO ve URLEncoder (hem standart Java API) hem de çoğunlukla statik yöntemlerden (Apache Commons kütüphaneleri gibi) oluşan çeşitli diğer kütüphaneler gibi statik yardımcı yöntemler kullanmamız gerekir. Ancak bu statik yardımcı sınıflarını …

15
Doğrudan istemci tarafındaki Javascript’ten bir veritabanına gitmemek için herhangi bir neden var mı?
Olası Çoğalt: Web'e “sunucudan daha az” uygulamalar yazma Diyelim ki bir Stack Exchange klonu oluşturacağım ve arka uç mağazam olarak CouchDB gibi bir şey kullanmaya karar verdim. Dahili kimlik doğrulama ve veritabanı düzeyinde yetkilendirme kullanırsam, istemci tarafı Javascript'in doğrudan herkese açık CouchDB sunucusuna yazmasına izin vermemek için herhangi bir neden …

3
Özel üyeleri neden başlıklara koymalıyız?
Özel değişkenler, karmaşıklığı ve uygulama ayrıntılarını bir sınıf kullanıcısına gizlemenin bir yoludur. Bu oldukça hoş bir özellik. Fakat neden c ++ 'ta onları bir sınıf başlığına koymamız gerektiğini anlamıyorum. Bunun için iki sinir bozucu dezavantaj görüyorum: Başlığı kullanıcıdan alır. İçindekiler değiştirildiğinde, tüm istemci kitaplıklarının yeniden derlenmesini zorlar. Bu gereksinimin arkasında …
62 c++  headers 

6
Nesne havuzu kullanımdan kaldırılmış bir teknik midir?
Nesne havuzu kavramına çok aşinayım ve her zaman mümkün olduğunca kullanmaya çalışıyorum. Ek olarak, her zaman nesne havuzlamanın standart Java olduğunu düşündüm, Java'nın ve diğer çerçevelerin kendisinin mümkün olduğunca havuz kullandığını gözlemledim. Son zamanlarda benim için tamamen yeni (ve karşı sezgisel?) Bir şey okudum. Bu havuzlama, özellikle eşzamanlı uygulamalarda program …

4
okların amacı nedir?
Haskell ile fonksiyonel programlamayı öğreniyorum ve ilk olarak neden onlara ihtiyacım olduğunu anlayarak kavramları yakalamaya çalışıyorum. Fonksiyonel programlama dillerinde okların amacını bilmek istiyorum. Hangi sorunu çözüyorlar? Http://en.wikibooks.org/wiki/Haskell/Understanding_arrows ve http://www.cse.chalmers.se/~rjmh/afp-arrows.pdf adresini kontrol ettim . Tek anladığım, hesaplamalar için grafikleri tanımlamak için kullanıldıkları ve puansız stil kodlamasına daha kolay izin verdikleridir. Makale, …

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.