Kategoriler
Java Programlama Dilleri

2. Bölüm – Nesne Merkezli Programlamaya Giriş

 

javaSoyutlama (abstraction)

  •  Soyutlama, bir şeyin en önemli özelliklerini ön plana çıkarırken, önemli olmayan özelliklerini bastırmaktır, görmezden gelmektir

Neden Soyutlama?

  •  Çünkü zihnimiz bu haliyle soyutlama yapmadan bir nesneyi tüm yönleriyle kavrayamaz.
  • Dolayısıyla soyutlama, bir indirgemedir, basitleştirmedir ya da genellemedir.
  • Haritalar, soyutlamaya mükemmel bir örnektirler:
  •  Farklı türdeki haritalar, aynı gerçekliğin farklı yönlerini betimlerler, amaçları dışındaki özellikleri göstermezler.
  • Soyutlamalar, bir şeyin “ne”liği üzerine yoğunlaşır, “nasıl”lık üzerine eğilmez.
  •  Araba’yı algılamak için, motor yapısını bilmeye gerek yoktur,
  •  Ya da bir insanla ortaklık kurmak için onun DNA dizilerini bilmeye de gerek yoktur.

Model 

  •  Bir şey ile ilgili farklı açılardan ya da ilgi alanlarından yapılan soyutlamaların bütününe model denir.
  •  Modeller, bir nesneyi ya da olguyu daha bütünsel olarak ifade ederler, çünkü birden fazla soyutlama barındırırlar.

 Sınıflandırma

  •  Soyutlamayı yönlendiren ilgi alanları ya da kriterler çerçevesinde kategori oluşturmaya sınıflandırma (classification) denir.
  • Böylece nesneler, olgular, duygular vs. hepsi belli sınıflara ait hale gelirler.

Soyutlama ve Programlama

  •  Programlama dilleri de birer soyutlamadır hatta modeldir:
  1.  Değişkenler ve veri tipleri
  2. Operatörler ve kontrol yapıları
  3. Fonksiyonlar
  4. Sınıflar, modüller vs.

Yazılım Mühendisliği ve Modeller

  •  Yazlım geliştirme süreci en temelde üç modelden oluşur:
  1.  Analiz (Analysis): Bu ihtiyacın modelidir.
  2. Tasarım (Design): Bu ihtiyacın çözümünün modelidir.
  3. Gerçekleştirme (Implementation): Bu da çalışan modeldir
  • Analiz modeli , ihtiyacın ne olduğunu anlamaya yöneliktir.
  • Tasarım modeli , ihtiyacın nasıl yerine getirileceğini ortaya koyar. Mimari tasarım da bu modelin içindedir.
  •  Gerçekleştirme de, analizde detaylandırılan ihtiyaçların tasarımda ortaya konan çözüm modelini bir programlama dili ile kodlanır.

Modellemenin Zorlukları

  •  Sınırı yoktur, sonsuz sayıda ve derinlikte modelleroluşturulabilir.
  •  Mutlak doğru model ancak gerçekliğin kendisidir.
  •  Modellerin testini yapmak zordur.

Başarılı Yazılım

  •  En iyi, başarılı yazılım, ihtiyaçlarını tam ve doğru olarak yerine getirendir.
  • Ayrıca yazılım geliştirmenin prensipleri, yazılım modelleri de iyi bilinmeli ve uygulanmalıdır.

 Nesne (Object)

  •  Nesne, insan zihninin algıladığı herhangi bir kavramsal ya da fiziksel şeydir
  • Nesnelerin özellikleri vardır ve bu özellikler nesnelerin durumlarını (state) ve davranışlarını (behavior) ifade eder

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir