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
Derleyiciler daha hızlı derleme süreleri için çoklu iş parçacığı kullanıyor mu?
Derleyicilerimin kursunu doğru hatırlarsam, tipik derleyici aşağıdaki basitleştirilmiş taslağa sahiptir: Sözlüksel analizör kaynak kodu karakter karakter tarar (veya bazı tarama işlevlerini çağırır) Giriş karakterleri dizisi, geçerlilik için sözlüklerin sözlüğüne göre kontrol edilir Sözlük geçerliyse, karşılık geldiği belirteç olarak sınıflandırılır Ayrıştırıcı, belirteç kombinasyonunun sözdizimini doğrular; belirteç . Teorik olarak kaynak kodunu …

2
Veri doğrulama: ayrılmış sınıf mı değil mi?
Doğrulanması gereken çok fazla veri olduğunda, yalnızca doğrulama amacıyla yeni bir sınıf oluşturmalı mıyım yoksa yöntem içi doğrulamaya sadık kalmalı mıyım? Benim özel örneğim bir turnuvayı ve bir etkinlik / kategori sınıfını tasarlar: Tournamentve Eventbir spor turnuvasını modelleyen ve her turnuvanın bir veya daha fazla kategorisi vardır. Bu sınıflarda doğrulanacak …
16 java  design  data  validation 

4
Microservices REST veya AMQP, bu durumda
Mikro hizmet mimarisi ile ilgili birçok makale okudum ve AMQP veya REST'in ne zaman kullanılacağını merak ediyordum. Hizmetler arasındaki gevşek bağlantının iyi bir şey olduğunu okudum ve AMQP bu durumda iyi bir seçim gibi görünüyor. Ancak AMQP kullanırsak, artık REST uç noktalarına ihtiyacımız olmadığı anlamına gelir (ancak HATEOAS konseptini kaybettiğimiz …

