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

1
Genel Programlama dili olarak Scala
Garcia ve ark. genel programlama için programlama dilleri özelliklerinin ilginç bir karşılaştırması verilmiştir: terminolojinin kısa açıklaması ile: Herkes bu çerçevede genel programlama için Scala desteğini test edebilir mi? Yani ilk tabloya mümkünse açıklamaları içeren bir sütun ekleyin.


1
Bir üçüncü taraf kodunun sarılması, tüketicilerini birim test etmek için tek çözüm mü?
Birim sınaması yapıyorum ve sınıflarımdan birinde yöntemlerden birinden posta göndermem gerekiyor, bu yüzden yapıcı enjeksiyonunu kullanarak Zend_MailZend çerçevesindeki sınıf örneğini enjekte ediyorum . Şimdi bazı insanlar bir kütüphane yeterince kararlıysa ve sık sık değişmeyecekse, onu sarmaya gerek olmadığını savunuyorlar. Bu nedenle Zend_Mail, istikrarlı olduğunu ve değişmeyeceğini ve ihtiyaçlarıma tamamen uyduğunu …


1
Üst düzey liste işlevleri için C ++ 11 desteği
Çoğu fonksiyonel programlama dilleri (mesela Common Lisp, Scheme / Raket, Clojure, Haskell, Scala, Ocaml, SML) gibi listelerde bazı ortak yüksek mertebeden fonksiyonları desteklemek map, filter, takeWhile, dropWhile, foldl, foldrmesela (bkz , Common Lisp, Scheme / Racket Clojure yan yana referans sayfası , Haskell , Scala , OCaml ve SML belgeleri.) …

5
Şirketimin gizli araştırma kodundan açık kaynak kodlu sürümler çıkarmayı en iyi nasıl yapabilirim?
Şirketim (onlara Acme Technology diyelim) başlangıçta Acme Labs araştırma grubundan gelen, birkaç yıl boyunca bir geliştirme grubunda inkübe edilen ve daha yakın zamanda bir avuç müşteriye sağlanan yaklaşık bin kaynak dosyadan oluşan bir kütüphaneye sahip ifşa. Acme, kodun belki de% 75'ini açık kaynak topluluğuna bırakmaya hazırlanıyor. Diğer% 25 daha sonra …

6
Çevik metodolojiler kullanarak yazılımı yeniden yazma
Agile yöntemlerini kullanarak tüm bir uygulamayı yeniden yazmanız gerektiğini varsayalım, nasıl yapardınız? Sanırım mevcut sisteminizin davranışına dayanarak çok sayıda kullanıcı hikayesi yazabilirsiniz. Ve sonra bunları küçük iterasyonlarda uygulayın. Ancak bu, ÖN YUKARI gereksinimlerimiz olduğu anlamına gelmez ?? Ayrıca, ne zaman yayınlamaya başlayacaksınız? Agile, erken ve sık sık bırakmamız gerektiğini söylüyor, …

5
Veri türünden bir değeri açmak için yapıcıya ters bir işlev için uygun terim nedir?
Düzenleme: Soruyu biraz yeniden ifade ediyorum. Görünüşe göre biraz karışıklığa neden oldum çünkü yıkıcı teriminin OOP'de oldukça farklı bir şey için kullanıldığını fark etmedim - bir nesne yok edildiğinde çağrılan bir işlev. Fonksiyonel programlamada değişebilir durumdan kaçınırız (böylece deneriz), böylece böyle bir eşdeğer yoktur. (Soruya uygun etiketi ekledim.) Bunun yerine, …

3
Java'da bir döngü içinde veya dışında değişkenler bildirirsem bir fark yaratır mı? [kapalı]
Kapalı. Bu soru konu dışı . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Soruyu Yazılım Mühendisliği Yığın Değişimi için konuyla ilgili olacak şekilde güncelleyin . 2 yıl önce kapalı . Olası Çoğaltma: Değişkenleri nerede beyan ediyorsunuz? Bir yöntemin üst kısmı veya ihtiyacınız olduğunda? Java'da bir döngü içinde …
13 java  variables  loops 

8
Uygulanabilir olup olmadığından emin olmadığınız bir özellik sunmaya söz vermeli misiniz?
HN'nin bir makalesinde aşağıdaki tavsiyeye rastladım: Emin değilseniz bile müşterinize / kullanıcınıza "evet" deyin. Zamanın% 90'ında bunu yapmanın bir yolunu bulacaksınız. Zamanın% 10'u geri döner ve özür dileriz. Büyük kişisel büyüme için ödenecek küçük fiyat Ama ben her zaman bir müşteriye / kullanıcıya herhangi bir söz vermeden önce fizibilite analizi …

4
Özdeş imzalara sahip iki arayüz
Kartların iki önemli özelliğe sahip olduğu bir kart oyunu modellemeye çalışıyorum: Birincisi bir etkidir. Bunlar, kartı oynadığınızda meydana gelen oyun durumundaki değişikliklerdir. Etki için arayüz aşağıdaki gibidir: boolean isPlayable(Player p, GameState gs); void play(Player p, GameState gs); Ve ancak maliyetini karşılayabiliyorsanız ve tüm etkileri oynatılabiliyorsa kartın oynanabilir olduğunu düşünebilirsiniz. Şöyle …
13 interfaces 

2
Büyük fonksiyonel programlama uygulamaları oluşturmak için yaygın olarak kullanılan belirli iş akışları veya tasarım modelleri var mı? [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ı . Önemsiz projelerde kullanmadığım halde Clojure'u bir süredir araştırıyorum. Temel olarak, sözdizimi ve bazı deyimlerle …

4
Çift Programlamanın Nedenleri
Yönetimin çift programlama fikrini bana ya da başka bir yöneticiye / geliştiriciye geçirdiği birkaç mağazada çalıştım ve arkasına geçemiyorum. Bir geliştirici bakış açısından, bu kodlama stiline geçmenin yararlı olmasının bir sebebini bulamıyorum ya da küçük bir takımın yöneticisi olarak herhangi bir fayda görmedim. Temel sözdizimi hatalarına yardımcı olduğunu ve bir …

6
github'da bitmemiş bir proje için kod koymanın avantajları ve dezavantajları nelerdir
Githublar aracılığıyla açık kaynak olarak yayınlamayı düşündüğüm bir proje üzerinde çalışacağımı belirtiyorum. Proje yayınlanmadan önce çalışma durumuna gelene kadar beklemenin aksine, kodu github'a en baştan koymanın avantajları nelerdir. Önemli ise, bu özel proje bir C # uygulaması / hizmetidir ve sadece ücretsiz bir github hesabım var (bu yüzden özel yapamıyorum …

8
Artık bir kodlama standardına ihtiyaç var mı?
Bir kodlama standardının çok yardımcı olduğu kanıtlanmıştır. Bununla birlikte, programcının tercih ettiği herhangi bir standarda göre biçimlendirilecek birçok farklı araç ve IDE vardır. Kod düzgün / yorumlandığı sürece (ve bir spagetti karışıklık değil), bir kodlama standardı ihtiyacını görmüyorum. Bir kodlama standardının geliştirilmesi için herhangi bir argüman var mı (bir tane …

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.