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
Bağımlılık enjeksiyonunu bir kapla kullanmak ile bir servis bulucu kullanmak arasındaki fark nedir?
Bir sınıf içinde doğrudan somutlaştırıcı bağımlılıkların kötü bir uygulama olarak kabul edildiğini anlıyorum. Bu, testlerin çok zor olduğu her şeyi çok sıkı bir şekilde yapmak gibi bir anlam ifade ediyor. Karşılaştığım çerçevelerin hemen hemen tümü, hizmet konumlayıcıları kullanmaya bağlı bir kapla bağımlılık enjeksiyonunu tercih ediyor gibi görünüyor. Her ikisi de, …

8
"Eşzamanlı" ve "paralel" yürütme arasındaki fark?
Eşzamanlı ve paralel yürütme terimleri arasındaki fark nedir ? Ayrımı asla tam olarak anlayamadım. Etiketi eşzamanlılığı aynı anda iki işlemi yürütmenin bir yolu olarak tanımlar, ancak paralelliğin tamamen aynı şey olduğunu düşündüm, yani: ayrı işlemciler üzerinde potansiyel olarak çalıştırılabilen ayrı iş parçacıkları veya işlemler. Ayrıca, asenkron I / O gibi …


10
Tasarım desenleri günümüzde gerçekten gerekli mi?
"İşyerinde Kodlayıcılar" okuyordum ve kitapta görüşülen bazı profesyonellerin tasarım kalıpları konusunda çok hevesli olmadıkları gerçeğiyle karşılaştım. Bunun 2 ana nedeni olduğunu düşünüyorum: Tasarım desenleri bizi terimleriyle düşünmeye zorlar. Başka bir deyişle, yeni bir şey icat etmek neredeyse imkansızdır (belki daha iyi). Tasarım desenleri sonsuza dek sürmez. Dil ve teknolojiler hızlı …

15
Bir yöntem için bellek vs performans hızı ne zaman optimize etmek?
Geçenlerde Amazon'da röportaj yaptım. Bir kodlama oturumu sırasında görüşmeci neden bir yöntemde bir değişken tanımladığımı sordu. Sürecimi açıkladım ve aynı sorunu daha az değişkenle çözmem için beni zorladı. Örneğin, ile başladı (bu görüşmeden değildi) Yöntem A daha sonra geliştirilmiş için , Yöntem B kaldırarak int s. Memnun kaldığını ve bunun …

13
Hangi “sürüm adlandırma kuralını” kullanıyorsunuz? [kapalı]
Farklı sürüm adlandırma kuralları farklı projeler için uygun mudur? Ne kullanıyorsunuz ve neden? Şahsen ben onaltılık (örneğin 11BCF) bir yapı numarası tercih ederim, bu çok düzenli olarak artırılmalıdır. Ve sonra müşteriler için basit bir 3 haneli sürüm numarası, yani 1.1.3. 1.2.3 (11BCF) <- Build number, should correspond with a revision …

9
Veritabanı ne kadar iş mantığı uygulamalı?
İş mantığının çoğunun veritabanında uygulandığı bazı projelerde çalıştım (çoğunlukla saklı yordamlarla). Diğer taraftan bazı diğer programcılardan bunun kötü bir uygulama olduğunu duydum ("Veri depolamak için veritabanları var. Gerisini orada yapmak için uygulamalar var"). Bu yaklaşımlardan hangisi genel olarak daha iyidir? DB'de iş mantığını uygulayabileceğimin avantajları: İş mantığının merkezileşmesi; Uygulama türünün …

9
Web uygulamasından korkma “geleceğe hazır” değildir
Küçük, yerel bir SaaS web uygulamasının web geliştiricisiyim. Şu anda yaklaşık yarım düzine müşteriye sahiptir. Uygulamayı tasarlamaya devam ettikçe, kendimi başlangıç ​​aşamasında olan projeye herhangi bir zaman ayırmaya ikna etmek benim için giderek zorlaşıyor. Projeye ve daha önce yazdığım kodlara bağlı olarak büyüdüğümde, iş büyüdükçe uygulama ölçeklenemediğinde ortaya çıkacak olan …

13
Temiz kod uygulamalarını izleyerek daha fazla kodun yazılmasını nasıl haklı çıkarırsınız?
Moderatör notu Bu sorunun zaten kendisine gönderilen on yedi cevabı vardı . Yeni bir cevap göndermeden önce, lütfen mevcut cevapları okuyun ve bakış açınızın yeterince kapsamadığından emin olun. Robert Martin'in "Temiz Kod" kitabında tavsiye edilen bazı uygulamaları, özellikle birlikte çalıştığım yazılım türlerini ve benim için anlamlı olanları (doma olarak takip …

11
Ekibim “modern” olmakla nereden başlamalı? [kapalı]
Ben nispeten yeni bir geliştiriciyim, üniversiteden yeni. Kolejdeyken ve sonraki iş arama sırasında, eğitimimin eksik olduğu bir çok "modern" yazılım geliştirme metodolojisi olduğunu fark ettim: birim testi, kayıt, veritabanı normalizasyonu, çevik gelişim (genel çevik kavramlar vs.), kodlama stili Kılavuzlar, yeniden düzenleme, kod incelemeleri, standartlaştırılmış dokümantasyon metodu (veya hatta gereksinimleri), vb. …
106 agile  teamwork 



15
Veri yapıları görüşmelerde neden bu kadar önemlidir? [kapalı]
Üniversiteden mezun olduğumda veri yapılarında o kadar güçlü olmadığımı itiraf etmeliyim. Mezuniyet sırasındaki kampüs yerleşimleri boyunca, Amazon, Microsoft vb. Gibi büyük teknoloji şirketlerinin çoğunun, çoğunlukla veri yapılarına odaklandığını gördüm. Veri yapıları mezunlardan bekledikleri tek şeymiş gibi görünüyor. Dürüst olmak gerekirse, bu konuda kendimi kötü hissettim. İyi kod yazarım. Kodlamanın standart …

22
İş ilanları gereksinimlerini abartıyor mu? [kapalı]
Makul bir programcı gibi hissediyorum, ancak uğraştığım birçok iş ilanı beni farklı hissettiriyor. Neredeyse hepsi nitelikleri gereksinimleri ve arzulara ayırır, ancak gereksinimler bile zor olabilir. Şirketlerine özgü, nispeten küçük bir teknolojide veya kütüphanede birkaç yıl (2 veya daha fazla) deneyim gerektirdiğini söyleyen birçok ilan gördüm. Diğer zamanlarda bir dil için …
106 skills 

6
XML neden tam olarak “dil” olarak adlandırılıyor?
XML'in neden L adında olduğunu merak ediyorum. Kendi başına, XML hiçbir şey "yapmaz". Bu sadece bir veri depolama formatı, dil değil! Diller işleri "yapar". XML'i "yapma" işlemlerini yapma, onu doğru bir dile çevirme xmlns, kök elemanına özellikler eklemektir . Ancak o zaman çevresine ne hakkında olduğunu söyler. Bir örnek, XHTML'dir. …

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.