2
** kwargs bir antipattern mi?
Dahili kod tabanımızda kütüphanelerimizi dahili olarak çağıran çok fazla kodumuz var - bu kütüphaneler genellikle çok fazla argümana sahiptir (matplotlib'i düşünün) ve kodumuz genellikle sadece belirli bir görevi yerine getirir ve **kwargsçağrılan bir sonraki işleve geçer . Örneğin: def our_method(dataframe, **kwargs): result = do_something_with_data(dataframe) external_module.draw(result, **kwargs) İken **kwargsbizim yöntem bildiriminde …
16 python 

4
Bağımlılık enjeksiyonunda “dairesel bağımlılık” nasıl ele alınır
Başlık "Dairesel Bağımlılık" diyor, ancak doğru ifade değil, çünkü bana göre tasarım sağlam görünüyor. Bununla birlikte, mavi parçaların dış ortaktan verildiği ve portakalın kendi uygulamam olduğu aşağıdaki senaryoyu düşünün. Aynı zamanda birden fazla olduğunu varsayalım ConcreteMain, ama belirli bir tane kullanmak istiyorum. (Gerçekte, her sınıfın biraz daha bağımlılıkları var, ama …

4
MVC yardımcı program sınıfları - ASP.NET
Bu yüzden bugün bir ASP.NET MVC uygulamasında yardımcı program sınıflarını nereye koyacağınızı merak ediyordum. Fayda sınıflarına göre statik olabilen ve sadece bir işlevi yerine getirmek için kullanılan sınıfları kastediyorum. E-posta adresini, konuyu ve gövdeyi bağımsız değişken olarak alan bir e-posta gönderen bir sınıf gibi. Belki ayrı bir klasör oluşturmayı ve …

6
Statik anahtar kelimeyi anlama
Java, Javascript ve PHP ile geliştirme konusunda deneyimim var. Sizi C # diliyle tanıştırmak için çok iyi bir kitap olduğunu düşündüğüm Microsoft Visual C # 2010 Adım Adım okuyorum. Statik anahtar kelimeyi anlamada sorun yaşıyorum. Ne kadar bir sınıf statik ilan edilirse bu kadar anladığım kadarıyla tüm yöntemler ve değişken …

2
Hesaplama mantığını bir Türe veya İş Katmanına koymalı mıyım?
Son zamanlarda, Varlık katmanına basit bir hesaplamanın yapılması veya Varlığın yalnızca ham verileri depolamak ve hesaplama mantığını iş katmanında bırakmak için saf olup olmadığı konusunda bir soru ile karşı karşıya kaldım. Benim sorum, bir varlık sınıfındaki özelliklerde basit hesaplamaları kapsüllemenin mantıklı olup olmadığıdır.

6
veritabanı programcıları ne yapar?
Oracle programcıları vb. Hakkında her okuduğumda kafam karışıyor. Tam olarak ne yaptıklarını bilmiyorum. Anladığım kadarıyla, uygulama programcılarının temel işlevselliği geliştirmeleri gerekiyor. Kullandıkları kütüphaneler GUI geliştirmeye veya veritabanı bağlantısına yardımcı olabilir, ancak bu uygulamanın o uygulamanın programlanması ve her uygulamanın farklı olmasını sağlayan işlevsellik (bazılarının başkalarının ayarlanmış sürümleri olabilir). Bu bağlamda, …

3
Ücretsiz ama kapalı kaynak uygulaması için lisans
Ücretsiz olarak yayınlamak istediğim basit bir uygulama geliştirdim ancak kaynak kodunu yayınlamayı planlamıyorum. Uygulamanın serbestçe kullanılabilir olmasını istiyorum, ancak kimsenin onu satmasını veya ters mühendislik yapmasını istemiyorum. MIT Lisansı basit ve güzel görünüyor ancak aynı zamanda herkesin satmasına izin veriyor. Benim için uygun herhangi bir lisans var mı yoksa sadece …

2
DDD'yi uygulama: kullanıcılar ve izinler
Etki alanı odaklı tasarım ilkelerini kavramaya çalışan küçük bir uygulama üzerinde çalışıyorum. Başarılı olursa, bu daha büyük bir proje için bir pilot olabilir. "Etki Alanına Dayalı Tasarımın Uygulanması" (Vaughn Vernon tarafından) kitabını takip etmeye ve benzer, basit bir tartışma forumu uygulamaya çalışıyorum. Ben de github IDDD örnekleri kontrol ettik. Davam …

2
CQRS aşırı mühendisliği değil mi?
Hala eski güzel depoları hatırlıyorum. Ancak depolar zamanla çirkinleşiyordu. Sonra CQRS yaygınlaştı. Onlar güzel, temiz bir nefes vardı. Ama son zamanlarda kendime tekrar tekrar neden mantığı bir Kontrolcinin Eylem yönteminde (özellikle eylemin kendi içinde bir tür komut / sorgu işleyicisi olduğu Web Api'de) tutmuyorum soruyorum. Daha önce bunun için net …

2
DB geçişi ve Azure dağıtım yuvaları
Yeni bir web uygulamasını bir Azure Web Uygulama Hizmeti'ne (eski Azure Web Sitesi) aktarmayı planlıyorum. Dağıtımımı üretime göndermeden önce test edebilmek için dağıtım yuvalarını kullanmak istiyorum. DB şeması değişikliği gerektirmediği sürece her şey yolunda. Ancak bir şema değişikliği varsa, aynı db sürümünde çalışan iki yazılım sürümüne sahip olamam. EF Geçişleri'ni …


1
Gitflow kullanıldığında bir serbest bırakma dalı veya ana dal etiketlenmeli mi?
Bu sorun şunu göstermektedir: Anlayışımdan etiketi birleştirmeden önce (ana dalda değil) serbest bırakma dalına yerleştirmek, aslında doğru olan şeydir, bu yüzden git description tarafından da - geliştirme dalından etiketler de bulunabilir. Bkz. # 374 ederken başka yazı : Bugün yanlışlıkla 0.4.2 öncesi sürümü homebrew aracılığıyla yükledim ve etiketlemenin bu sürümdeki …
16 gitflow 

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.