Üst Düzey Programlama Tasarım Şablonları Üst Düzey Programlama 1 COMMAND ŞABLONU Command şablonu, gerçekleştirilecek olan olayların nesne şeklinde gösterilmesi için kullanılır. Bir Command nesnesi bir işi ve onunla ilgili olan parametreleri tutar. Örneğin, bir yazıcı kütüphane içerisinde Yazdırmaİşi isminde bir sınıf tasarlayabiliriz. Kullanıcı bir cıktı almak için bu nesneden bir tane oluşturur, içerisine gerekli olan bilgileri koyar(yazdırılacak döküman, kopya sayısı,...) ve bu nesneyi yazıcı kuyruguna gönderir. Üst Düzey Programlama 2 COMMAND ŞABLONU Bu işlemi Command sınıfı olmadan da bir İşiYazıcıyaGönder() isimli bir metot yardımıyla da yapabiliriz. Bu noktada Command sınıfını şu nedenlerden tercih edebiliriz. * Bir sınıfın içerisinde yapılacak iş ve bu iş ile ilgili veriyi bir arada tutabiliriz. Bir command sınıfı yapacağı iş ile ilgili veriyi tutabilecegi gibi, buna ek olarak komutun ismi, açıklaması, hangi kullanıcının çalıştırdığı, ne zaman çalıştırdıgı, yaklaşık olarak ne kadar sürmesi gerektigi gibi bilgilerde içerebilir. *Gerçekleşecek işlerin sınıf yapısında olması ile bu sınıftan türetilen nesneler veri yapılarında rahatlıkla kullanılabilir. Çok karmaşık olan bir işlem bir ağaç ya da graf şeklinde değerlendirilebilir. Command nesneleri bir öncelik kuyruguna konabilir. Üst Düzey Programlama 3 COMMAND ŞABLONU * Command nesnelerini kullanarak Undo işlemini gerçekleştirebiliriz. Eğer bir program içerisinde gerçekleştirilen tüm işlemler bir Command olarak tanımlanırsa bu komutları bir yapı içerisinde tutarak istediklerimizi çıkartıp undo işlemini gerçekleştirebiliriz. * Bir program gerçekleştireceği işlemleri Commandlar şeklinde yaparsa progress bar kullanabiliriz. * GUI button ve menü elemanları için Java içerisinde Action isimli bir Command sınıfı vardır. İstenilen sayıdaki komut ya da menü elemanı aynı Action ile ilişkilendirilebilir. *Macro işlemleri, eğer tüm kullanıcı işlemleri Command şablonu ile gerçekleşiyorsa macro olarak bunlardan istedigimiz kadarını saklayıp sonra tekrar kullanabiliriz. Üst Düzey Programlama 4 COMMAND ŞABLONU * Yapılacak işlemleri Command şeklinde tutarak örneğin bu nesneyi ağ üzerinde başka bir bilgisayar göndererek orada çalıştırılmasını sağlayabiliriz. * Üst Düzey Programlama 5 COMMAND ŞABLONU Üst Düzey Programlama 6 COMMAND ŞABLONU Üst Düzey Programlama 7 COMMAND ŞABLONU Üst Düzey Programlama 8 COMMAND ŞABLONU Üst Düzey Programlama 9 COMMAND ŞABLONU Üst Düzey Programlama 10 COMMAND ŞABLONU Üst Düzey Programlama 11 COMMAND ŞABLONU Üst Düzey Programlama 12 COMMAND ŞABLONU Üst Düzey Programlama 13 Üst Düzey Programlama 14 Üst Düzey Programlama 15 Üst Düzey Programlama Tasarım Şablonları Üst Düzey Programlama 16