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 :...

Css ve Div ile Web Sitesi Yapmak

XHTML Kodumuz: <div id= "site" > <div id= "ust" > üst kısım </div> <div id= "icerik" > içerik </div> <div id= "sol" > sol kısım </div> <div id= "alt" > alt kısım </div> </div> CSS Kodumuz: #site { width : 768px ; margin:0 auto; /* sayfayı ortalama kodu */ } #ust { width : 768px ; } #icerik { float : right ; /* sağ tarafa yaslama kodu */ width : 568px ; } #sol { float : left ; /* sol tarafa yaslama kodu */ width : 200px ; } #alt { width : 768px ; clear : both ; /* bir çeşit float temizleme kodu, bu kod ile alt kısım alt tarafta kalacak*/ }

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">