Terimlerimiz:
Amaç: Var olan sistemi daha basit bir şekilde nasıl kullanırım.
Problem: Kompleks bir sistemi daha akıcı ve sade nasıl yapabilirim.
Çözüm: Facade örüntüsünün çözüm sunduğu bir arayüz tasarlayıp alt sistem kaynaklarını istemciye tek elden erişilebilir bir hale getirmek.
Şekil 2
Şekil2 de iki tane istemcinin(client) var olan bir sistemin kaynaklarını kullanmasını goruyoruz. Burda beliren sorun da tüm çıplaklığı ile gözüküyor. İstemcinin birden fazla alt sisteme erişmesi, kopleks yapının oluşmasına neden oluyor. Modelleme de bile karmaşıklık göze çarpıyor, bu işin kodlama aşamasını düşünmek ürkütücü geliyor. Bu yazıyı okuyan arkadaşların belki facade gerek olmadığını düşünüyorsa,
1) Sistemin birden çok alt sistemden oluştuğunu düşünürsek
Sorun: Aynı sürecin birden fazla programcı tarafında yapılması yani aynı kodun büyük bir projede tekrarlanıp durması.
XX adlı Muhendisinin kodu
A kaynağına eriş
A dan doneni B kaynağına yolla
B den doneni C ye yolla ve dönen değeri kullan.
YY adlı Muhendisinin kodu
A kaynağına eriş
A dan doneni B kaynağına yolla
B den doneni C ye yolla ve dönen değeri kullan.
2) İki mühendisin aynı yetkinlikte olmaması.
Sorun : Kaynakların doğru ve etkin kullanılmaması.
Bunu da unutmamak lazım: Yazdığınız kodun sizden sonraki mühendis tarafından okunabilir olması ve taktirle karşılanması mühendislik etiği kavramlarını oluşturmaktadır
Hiç yorum yok:
Yorum Gönder