JAVA NEDİR, NE DEĞİLDİR? 2

Nesneler, tasarım şablonları ismi verilen (temelde 23 adet) şablonlardan (class-sınıf olarak anılırlar)türetilir. Amacımız genel tanıtım olduğu için tasarım şablonlarının ayrıntısına bu yazıda girmeyeceğiz. Nesnelerin davranışları (veri tipleri, diğer nesnelerle olacak olan ilişkileri vs.) ise sarmalama (encapsulation) denilen bir yöntemle yapılır. Açık, özel ve korumalı ismi verilen sona doğru kısıtlılığı artan üç adet sarmalama yöntemi mevcuttur.

Nesne yönelimli programlamanın altı temel kuralı nesne yönelimli programlama alanında yaptığı öncül çalışmalarıyla tanınan Amerikalı bilgisayar bilimcisi Alan Curtis Kay tarafından şöyle tanımlanmıştır.

  1. Her şey bir nesnedir
  2. Nesneler birbirine iletiler göndererek iletişim kurarlar
  3. Her nesnenin hafızada kapladığı bir alanı vardır
  4. Her nesne bir sınıftan türetilmiştir
  5. Her sınıf, kendisinden türeyen nesneler için ortak davranışlar içerir
  6. Bir program listesini denemek için, kontrol ilk nesneye gider ve hatırlatıcı ona bir iletiymiş gibi davranır.

Bu tanımlama Kay’in de geliştirici ekibinin içinde bulunduğu Smarttalk dilinin özelliklerini tanımlamak için kullanılmış fakat daha sonra tüm nesne yönelimli programlama kavramını içine aldığı fark edilerek bu kavram için genel bir tanım olarak benimsenmiştir.

Kay’in tanımlamasının değiştirilmiş bir sürümü Tim Budds’un An Introduction to Object Oriented Programming (Nesne Yönelimli Programlamaya Giriş) kitabında sunulmuştur. Budds’a göre nesne yönelimli programlamada:

  1. Her şey bir nesnedir
  2. İletişim, nesnelerin birbiriyle –yine bir nesnenin isteğiyle- iletişim kurmasıyla gerçekleşir
  3. Nesnelerin hafızada, diğer nesnelerden oluşan kendilerine ait alanları vardır
  4. Her nesne bir sınıftan türemiştir. Bir sınıf temel olarak benzer nesnelerin kümelenmesinden oluşur, integer’ler ya da listeler gibi.
  5. Sınıf, bir nesneyle ilişkili davranışlar bütününü içerir. Bu, aynı sınıftan türemiş tüm nesneler aynı şekilde davranır demektir.
  6. Sınıflar, tek köke bağlı bir ağaç yapısında örgütlenirler. Buna kalıtımlı sıradüzeni (inheritence hierarchy) adı verilir. Bu ağaç yapısında, bir sınıfın türevinden sonra gelenler, bu türevle ilişkili hafıza ve davranışlara ulaşılabilirdir.

Görüldüğü gibi 1-5 arasındaki kurallar Kay’inkilerle oldukça örtüşürken altıncı madde farklılaşmış ve bugün ki anlayışımıza daha yaklaşmıştır.

Kaynak: javaturk.org, Akın Kaldıroğlu

Bu bir yazı dizisidir. Devamı için tıklayınız

 



Eğitimlerle ilgili bilgi almak ve diğer tüm sorularınız için bize ulaşın!

Java dünyanın en popüler programlama dillerinden birisidir ve çok çeşitli alanlarda kullanılır. Dünyadaki ve ülkemizdeki yazılımcı açığı sebebi ile bilgisayar programcılığı çok fazla iş imkanının olduğu bir alandır. Ayrıca Java çok uzun yıllardır kullanılması (Java 1.0 1995te yayınlandı.) ve çok geniş bir programlamacı topluluğuna sahip olması sebebiyle öğrenirken sorularınıza kolayca cevap bulabileceğiniz bir programlama dilidir.
Bilgisayarınızın sistem özelliğine bağlı olarak Java 32 bit ya da Java 64 bit indirerek programlama maceranıza başlayabilirsiniz. Java ile Big Data (Büyük Data), Machine Learning (Makine Öğrenmesi) ve yapay zeka teknolojileri alanlarında çalışmalar yapabilirsiniz. Android, Web ve Masaüstü uygulamaları üretebilirsiniz. Blockchain ve finans gibi sektörlerde kariyer sahibi olma imkanı elde edebilirsiniz.
Java ve diğer programlama dillerinin belirli bir öğrenim zamanı bulunmamaktadır. Ayrıca bir programlama dilini hangi alanda ve ne amaçla kullanacağınıza bağlı olarak öğrenim zamanı ve zorluğu da değişecektir. Java SE eğitimi ile ilgili tüm merak ettikleriniz için sitemizi inceleyebilir ve uzman eğitmen kadromuz ile Java programlama dilini öğrenmeye başlayabilirsiniz.
Java Standard Edition (Standart Sürüm) masaüstü (desktop) uygulamaları için kullanılırken, Java Enterprise Edition (Kurumsal Sürüm) ise web tabanlı ve büyük ölçekli uygulamalar yaratmak için kullanılır. Java EE, birçok bileşenini de barındıracak şekilde Java SE’nin üzerine inşa edilmiştir ve kurumsal yazılım ihtiyacını giderecek şekilde dizayn edildiği için şirketlerin kullanımına uygundur.

Son Blog Yazılarımız

Sitemizi kullanarak çerezlere (cookie) izin vermektesiniz. Detaylı bilgi için Çerez Politika'mızı inceleyebilirsiniz.