2 Ekim 2010 Cumartesi

Head First Object Oriented Analysis and Design Kitabı

Stajda nesne yönelimli programlama tekniğini daha iyi anlamam için head first yayınlarının object oriented analysis and design kitabını okumam istendi. Kitap daha önce karşılaşmadığım bir anlatım tekniğiyle yazılmıştı. Kitapta bolca görsel öğeler kullanılarak anlatılacak konular okuyucuyu sıkmayacak bir şekilde aktarılmaya çalışılmıştır. Kitapta nesne yönelimli programlamanın önemini vurgulamak amacıyla çeşitli problemler tanımlanıyor. Problemler ilk başta nesne yönelimli programlama teknikleri kullanmadan da çözülebiliyor olmasına rağmen daha sonradan programa yeni bir şeyler eklenmek istendiğinde nesne yönelimli programlamanın önemi, yenilenebilirlilik kavramı açısından önemi daha iyi anlaşılıyordu.Bundan ilave kitap boyunca sürekli kullanıcıya sorular sorularak hem kullanıcılarla etkili iletişim kurulmuş hem de okuyucunun dikkati canlı tutulmaya çalışılmıştır.Kitap boyunca sürekli iyi bir yazılımın nasıl olması gerektiği hakkında çeşitli bilgiler verilimiştir. İyi bir yazılımın iyi tasarlanmış,iyi kodlanmış kolayca değiştirilebilir, kolayca yeniden kullanılabilir ve kolayca yenilikler eklenebilir olması gerektiği kitap boyunca üstüne basıla basıla çeşitli örnek problemler de ortaya atılarak vurgulanmıştır. Kitapta vurgulanan bir diğer önemli nokta iyi yazılımın müşterinin isteğine uygun yapılmış olması gerektiğidir. Yazılım tasarlarken nesne yönelimli programlama tekniğini düzgün kullanmamızın yazılımı sonradan müşterinin yeni isteklerine göre değiştirmemiz istendiğinde kolayca değiştirebileceğimizi göstermek amacıyla örnek bir problem tanımlanmıştır. Bu problemde ailenin şöyle bir sorunu vardır; köpekleri her gece havlayarak dışarı çıkmak istemektedir ve aile üyeleri gece yataktan kalkarak kapıyı açmaktan bıkmıştır.Köpek havladığı zaman dışarı çıkmasına izin veren bir kapı sisteminin tasarlanması istenmiştir. Bunun için yazılımcılar aile üyelerinin gece yataktan kalkarak köpeğe kapıyı açmalarının karşısını almak amacıyla uzaktan kumanda sistemi kullanılarak havlama sesi duyulduğunda kapıyı uzaktan kumandayla açabilmeleri sağlanmış ve müşteriler gece yataktan kalkmak zorunda kalmadıkları için programdan memnun kalmışlardır. Belli bir süre programı kullandıktan sonra aile üyeleri yeni isteklerini yazılımcılarına bildirmişlerdir. Bu sefer müşteriler sürekli gece uyanarak uzaktan kumandaya basmaktan bıktıklarını belirtmiş ve havlama sesine duyarlı otomatik kapı tasarlanmasını istemişlerdir. Yazılıma köpek sesi tanıyıcı eklendikten sonra müşterilerin istediği yazılım onlara sunulmuştur. Müşteriler mutlu bir şekilde yazılımın yeni versiyonunu kullandıktan sonra yeni bir istekle tekrar yazılımcılara müracaat etmişlerdir. Bu sefer müşteriler köpek sesi tanıyıcının tüm köpeklerin sesine tepki vererek açıldığından yakınmış ve köpek sesi tanıyıcısının sadece onların köpeğinin sesine duyarlı olmasını istemişlerdir. Yazılımcılar bu sorunu da çözerek köpek sesi tanıyıcısının sadece kendi köpeklerinin sesine duyarlı olmasını sağlamışlardır. Kitapta tüm bu değişikliklerin nesne yönelimli programlama tekniği kullanılarak ne kadar rahat yapılabildiği vurgulanmış ve kod üzerinde gösterilmiştir.

Hiç yorum yok:

Yorum Gönder