Middle
Hangi tasarım desenlerini biliyorsunuz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Yaratıcı:
- Fabrika Yöntemi (Factory Method): Bir nesne oluşturmak için arayüz tanımlar, ancak hangi sınıfın örnekleneceğine alt sınıfların karar vermesine izin verir.
- Soyut Fabrika (Abstract Factory): Birbirleriyle ilişkili veya bağımlı nesil aileleri oluşturmak için bir arayüz sağlar, ancak bunların somut sınıflarını belirtmez.
- İnşaatçı (Builder): Karmaşık bir nesnenin yapımını temsilinden ayırır, böylece aynı yapım süreci farklı temsiller oluşturabilir.
- Prototip (Prototype): Varolan bir örneğin kopyalanmasıyla yeni nesneler oluşturur.
- Singleton (Singleton): Bir sınıfın yalnızca bir örneği olmasını garanti eder ve buna küresel erişim noktası sağlar.
Yapısal:
- Adaptör (Adapter): Bir sınıfın arayüzünü, müşterilerin beklediği başka bir arayüze dönüştürür.
- Köprü (Bridge): Bir soyutlamayı, onun uygulamasından ayırır, böylece ikisi bağımsız olarak değiştirilebilir.
- Bileşim (Composite): Nesneleri ağaç yapılarında birleştirerek parça-bütün hiyerarşilerini temsil eder. Nesneleri ve bileşimlerini tek tip işlem yapmaya olanak tanır.
- Dekoratör (Decorator): Bir nesneye dinamik olarak yeni sorumluluklar ekler. İşlevselliği genişletmek için alt sınıflamaya esnek bir alternatif sağlar.
- Fasade (Facade): Bir alt sistemdeki bir dizi arayüze birleşik bir arayüz sağlar. Alt sistemi kullanımı kolay hale getiren yüksek seviyeli bir arayüz tanımlar.
- Flyweight (Flyweight): Çok sayıda benzer nesnenin verimli paylaşımı için kullanılır.
- Proxy (Proxy): Başka bir nesneye erişimi kontrol eden vekil nesne sağlar.
Davranışsal:
- Sorumluluk Zinciri (Chain of Responsibility): İstekleri sıralı olarak işleyicilere iletmeye izin verir. Her işleyici, isteği işleyip işlememeye karar verir veya zincirdeki bir sonraki işleyiciye iletir.
- Komut (Command): Bir isteği nesne olarak kapsüller, böylece müşterileri farklı isteklerle parametrize edebilir, istekleri sıraya koyabilir veya kaydedebilir ve geri alma işlemlerini destekleyebilir.
- İteratör (Iterator): Bir nesnenin iç yapısını açığa çıkarmadan, öğelerine ardışık erişim sağlar.
- Arabulucu (Mediator): Bir nesne kümesinin nasıl etkileşime geçtiğini kapsüller. Nesneler arasındaki açık referansları önleyerek gevşek bağlılığı teşvik eder.
- Memento (Memento): Bir nesnenin iç durumunu yakalar ve dışa aktarır, böylece nesne daha sonra bu duruma geri dönebilir.
- Gözlemci (Observer): Bir nesnenin durumundaki değişiklikleri diğer nesnelere bildiren ve otomatik olarak güncellenmelerini sağlayan "birden çoğa" bağımlılık tanımlar.
- Durum (State): Bir nesnenin iç durumuna göre davranışını değiştirmesine izin verir. Nesne, sanki sınıfını değiştiriyormuş gibi görünür.
- Strateji (Strategy): Bir algoritma ailesini tanımlar, her birini kapsüller ve değiştirilebilir hale getirir. Algoritmanın, onu kullanan müşterilerden bağımsız olarak değişmesine olanak tanır.
- Şablon Yöntemi (Template Method): Bir algoritmanın iskeletini bir işlemde tanımlar, bazı adımları alt sınıflara bırakır. Alt sınıfların, algoritmanın belirli adımlarını yeniden tanımlamasına izin verir, yapısını değiştirmeden.
- Ziyaretçi (Visitor): Bir nesne yapısındaki öğeler üzerinde gerçekleştirilecek işlemi temsil eder. Yeni bir işlem tanımlamaya olanak tanır, öğelerin sınıflarını değiştirmeden.