28 Haziran 2015 Pazar

Nesneye Yönelik Analiz ve Tasarım

Craig Larman'a göre, nesneye yönelik düşünce tarzı edinmek UML şemalarının görselleştirme prensiplerini öğrenmekten daha önemlidir. Gerçek hayattaki nesneleri temsil edecek yazılım sınıflarına atanacak sorumlulukların ve bu sınıfların birbirleriyle olan ilişkilerinin önceden planlamak için önceden denenerek doğrulanmış belli kalıpların (patterns) uygulanmasını öneriyor.

Larman nesneye yönelik analiz (object oriented analysis) aşamasını yazılımı geliştirecek gerçek sistemi oluşturan nesne ve kavramların tanımlanması olarak görür. Nesneye yönelik tasarım aşamasında da bu nesneleri yazılımda temsil edecek sınıfların ve işbirliklerinin (collaboration) tasarlanması olarak görüyor.

Peki nesneleri tanımlamak ve yazılımı onları temsil edecek sınıflara dayalı olarak tasarlamak neden bu kadar önemlidir? Bunun nedeni açık: Tanımladığınız nesneler üzerinde yazılım geliştireceğiniz sistemi oluşturmaktadır; sistemin çalışması bu nesnelerin birbirleriyle kurdukları ilişkilerden, aralarındaki bilgi alşverişinden ibarettir. Dolayısıyla geliştireceğiniz yazılımın  çalışması da bu nesneleri temsil eden sınıflar arasındaki mesaj alışverişleri şeklinde olacaktır.


Bennet, Robb ve Farmer ise nesneye yönelik tasarımı savunurken yeniden kullanımın (reuse) önemine dikkat çekiyorlar. Nesneye yönelik yazılım geliştirmenin önde gelen prensibi ileride başka sistemler üzerinde yazılım geliştirirken de kullanabileceğiniz sınıflar tasarlamaktır. Gerçek hayattaki nesnelerin birden fazla sistemde benzer şekilde etkinlik gösterdiklerini düşünürseniz, bunları temsil eden sınıfların da birden fazla sistem yazılımlarında benzer şekilde iş görebileceğini anlarsınız.

Hiç yorum yok:

Yorum Gönder