• Bağış
  • Tasarım Kalıpları (Tasmim Kalıpları, Design Patterns)

    Yazan : Şadi Evren ŞEKER
    Yazılım mühendisliğinde sıkça kullanılan tasarım kalıplarının bir kütüphane haline getirilmesi ve bu kütüphanenin ileriki projelerde kullanılmasıyla proje gelitşrime sürelerinin kısaltılması hedeflenmektedir. Bu kütüphane (design patterns library) genelde farklı yapılar içerebilmesine karşılık aşağıdaki gruplarda toparlanabilir:

    Web tasarımı ile ilgili pek çok kalıp kütüphanesi internet üzerinden ulaşılabilir durumdadır. Özellikle AJAX teknolojisinin hızla gelişmesi sonrasında internet üzerinde yayın yapan pek çok gelişmiş kurum (yahoo, google gibi) kendi kütüphanelerini geliştirerek internet kullanıcılarına açmışlardır.

    UML tasarım kalıplarının amacı ise özellikle nesne yönelimli programlama yapılan ortamlarda belirli şablonların saklanarak ileriki projelerin içerisinde kullanılmasıdır. Bu amaçla çeşitli sınıflandırmalara gidilmiştir. Örneğin yapısal tasarımların yer aldığı ve daha çok bileşenlerin konumlandırılmalarını belirleyen mimari tasarım kütüphanesi (architectural design library) veya yazılım tasarımında kullanılan sınıf diyagramlarının (class diagrams) içerildiği GOF bunlardandır.
    Burada GOF’tan bahsetmekte yarar var. GOF, gango of four (dört gangster diye çevrilebilir)’un kısaltmasıdır. Kısaca yazılım mühendisliği konusunda meşhur kitaplardan “Design Patterns: Elements of Reusable Object-Oriented Software (ISBN 0-201-63361-2)” kitabının yazarı olan 4 kişiye (Erich Gamma, Richard Helm, Ralph Johnson ve John Vlissides) ithafen bu isim verilmiştir. Bu kitapta da anlatılan ve bu kişilerin geliştirdikleri tasarım yöntemine göre 3 farklı grup tasarım sınıfından bahsedilebilir, bu sınıfları ve geliştirme aşamalarını içeren tablo aşağıda verilmiştir:

    Creational (Oluşturucu) Structural (Yapısal) Behavioral (Davranışsal)
    Interface (arayüz) AdapterBridge

    Composite

    Facade

    Responsibility (Sorumluluk) Singleton FlyweightProxy Chain of ResponsibilityMediator

    Observer

    Construction (oluşum) Abstract FactoryBuilder

    Factory Model

    Prototype

    Memento
    Operation (İşlem) CommandInterpreter

    State

    Strategy

    Template Method

    Extension (Uzatma) Decorator IteratorVisitor

    Yukarıdaki tabloda GOF içerisinde yer alan 3 önemli geliştirme tasarımına göre sınıflandırma yapılmıştır.

    Ayrıca yukarıda bulunmayan ve muvazi fiiller (eşzamanlı işler, concurrent processes) konusunu içeren tasarım kalıpları da bulumaktadır.

    Benzer Yazılar:

    Bilgisayar Kavramları üzerinde şu anda okumakta olduğunuz 'Tasarım Kalıpları (Tasmim Kalıpları, Design Patterns)' isimli yazı 29 Nov 2008 tarihinde, saat: 06:58 'de Şadi Evren ŞEKER tarafından gönderilmiş, toplam 1397 defa okunmuştur.

    Benzer yazıları Bilgisayar Kavramları, Nesne Yönelimli Programlama, Yazılım Mühendisliği (Software Engineering) kategorilerinden okuyabilirsiniz. Yazar ile irtibat kurmak için email gönderebilirsiniz. Yazıya yorum yapabilir ya da yapılan yorumları RSS 2.0 ile takibe alabilirsiniz.


    Category: Bilgisayar Kavramları, Nesne Yönelimli Programlama, Yazılım Mühendisliği (Software Engineering)

    Leave a Reply