Tasarım örüntüleri, yazılım geliştirmede tekrar karşılaşılan sorunlar için tanımlanmış, farklı bağlamlara uyarlanabilen çözüm düzenleridir. Bir örüntü, yalnızca kullanılacak kodu değil, hangi problemin ele alındığını, çözümün hangi koşullarda uygun olduğunu ve beraberinde getirdiği sınırlamaları da açıklar. Bu nedenle bir ürüne özgü hazır bileşenden daha genel bir tasarım bilgisi sunar. Örüntünün seçimi uygulamanın gereksinimleri, çalışma koşulları ve kabul edilebilir ödünleşmelerle ilişkilidir; aynı çözüm her yazılım için eşit derecede yararlı değildir. [1]
MİMARİDE ÖRNEKLER
Önbellek yanına yükleme yaklaşımında uygulama, ihtiyaç duyulan veriyi önce önbellekte arar; bulunmadığında asıl veri kaynağına başvurup sonucu önbelleğe alır. Bölme yaklaşımı ise bir bileşendeki arızanın diğer bileşenleri etkilemesini sınırlamak için kaynakları ayırır. Uyumsuz sistemler arasında kullanılan dönüştürücü katman, farklı veri modellerinin birbirine doğrudan bağımlı hâle gelmesini önler. Bu örnekler performans, dayanıklılık ve birlikte çalışabilirlik gibi farklı mühendislik sorunlarına karşılık gelir. [1]
