Archive for Ekim 2009

SOA Manifestosu Oluşturuldu

Eki 30th, 2009 | By Özcan Acar | Category: Haberler, SOA

Roterdam’da yapılan ikinci uluslararası SOA (Service Oriented Architecture) sempozyumunda SOA alanında faaliyet gösteren öncü yazılımcılar tarafından SOA manifestosu açıklandı.



Service Locator Tasarım Şablonu

Eki 30th, 2009 | By Özcan Acar | Category: Tasarım Şablonları (Design Patterns)

Business Delegate örneğinde, Service Locator Tasarım şablonunun nasıl uygulandığını görmüştük. Service Locator, işletme (business) katmanında bulunan komponentlerin lokalizasyonu için kullanılır



Business Delegate Tasarım Şablonu

Eki 30th, 2009 | By Özcan Acar | Category: Tasarım Şablonları (Design Patterns)

Modern yazılım sistemleri birden fazla katmandan oluşur. Bu katmanlar her zaman aynı server üzerinde mevcut olmayabilir. Bu durumda bir katmandan diger katmana ulaşmak için remote call olarak isimlendirilen RMI operasyonları yapılır. Örneğin EJB teknolojisi ile hazırlanan komponentler birden fazla server üzerinde hizmet sunabilir. Bu komponentlere bağlanıp, işlem yapabilmek için RMI kullanılır.



Dependency Inversion Principle (DIP) – Bağımlılıkların Tersine Çevrilmesi Prensibi

Eki 29th, 2009 | By Özcan Acar | Category: Tasarım Prensipleri

Bu prensibe göre somut sınıflara olan bağımlılıklar soyut sınıflar ve interface sınıflar kullanılarak ortadan kaldırılmalıdır, çünkü somut sınıflar sık sık değişikliğe uğrarlar ve bu sınıflara bağımlı olan sınıflarında yapısal değişikliğe uğramalarına sebep olurlar.



Liskov Substitution Principle (LSP) – Liskov’un Yerine Geçme Prensibi

Eki 29th, 2009 | By Özcan Acar | Category: Tasarım Prensipleri

Barbara Liskov tarafından geliştirilen bu prensip kısaca şöyle açıklanabilir:

Alt sınıflardan oluşturulan nesneler üst sınıfların nesneleriyle yer değiştirdiklerinde aynı davranışı göstermek zorundadırlar.



Open Closed Principle (OCP) – Açık Kapalı Tasarım Prensibi

Eki 16th, 2009 | By Özcan Acar | Category: Tasarım Prensipleri

Yazılım disiplininde değişmeyen birşey varsa o da değişikliğin kendisidir. Birçok program müşteri gereksinimleri doğrultusunda ilk sürümden sonra değişikliğe uğrar. Bu doğal bir süreçtir ve müşteri programı kullandıkça ya yeni gereksinimlerini ya da mevcut fonksiyonlar üzerinde adaptasyonları gerekçe göstererek programın değiştirilmesini talep edecektir.



Loose Coupling (LC) – Esnek Bağ Tasarım Prensibi

Eki 16th, 2009 | By Özcan Acar | Category: Tasarım Prensipleri

Bir program bünyesinde, tanımlanan görevlerin yerine getirilebilmesi için birden fazla nesne görev alır. Bu nesneler birbirlerinin sundukları hizmetlerden faydalanarak kendi görevlerini yerine getirirler. Bu durumda nesneler arası bağımlılıklar oluşur. Bir nesne kullandığı diğer bir nesne hakkında ne kadar fazla detay bilgiye sahip ise, o nesneye olan bağımlılığı o oranda artar. Oluşan her bağımlılık bir sınıf için dolaylı olarak yapısal değiştirilme rizikosunu artırır, çünkü bağımlı olduğu sınıf üzerinde yapılan her değişiklik kendi yapısında değişikliğe neden olacaktır. Bu durum programın genel olarak kırılgan bir hale gelmesini kolaylaştıracaktır.



Single Responsibility Principle (SRP) – Tek Sorumluk Tasarım Prensibi

Eki 14th, 2009 | By Özcan Acar | Category: Tasarım Prensipleri

Resim 1 deki gibi bir sınıfa daha önce bir yerlerde rastlamışsınızdır. Bu sınıf kendisini bilgibankasına ekleme, silme, müşteriye email gönderme, login yapma (shop sistemi olabilir) ve sipariş oluşturma işlemlerini yapabilmektedir.



Chain of Responsibility Tasarım Şablonu

Eki 9th, 2009 | By Özcan Acar | Category: Tasarım Şablonları (Design Patterns)

Chain of responsibility sorumluluk zinciri anlamına gelmektedir. Sisteme gönderilen bir istediğin (komut) hangi nesne tarafından cevaplanması gerektiğini bilmediğimiz durumlarda ya da isteği yapan nesne ve servis sağlayan nesne arasında sıkı bir bağ oluşmasını engellememiz gerektiğinde Chain of Responsibility tasarım şablonu kullanılır.



Front Controller Tasarım Şablonu

Eki 9th, 2009 | By Özcan Acar | Category: Tasarım Şablonları (Design Patterns)

Web aplikasyonlarında Front Controller tasarım şablonu ile sisteme yöneltilen tüm istekler (request) merkezi bir yerde toplanarak işlem görürler.