«separation-of-concerns» etiketlenmiş sorular

Kaygıların ayrılması bir tasarım ilkesidir.

10
Ne demek, “Kullanıcı Yönetici olup olmadığına karar vermemelidir. Ayrıcalıklar veya Güvenlik sistemi gerekir. ”
Soruda kullanılan örnek , kullanıcının yönetici olup olmadığını belirlemek için en iyi şekilde dokunan bir işleve çıplak veri iletmektedir. Yaygın cevaplardan biri şuydu: user.isAdmin() Bu, birkaç kez tekrarlanan ve birçok kez oylanan bir yorum yapılmasına yol açtı: Bir kullanıcı bir Yönetici olup olmadığına karar vermemelidir. Ayrıcalıklar veya Güvenlik sistemi gerekir. …

12
Bir nesnenin bütün eserini yapıcıda yapmak için bir sebep var mı?
Bunun benim kodum ya da iş arkadaşımın kodu olmadığını söyleyerek bunu daha önce belirteyim. Yıllar önce, şirketimiz daha küçükken, kapasitemize sahip olmadığımız için ihtiyaç duyduğumuz bazı projelerimiz vardı, bu yüzden dışarıdan tedarik edildiler. Şimdi, genel olarak dış kaynak kullanımına veya müteahhitlere karşı hiçbir şeyim yok, ancak ürettikleri kod temeli bir …

6
Saklı yordamlar üç aşamalı ayrımı ihlal ediyor mu?
Bazı meslektaşlarım, veritabanındaki saklı yordamlarda iş mantığına sahip olmanın, üç katmanlı ayırma mimarisini ihlal ettiğini, çünkü veritabanının veri katmanına ait olduğunu ve saklı yordamların da iş mantığı olduğunu söylediler. Bence dünya, saklı yordamlar olmadan çok acımasız bir yer olurdu. Gerçekten üç aşamalı ayrılığı ihlal ediyorlar mı?




8
Günlük kodunu tamamen iş mantığının dışında tutmak mümkün müdür?
AOP yardımı ile günlük kodunu iş mantığımdan kaldırabilirim. Ama sadece basit şeyler (yani günlükleme yöntemi giriş / çıkış ve parametre değerleri) günlüğe kaydetmek için kullanılabilir düşünüyorum. Ancak, iş mantığımda bir şey kaydetmem gerekirse ne olur? Örneğin public void SomeDomainMethod(string id) { //Get user by Id User user = Users.Get(id); if …

3
Mimari açıdan bakıldığında, Microsoft'un Entity Framework gibi bir veritabanı soyutlama katmanı ayrı bir Veri Erişim Katmanı ihtiyacını ortadan kaldırıyor mu?
Olduğu gibi Yıllarca yazılım çözümlerimi şu şekilde organize ettim: Verilere erişme işini özetlemek için Veri Erişim Katmanı (DAL) İş kurallarını veri kümelerine uygulamak, kimlik doğrulamasını işlemek vb. İçin Business Logic Layer (BLL) Zamanla oluşturduğum ortak yardımcı yöntemlerin bir kütüphanesi olan Utilities (Util). Tabii ki web, masaüstü, mobil, ne olursa olsun …

6
Dijkstra, endişelerin ayrılması hakkında yazarken kod modülerleştirmeyi planladı mı?
İlk olarak, Edsger W. Dijkstra'nın 1974 tarihli "Bilimsel düşüncenin rolü hakkında" bir alıntı okudum: Size açıklamaya çalışayım, zevkimin ne olduğu tüm zeki düşünme için karakteristiktir. Kişi her zaman kişinin sadece bir yönüyle meşgul olduğunu bilerek, kendi tutarlılığının uğruna tek başına bir konunun bir yönünü derinlemesine incelemeye isteklidir. Bir programın doğru …
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.