Skip to content

Tag: Nesneye dayalı programlama şablonu

Strategy

Bu yazımda size Strategy adındaki nesneye dayalı yazılım şablonunu (Object-Oriented Design Pattern) anlatacağım. Bu şablonun genel amacı yapılacak iş için alternatifler oluşturup, bu alternatifleride çalışma zamanında(runtime) seçebilme kabiliyetini sağlamaktır. Buna örnek verecek olursak, bir sıralama algoritması yazmak istiyoruz. Ama  bize verilen nesnelerin sayısı 30 dan küçük olduğunda insertion sort, büyük olduğunda da quick sort kullanacağız. İşte bu durumda bize, bu esnekliği sağlayan bir tasarım gerekli ki, stratejimizi…

Leave a Comment

Composite

Bu yazımda size Composite adındaki nesneye dayalı yazılım şablonunu (Object-Oriented Design Pattern) anlatacağım. Bu şablonun genel amacı tekrarlanan(recursive) parçaları(component) genel parçalardan farksız olarak tanımlayabilmektir. Parçaları kullanan sınıfların, parçaların kendi karakterlerini bilmeden parçaları kullanabilmelerini  Composite şablonu ile sağlayabiliyoruz. Aşağıda gördüğümüz tasarımda bir DocumentElement sınıfımız var ve bu sınıftan türeyen 3 tane sınıf var. Section adlı sınıf diğer sınıflardan farklı olarak DocumentElement listesine sahip. Bu şekilde bir tasarımla her…

1 Comment

Observer

Bu yazımda size Observer adındaki nesneye dayalı yazılım şablonunu (Object-Oriented Design Pattern) anlatacağım. Bu şablonun genel amacı bir objeyle başka objeler arasında bağ kurmaktır (One to many dependency). Yani eğer objenin birinde güncelleme olduysa diğerlerinde de bunun yansımasını sağlamaktır. Burada objeler arasında da çok fazla bağ(not tightly coupled) kurmadan işlemleri yapmaya yarar. Peki nerelerde kullanılır ? Eğer bir objede olan değişiklik diğer objelerin güncellenmesini gerektiriyorsa kullanılabilir. Yada…

1 Comment

Adapter

Bu yazımda size Adapter adında nesneye dayalı yazılım şablonunu (Object-Oriented Design Pattern) anlatacağım. Bu yazılım şablonu genellikle daha önce yazılan bir kodun başka bir programa entegre olmasını sağlamak amaçlı yapılır. Aslında adından da anlaşılacağı üzere adaptör özelliğine sahiptir. Bir program yazacağız ve bir arayüz sınıfına ihtiyacımız var.Bu kodun başka biri tarafından yazıldığını ve bu koddan yararlanabileceğimizi gördük.  Ama Şöyle bir sıkıntı oluştu, bizim yazdığınız ara yüze(interface) bulduğunuz…

Leave a Comment

Abstract Factory

Bu yazımda size Abstract Factory adındaki nesneye dayalı yazılım şablonunu (Object-Oriented Design Pattern) anlatacağım. Abstract factory,  bir veya birden fazla nesnenin farklı türlerinin, ihtiyaca göre yaratılmasını amaçlayan tasarım şablonudur. Örnek vererek daha iyi açıklamak istiyorum. Bir çok farklı türde telefon mevcut ve buda hepsinin kendine has platformu olmasına neden oluyor. Dolayısıyla  telefon için bir uygulama geliştirdiğimizde, yaptığımız bir düğme(button) yada bir panel ortama göre değişmesi gerekecektir. Bu…

Leave a Comment