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

2
Bağımlılık Enjeksiyonu ne kadardır?
Bir sınıfın bağımlılığı olan her şey için (Bahar) Bağımlılık Enjeksiyonunu kullanan bir projede çalışıyorum. Spring konfigürasyon dosyasının 4000 satır kadar büyüdüğü bir noktadayız. Çok uzun zaman önce Bob Amca'nın YouTube'daki konuşmalarından birini izledim (ne yazık ki bağlantıyı bulamadım), ancak birkaç ana bağımlılığa (örneğin fabrikalar, veri tabanları ...) ana bileşenine enjekte …

3
Enum veri türünü kullanmak yerine yeni bir veritabanı tablosu oluşturmak gereksiz midir?
Diyelim ki sunduğum 4 tür hizmetim var (sık sık değişme olasılığı yoktur): Test yapmak tasarlamak Programlama Diğer Her birinin yukarıdaki kategorilerden birine giren 60-80 gerçek hizmetim olduğunu varsayalım. Örneğin, 'hizmet', "A tekniği kullanarak Test Programı" olabilir ve "Test" türündedir. Onları bir veritabanına kodlamak istiyorum. Birkaç seçenek buldum: Seçenek 0: VARCHARHizmet …

6
Uzun derlemeler geçmişte kaldı mı?
Bir derlemenin ne kadar süreceği konusunda sayısız savaş hikayesi var. Xkcd bile bundan bahsetti. Şimdi, uzun zamandır programlama yapıyorum ve çoğunlukla Java ve Python'a maruz kaldım (ve Python derlenmiş bir dil değil, yorumlanmış bir dildir). Derlemesi çok uzun süren projelerle karşılaşmamamın mümkün olduğunu anladım, ancak düzgün boyuttaki uygulamalar için bile, …

4
Sınıf yöntemi tanımlarını sipariş etmenin en insan dostu yolu mu?
Herhangi bir sınıf tanımında, çeşitli şekillerde sıralanan yöntem tanımlarını gördüm: alfabetik, en yaygın kullanıma dayalı kronolojik, görünürlükle alfabetik olarak gruplandırılmış, alıcılar ve birlikte gruplandırılmış harflerle alfabetik, vb. Yeni bir sınıf yazmaya başladığımda, Ben sadece her şeyi yazmaya meyilliyim, sonra da tüm sınıfı yazmayı bitirince yeniden sıraladım. O notta üç sorum …


5
Birden çok kez uygulanabilen ve ilk uygulamanın ötesinde hiçbir zaman durum değiştirmeyen bir işlemin sözcüğü nedir?
Bir kelimeyi hatırlamaya çalışıyorum, bunun hesaplama veya veritabanı teorisi ile ilgili olduğunu düşünüyorum . En yakın eşanlamlı atomicama tam olarak bu değil. Temel olarak, art arda defalarca çalıştırılsa bile aynı sonucu vermesi gereken bir tür hesaplama, yani kendisi için yan etkiler yaratmaz. Özellikle bu kelime ile chmod komutu (veya başka …

8
'Soyutlama katmanı' ve 'dolaylılık düzeyi' arasındaki fark nedir?
Her iki terimin de birbirinin yerine kullanılıp kullanılmayacağından emin değilim. Belki bilgisayar bilimlerinde günlük programlamayla ilgili olmayan bazı akademik farklılıklar vardır? Ya da her iki terimi de yanılmadan birbirlerinin yerine kullanabilir miyim? Belki de her iki terimi de kullandığım bağlama bağlı. Düzenleme: Her iki terimin de muhtemelen birbiriyle değiştirilebilir olduğunu …

4
İstisnalar atama istisnalarına karşı mı?
Genellikle bir işlev yazarken, bu tür hataları olabildiğince erken tespit etmek için girdilerin geçerli olduğundan emin olmak istiyorum (bunlara ön koşul denir). Bir önkoşul başarısız olduğunda, her zaman bir istisna fırlattım. Ancak bunun en iyi uygulama olup olmadığından ve iddiaların daha uygun olacağından şüphe duymaya başladım. Öyleyse ne zaman yapmalıyım: …

5
Editörlerdeki koyu renk şemaları neden bu kadar popüler? [kapalı]
Günümüzde, hemen hemen herkes kod editöründe koyu renk şeması kullanıyor - açık renkli koyu arka plan. Çoğu web tabanlı editör bile (örneğin Github'da) koyu renk şemalarına sahiptir. Gerçekten faydaları göremiyorum. İnsan gözü parlak bir arka plan üzerinde koyu metin okurken çok daha iyidir. Ayrıca, beyaz renkteki siyah şemalar, aydınlık ortamlarda …

5
İşlevsel programlama bağlamında anemik modelden bahsetmek hala geçerli mi?
DDD taktik tasarım modellerinin çoğu, nesne yönelimli paradigmaya aittir ve anemik model, tüm iş mantığının nesneler yerine hizmetlere konması durumunu açıklar ve böylece onları bir tür DTO yapar. Diğer bir deyişle, anemik model, karmaşık model için önerilmeyen bir ussal stilin eş anlamlısıdır. Saf işlevsel programlama konusunda pek tecrübeli değilim, ancak …

7
Uygulama yapılandırmalarını depolamak için tercih edilen yol nedir?
Çoğu zaman, geliştirme uygulaması config'i projenin kök dizininde saklıyorum, şöyle: app |-- config.json Ancak bu en iyi yaklaşım gibi görünmüyor çünkü bu yapılandırma sürüm kontrol sisteminde depolanıyor - muhtemelen kullanıcı adlarına, şifrelere ve diğer hassas özelliklere neden oluyor. 12 Factor App kılavuzu, config dosyalarını tamamen bırakmanızı ve konfigürasyon ayarları için …

2
Bir JavaScript sözünü bir sözden başka bir şeyi nasıl iade edebilirim?
Bir modülde bir yöntemin uygulanması için müşteriden bir spesifikasyon var: // getGenres(): // Returns a promise. When it resolves, it returns an array. Bir dizi dizi verilirse, ['comedy', 'drama', 'action'] İşte bir söz ile bir iskelet yöntemi: MovieLibrary.getGenres = function() { var promise = new Promise(function(resolve, reject) { /* missing …
38 javascript 

7
Bilinen kusurlar için birim testleri yapmalı mıyım?
Kodum, düzeltilmesi gereken ancak henüz geçmemiş olması ve mevcut sürüm için düzeltilmemesi gereken ve öngörülebilir gelecekte düzeltilmemesi gereken bilinen bir kusur içeriyorsa, bu hata için başarısız bir ünite testi yapılmalıysa, test odası? Birim testini eklersem, (açıkçası) başarısız olur ve başarısız testlere alışmak kötü bir fikir gibi görünüyor. Öte yandan, bilinen …
37 unit-testing  tdd 


1
C ++ 11 std :: stoi içerir, neden std :: itos olmasın?
G ++ 'e göre, C ++ 11 std::sto@ints / float / longs dizgilerinden kolayca çıkarmak için bir işlev ailesine sahip olduğunu fark ettim . Ancak bunun tam tersi uygulanmadığı için şaşırdım. Neden standartlar komitesi std::itos, ints / float / neyse (geri) dizelere geçmek için bir işlev ailesi içermiyordu ?
37 c++  parsing  strings  c++11 

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.