Ana içeriğe atla

Katmanlı ve Çok Katmanlı Yazılım Mimarisi

Çok katmanlı yazılım mimarisi nedir? sorusundan önce katmanlı yazılım mimarisi nedir? onu inceleyelim.

Katmanlı Yazılım Mimarisi

Yazılım projelerinin ilk aşamada iş yükü olarak görünse de, sürdürülebilirlik açısından çok daha az maliyetli ve kullanım kolaylığı sağlayan bazı temel yapı taşları vardır. Bunlardan biri de kuşkusuz katmanlı mimari oluşturulmasıdır. Peki katmanlı mimarinin bize kazanımları nelerdir ve neye göre nasıl oluşturulur temel olarak bir inceleyelim.

Katmanlı mimarinin en büyük yararı, kodlarımızı daha küçük yapılara bölerek kolay kontrol edilebilirlik ve güncellenebilirlik sağlar. Ayrıca verilerimizin güvenliğini de en yüksek seviyede korur. Örneğin bir web projesi için, tüm veritabanı işlemlerimizi, butonların arkasına yazılan bir sorgu olarak yaparsak, tasarım değişikliğinde tüm kodları tekrardan yazmamız gerekir. Ya da çıkan her hangi bir sorun anında, katmanlı mimaride sadece sorunlu kısmı inceleyecekken, monolithic adı verilen tek katmanlı yazılımda tüm projeyi incelememiz gerekir.

Katmanlı mimari oluşturulurken kesinlikle en iyi yapı bu diyebileceğimiz bir yapı yoktur. Kullanacağımız teknolojiler, kullanıcıya sunacağımız olanaklar ve beklediğimiz performans gibi bir çok etmen mimari yapısı açısından önemlidir. Katman sayısı ve işleyişi bunlara bağlıdır. Genel olarak kullanılan 3 katmanlı mimari, bu durumlar göz önüne alındığında 7 katmana kadar bile çıkabilir. Ayrıca istenildiği taktirde her hangi bir katman da kendi içerisinde katmanlara ayrılabilir.

Çok Katmanlı Yazılım Mimarisi

Kodlamalar sırasında işimizi kolaylaştıracak katmanlar mevcuttur. Genelde üç katman yapısı standarttır. İhtiyaca göre katman sayısı arttırılıp azaltılabilir. Çok katmanlı mimarinin tercih edilme nedeni proje yönetiminin kolay olması, ekip çalışmasına uygun olması, hata yönetiminin kolay olması vs. gibi nedenlerden tercih edilir.

Genel olarak standart üç katman vardır;
DAL (Data Access Layer) - Veri Erişim Katmanı
BL (Busines Layer) - İş Katmanı
PL (Presentation Layer) - Sunum Katmanı



Genel prensip, veritabanı işlemleri DAL tarafından, o veritabanının kullanılıp data manipülasyonlarının yapılması işlemi de BL tarafından yapılmalı ve sonuçlar PL ye gönderilmelidir. Sunum katmanın da, kod arkasında sadece verilerin gösterilmesini sağlayan kodların yazılması makbuldür. Yani sunum katmanın da veritabanı ile ilgili hiçbir işlem olmamalıdır. Bu katmanlar oluşturulurken klasörler içinde oluşturulabileceği gibi, eğer birden fazla projede kullanılması hedefleniyorsa dll ler olarakta oluşturulabilirler.

Yorumlar

Bu blogdaki popüler yayınlar

CSS üstte sabit duran menü yapımı

Sitenin en üstünde sabir şekilde duran menüler ile birçok site ve blog’da karşılaşıyoruz. Benzer bir menüyü sizde sitenize eklemek istiyorsanız basitçe özel hazırlanan bu örneği de kullanabilirsiniz. HTML Kodu: < html > < head >      < meta charset = "utf-8" >      < title >Yusuf Akdin</ title >      < link rel = "stylesheet" type = "text/css" href = "style.css" > </ head > < body >      < div class = "ust" >          Üst taraftaki sabit menü      </ div >      < div class = "orta" >          Site İçeriği      </ div > </ body > </ html > CSS Kodu: html,body{      margin :  0 ;      padding :...

Apple Bilgisayarlarının Hızının Sırları: Donanım, Yazılım ve Mühendislik İnovasyonunun Gücü

Apple bilgisayarlarının hızını ve performansını anlamak için, hem donanım hem de yazılım düzeyinde incelemeler yapmak gerekir. Apple, bilgisayarlarının hızını artırmak için birkaç temel faktörü bir araya getiriyor. Apple bilgisayarlarının hızının arkasında birçok mühendislik çözümü bulunuyor. Donanım ve yazılım arasındaki mükemmel entegrasyon, Apple Silicon işlemcilerin verimli ARM mimarisi, yüksek performanslı bellek ve özel yazılımlar sayesinde Apple bilgisayarları, yüksek işlem gücü, düşük enerji tüketimi ve hızlı uygulama performansı sunuyor. Apple’ın, donanım ve yazılım alanlarındaki özelleştirmeleri, kullanıcıların en verimli deneyimi yaşamasını sağlayarak, hız ve performans konusunda diğer markalarla kıyaslandığında önemli bir avantaj elde etmelerine olanak tanıyor. 1. Donanım ve Apple Silicon İşlemciler Apple'ın hızının en önemli nedenlerinden biri, kendi işlemcilerini üretmeye başlamasıdır. 2020 yılında Apple, Intel işlemciler yerine kendi geliştirdiği Apple Silicon seris...

Normalize.Css Nedir? Nerede Kullanılır? Ne işe Yarar?

Normalize.css ile bütün tarayıcıları ayarlarını normalleştirerek yazdığımız kodların anormal bir şekilde her tarayıcıda farklı bir görünüm ve anlayış göstermemesini sağlar. Normalize.css'in yenilikçi bir yapıt olmasının en iyi örneği HTML5 uyumlu bir durumda ve mobil site anlayışında bile etkileyici bir uyumluluk söz konusu. Hoşunuza gitmeye başladı öyle değil mi? Haklısınız çünkü Normalize.css'i  Twitter Boostrap ,  CSS Tricks ,  GitHub ,  SoundCloud  gibi yapıtlar da kullanıyor. Normalize.css'i indirmek için : https://necolas.github.io/normalize.css linkine tıklayıp download butonu yardımıyla Normalize.css'in en güncel sürümüne ulaşabilie ve indirebilirsiniz. Normalize.css'i projemde nasıl kullanabilirim? : Aşağıdaki kodu yardımıyla kolayca projenizde kullanabilirsiniz. <link href="normalize.css" rel="stylesheet">