What you'll learn:
- Sıfırdan çok katmanlı mimari ile aspnet core mvc/api uygulaması geliştirmeyi öğreneceksiniz
Bu kursum .Net8 SDK ile sıfırdan tekrar hazırlanmıştır.
Bu kursun amacı, katmanlı mimari veya Clean Architecture gibi yazılım mimarilerini kullanarak uygulama geliştirirken izlenmesi gereken en iyi uygulama ve teknikleri (best practices) kapsamlı bir şekilde ele almaktır. Kurs boyunca, bu mimari desenlerin temel prensiplerini, yapı taşlarını ve gerçek dünyada karşılaşabileceğiniz senaryolarda nasıl etkili bir şekilde uygulanabileceklerini detaylı olarak inceleyeceğiz. Katılımcılar, bu mimarileri kullanarak yazılım geliştirme süreçlerinde karşılaşabilecekleri zorlukları nasıl aşabileceklerini ve kaliteli, sürdürülebilir yazılımlar geliştirebilmek için hangi adımları atmaları gerektiğini öğrenecekler.
N Layer Architecture
Katmanlı mimari (NLayer Architecture), bir yazılım uygulamasını farklı işlevsel bileşenlere veya katmanlara ayırarak, bu bileşenlerin daha modüler, bakımı kolay ve test edilebilir hale gelmesini sağlayan bir yazılım mimarisi desenidir. Her katman, belirli bir sorumluluğa sahip olup, uygulamanın belirli bir bölümünün işlevselliğini kapsar. Bu mimari, yazılım geliştirme sürecinde karmaşıklığı yönetmek ve uygulamanın esnekliğini artırmak amacıyla kullanılır.
Katmanlar Nelerdir?
Katmanlı mimaride genellikle dört ana katman bulunur:
Presentation Layer (Sunum Katmanı):
Amacı: Kullanıcı arayüzünün sağlandığı katmandır. Kullanıcı ile uygulama arasındaki etkileşimi yönetir.
Business Logic Layer (İş Katmanı):
Amacı: Uygulamanın iş kurallarını ve mantığını içerir.
Data Access Layer (Veri Erişim Katmanı):
Amacı: Uygulamanın veri kaynaklarına (veritabanları, dosya sistemleri, harici API'ler vb.) erişimini sağlar.
Katmanlar Arasındaki İlişki
Sunum Katmanı kullanıcıdan gelen girdileri alır ve İş Katmanına iletir.
İş Katmanı bu girdileri iş kurallarına göre işler ve gerekli verileri almak için Veri Erişim Katmanı ile iletişim kurar.
Veri Erişim Katmanı ise verileri Veritabanı Katmanından alır ve iş katmanına geri döner.
Bu yapı, her katmanın kendi sorumluluk alanında çalışmasını sağlar ve katmanlar arasındaki bağımlılıkları azaltarak, uygulamanın daha modüler ve esnek olmasını mümkün kılar.
Clean Architecture
Clean Architecture, yazılım uygulamalarının sürdürülebilirliğini, esnekliğini ve test edilebilirliğini artırmak amacıyla geliştirilmiş bir mimari yaklaşımdır. Bu mimari, katı bağımlılık kurallarını izleyerek, iş kurallarını ve sistemin geri kalanından izole etmeyi hedefler. Clean Architecture'da, bağımlılıklar her zaman daha az önemli ayrıntılardan daha önemli iş kurallarına doğru yönlendirilir. Bu yaklaşım, uygulamanın zaman içinde daha kolay bir şekilde değiştirilmesini ve genişletilmesini sağlar.
Kursa ait tüm ders kodları github adresinden indirilebilecektir.