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


6
Neden iyi programcılar Ninjalar olarak adlandırılıyor? [kapalı]
Bir Ninja programcısı nasıl tanımlanır? Bu sadece deneyimli bir geliştirici ise, bunu tanımlamanın gerçekten daha iyi bir yolu yok mu? Ninja, geliştiricileri kendine ihtişamlı yanılsamalarla çekmek için tasarlanan çocukça bir pazarlama hilesi gibi görünüyor. Yoksa bir şey mi kaçırıyorum? Özellikle, karşılaştırmayı geçerli kılan programcılarda (soğukluk faktörünün yanı sıra) Ninja'nın hangi …


8
Neden .NET kitaplar yığın vs yığın bellek ayırma hakkında konuşurlar?
Her .net kitabı, referans tiplerine karşı değer tiplerinden bahsediyor gibi görünüyor ve her tipin depolandığı (yığın veya yığın) (genellikle yanlış) durumuna işaret ediyor. Genellikle ilk birkaç bölümde yer almaktadır ve bazı önemli hususlar olarak sunulmuştur. Sanırım sertifika sınavlarında bile var . Neden yığın vs yığın bile (acemi) .Net geliştiricileri için …
36 .net 

30
Kağıda kod yazdırmak yaygın mıdır? [kapalı]
Kod satırımı 80 karakterin altında tutmayı seviyorum, çünkü: Yatay kaydırma yapmak zorunda değilim; Bu sınırı aşarsa çizginin muhtemelen çok karmaşık olduğunu biliyorum; ve güzel kağıda yazdırır. İkincisi ile ilgili olarak, yalnızca birkaçını tanımak için kod yazdıran biriyle tanıştım (Ben onlardan biriyim). Peki kodu basmak ne kadar yaygın?

11
Birim testinden geçmek için minimum kodu yazmak - hile yapmadan!
TDD yaparken ve bir birim testi yazarken, test ettiğiniz "uygulama" kodunun ilk yinelemesini yazarken "hile yapma" dürtüsüne nasıl karşı çıkılır? Örneğin: Bir sayının Faktörünü hesaplayalım. Birim testiyle başladım (MSTest kullanarak). [TestClass] public class CalculateFactorialTests { [TestMethod] public void CalculateFactorial_5_input_returns_120() { // Arrange var myMath = new MyMath(); // Act long …
36 unit-testing  tdd 

10
Switch deyimlerini mi kullanmalıyım yoksa… zincirler daha mı uzun?
Genellikle switch ifadesini duyduğumda, uzun süre yerine geçecek bir yöntem olarak ... başka zincirler çıkardı. Fakat anlaşılan anahtar, switch ifadesini kullandığımda sadece yazacağım koddan daha fazla kod yazıyorum. Tüm çağrılar için tüm değişkenleri aynı kapsamda tutmak gibi başka sorunlarınız da var . İşte normalde yazdığım akışı gösteren bazı kodlar ( …

8
Linq, .NET programcıları üzerinde zihin uyuşukluğu yaratıyor mu?
Birçoğumuz jQuery ile bu fenomeni görmeye başladık, yaklaşık bir yıl önce insanlar jQuery ile sorgu dizgisini geri almak gibi kesinlikle delice şeyler yapmayı sormaya başladılar . Arasındaki fark kütüphanesinden (jQuery) ve dilin (JavaScript) görünüşe göre pek çok programcılar üzerinde kaybolur ve gerekli olmadığı uygunsuz, dolambaçlı kod bir çok sonuç yazılıyor. …

3
Entegrasyon testleri tüm ünite testlerini tekrarlamak içindir?
Diyelim ki bir işleve sahibim (Ruby'de yazılmıştır, ancak herkes tarafından anlaşılabilir olmalıdır): def am_I_old_enough?(name = 'filip') person = Person::API.new(name) if person.male? return person.age > 21 else return person.age > 18 end end Birim testinde tüm senaryoları kapsayacak şekilde dört test oluşturacağım. Her biri Person::APIinatlı yöntemlerle alaycı nesne kullanacaktır male?ve age. …

3
Bir stream öğesini değiştirmek için peek () kullanmak bir antipattern mı?
Diyelim ki bir şeyler akışım var ve onları orta akışta "zenginleştirmek" istiyorum, bunu peek()yapmak için kullanabilirim , örneğin: streamOfThings.peek(this::thingMutator).forEach(this::someConsumer); Şeylerin kodda bu noktada mutasyona tabi tutulmasının doğru bir davranış olduğunu varsayalım - örneğin, thingMutatoryöntem "lastProcessed" alanını şimdiki zamana ayarlayabilir. Ancak, peek()çoğu bağlamda "bak, ama dokunma" anlamına gelir. Kullanarak mı peek()hiç …

3
Birleştirilmiş bir dalı tekrar kullanmak iyi bir uygulama mı?
Şu anda, uygulamama yeni bir özellik eklemek zorunda kaldığımda her zaman yeni bir şube oluşturdum. Özelliğim bittiğinde ve işlevsel olduğunda, bunu ana dalla birleştiririm. Ancak daha sonra, bu özelliği güncellemem gerektiğinde (bir geliştirme gibi), yeni bir şube oluşturmak daha iyi olur mu yoksa bir önceki ana ile yeniden düzenlemem gerekiyor …
36 git  branching 


3
Bir veritabanında metin sütunları üzerinden varchar kullanmak için herhangi bir sebep var mı?
Mı varcharsadece bir kalıntı önce gelen textgeldi, yoksa olurdu durumlar kullanmak vardır istediğiniz bir kullanımı varchar? (Veya charbu konuda ..) (Günlük Postgres ve MySQL (MyISAM) kullanıyorum, bu yüzden bunlar en çok ilgilendiğim şey, ancak diğer veritabanlarının cevapları elbette memnuniyetle karşılıyor. ^ _-)

5
Yazılımın başarı / başarısızlık oranlarının yeniden yazılması ile ilgili herhangi bir gerçek vaka incelemesi var mı?
Uygulamaların yeniden yazılmasının kötü olduğu, insanların burada programcılarla ilgili deneyimleri ve bu konuda Joel Spolsky tarafından hazırladığım bir yazı olduğunu , ancak katı kanıtlar veya vaka çalışmaları ile ilgili çok sayıda yazı gördüm . Joel'in verdiği iki örnek ve burada başka bazı yazılar dışında, kötü bir kod temeli ile ne …

1
Btree ve rtree indeksleme arasındaki fark nedir?
MySQLWorkbench'te, tasarımınızı geliştirmeden önce dizinlerinizi nasıl depolayacağınızı seçebileceğinizi fark ettim. Depolama türleri: B-ağacı RTree HASH Bunu araştırırken, başımın hemen hemen üzerinde olan bazı bilgiler buldum, bu yüzden bunlar arasındaki farkın ne olduğu ve / veya neden bir başkasını seçmeniz gerektiği hakkında pratik bilgiler arıyorum. Ayrıca, daha önce hiç depolama türü …

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.