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