| Ana Sayfa | Dersler | Download | Forum |Bize Ulaşın  |Siteni Ekle | Ziyaretçi Defteri |


  LİNUX ÜSTÜNDE .NET
  Regular Expressions
  Bileşen Tabanlı Programlama I
  Bileşen Tabanlı Programlama II
  Bileşen Tabanlı Programlama III
 
 

Bileşen Tabanlı Programlama II

Bileşen tabanlı programlama birçok uygulama geliştirici için başlarda zor gibi görünsede sonrasında vazgeçilmez olmayı başarmıştır. Aslında başlarda zor gelmesi kısmını biraz açmakta fayda var. Şayet ismi benziyor nasılsa düşüncesiyle ASP'den ASP.Net'egeçiyorsanız çoğu kişinin aksine ben zorlanabileceğinizi hatırlatmak isterim. Şayet klasik ASP mantığı ile .Net FrameWork'un hazır namespaceleri içersinde yüzecekseniz sorun yok ama nesneler üzerinde çalışmayı düşünüyorsanız hiçde alışık olmadığınız bir platform sizi bekliyor. Bu sebep ile geçtiğimiz yazımda bileşen tabanlı çalışmanın avantajlarından bahsederek henüz adım atmamış arkadaşların ağızlarını biraz sulandırmaktı amacım. Bu yazımızda ise yine bu arkadaşlara hitaben genel terimlerden bahsedeceğim. Zira bu kısıtlı dokumanlar ile yetinmeyecek birçok arkadaşımız ve aranızdan bileşen tabanlı programlamanın peşini bırakmayanların uğrak yeri olacak olan MSDN'de bazı terimlere yabancılık çekmelerini istemeyiz.

Öncelikle üç katlı yapıdan bahsetmek doğru olacaktır kanımca:

Aslında üç katlı tasarım yapısından kasıt tamamlanmış uygulamalarınızın barındırdığı işlevlerin üç ana düzeyde ayrılabilmesidir.

Sunum Katı
Birincisi kontrolleri görüntüleyen ve kullanıcı tarafından girdinin yapılabildiği ve geçerliğinin denetlenebildiği kullanıcı arabirimidir.
İş Katı
İkinci katman ise asıl işin yapıldığı katmandır. Örneğin hazırladığınız bir e-ticaret uygulamasında kampanyada olan bir ürüne ait yolmasraflarının, tahakkuk eden vergilerin ve diğer tüm gider ve indirimlerin hesaplanması aşamasıdır burada kastım.

Veri Katı
Üçüncü katman ise yapılan iş sonucunda ortaya çıkan verinin saklandığı katmandır.Bu katmanda sql cümleleri, stored procedure gibi veri alma ve işleme ile ilgili mantık yer alır.

Üç katlı tasarımda bilmeniz gereken en önemli nokta bilginin bir katmandan yalnızca ona komşu diğer katmana aktarılabilmesidir. Yani birinci katmandan üçüncü katmana atlayamazsınız. Bu mantık silsilesi dahilinde bileşen tabanlı çalışmanın ana temasını elde edeceğiz. Bu önemli noktayı bir örnek ile açıklayalım zira yukarıda da belirttiğim gibi bu kısım bizim için ana temayı oluşturuyor.

Örneğin bir dropdownliste şehir listesini doldurmak istediğinizde kullanıcı arabirimi bir bileşeni çağırır. Bu bileşen listeyi sql sorguları yardımıyla veritabanından alır ve yazdığınız koda iletir. Bu aşamada web sayfası kodunuz ve veritabanınız arasındaki yapı izole bir hale kavuşur. Yani veritabanı yapısı değişse bile sizin tek yapmanız gereken kullandığınız bileşenin yapısında küçük bir değişikliğe gitmektir.


Şimdi de bu üç katlı yapı için kullanılabilecek yöntemleri inceleyelim.

Encapsulation(Sarmalama)
Encapsulation üç katlı yapının en pratik uygulama şekillerindendir. Bu yöntemde detaylar gizlenir ve ana parametreler ışığında tüm detaylara erişilir. Örneğin yine bir e-ticaret uygulamasında kullanici_id ve siparis_id alanlarına girilecek değeri kabul eden ve bu kısıtlı parametrik yapıdan detaya inen bir yol izleyebilirsiniz.

Günlük hayattan bir örnek vermek gerekirse; hemen hepimiz bisiklete binmeyi biliyoruz ancak bildiğimiz kısım sadece pedallar ve direksiyonun sabit tutulması ve denge eşliğinde hareket edebilmek, yoksa çarklar, zincirler ve tepkime kuvvetleri hakkındaki bilgimiz değil. Burada pedallar ve direksiyon bizim arka kısımdaki detaylara bizim adımıza ulaşan ve sistemi yöneten bileşenleri temsil ediyor.

Veri Nesneleri
Veri nesnelerinden kastım klasik sql cümlecikleri ve stored procedureler. Ve tabiki oluşturduğunuz sınıfta kullanmak üzere hazırladığınız özel bileşenler. Ancak burada kastımız biraz daha sınırlandırılmış, sınıfa özel tanımlanmış veri nesneleri.


İş Nesneleri
İş nesnelerinden kastım yukarıda ikinci katman olarak belirttiğimiz asıl işin yapıldığı kod bloğudur. Mesela basit bir formda bir alanı boş bırakarak formu submit etmeniz durumunda bir hata mesajı geri döndüren bloktur. Burada herhangi bir syntax hatası veya genel .Net mantık hatasından söz edilemez bu sizin yazdığınız kod bloğu ile alanın boş geçilmesine izin vermeyişinizden kaynaklanan bir durumdur.

Bir sonraki yazımdan itibaren önce basit bir bileşen oluşturacağız ve ardından bileşenlerin uygulamamızda kullanımına değineceğiz.

| Ana Sayfa | Dersler | Download | Forum |Bize Ulaşın  |Siteni Ekle | Ziyaretçi Defteri |

Türk MCSD .NET© 2005
Siteyi en kaliteli Internet Explorer 5 ve üzeri versiyonlarinda 800 x 600 pixel çözünürlükte izlemenizi tavsiye ederiz.