Ana Sayfa Algoritma ve Programlama Nesneye Yönelik Programlama

Nesneye Yönelik Programlama

Bu yazımda nesneye yönelik programlama, Bjarne Stroustrup ve James Gosling hakkında bir takım bilgiler vereceğim. Bugün kime sorsanız Steve Jobs’u tanır bugün kimin eline baksanız android yada ios işletim sistemine sahip bir telefonu kısacası akıllı bir telefonu vardır. Peki bu telefonları yapanları, satanları çok iyi tanırken arka planda bunların doğuşuna bunların oluşumuna sebep olan kişileri, yazılımları, programları tanıyor muyuz, biliyor muyuz?

Mesela James Gosling veya Bjarne Stroustrup ne kadar tanıyoruz? Eminim bir çoğunuzun tanımadığı; duymadığı isimler bunlar. İşte bizim hayatımızı değiştiren teknolojinin dahada farklı bir boyut almasını sağlayan yani “object oriented programming” dediğimiz nesneye yönelik programlamanın mucitleri.

Nesneye Yönelik Programlama Nedir

Nesneye yönelik programlama, uygulamalar geliştirmek için nesne ve bu nesneler arasında alışverişi kullanan bir yazılımdır.

Temelleri 1960’lı yıllara dayanan nesneye yönelik programlama o dönem donanımla beraber uygulamalar daha karmaşık bir hal aldı ve bu neticede araştırmacılar bilgisayar programlarının sürekliliğinin ve kalitesinin nasıl arttıracağını, Geliştireceğini Araştırmaya başladılar ve bu araştırmalar sonucunda NESNEYE YÖNELİK PROGRAMLAMA ortaya çıktı.

Nesneye yönelik programlama; birbiriyle ortaklaşa çalışan nesneler koleksiyonu diye adlandırılabilir. Nesneler aralarında mesaj alışverişi yapan ve belirlenen görevleri yerine getiren küçük makinalar olarak da düşünülebilir.

  • Katılım
  • Modülerlik
  • Çok Biçimlilik
  • Kapsülleme
  • Sınıflar

nesneye yönelik programlama nedirTemel olarak bu bölümleri bulundurur ve diğer dillerden ayıran özellikler de burada yatar.

Modülerlik: Kompleks ve Büyük bir problemin uygulama esnasında Küçük küçük parçalara ayrılarak çözümlenmesine denilebilir.

Sınıflar: Nesneye yönelik programlamadaki yapıyı ve modülerliği sağlayan türlerdir.

Bunu bir örnek ile açıklayacak olursak örneğin; insanlar diye bir sınıf oluşturduğumuzda siz bu sınıfın bir parçasısınız alt bir sınıf olarak canlılar sınıfının bir alt sınıfıdır insanlar.

Bir nesne bir sınıfta tanımlanan özellik ve davranışlara sahipse o sınıfa aittir.

Katılım: Bir sınıfa ait özellikler ve işlemlerin yeni bir sınıfa birebir aktarılmasıdır. Yeni sınıf eski sınıfın özellikleri ve işlemlerine sahip olmasına ek olarak kendisi de özellikler ve işlemler tanımlayabilir.

Çok Biçimlilik: Nesneye yönelik programlamada oluşturulan nesnelerin gerektiğinde başka bir nesne gibi davranabilmesi diyebiliriz. Çok biçimlilikle programdaki her nesne kendi davranışını değiştirmeden, kalıtım hiyerarşisine göre farklı biçimlerde görülebilir.

Kapsülleme: Nesneye yönelik programlamada herhangi bir nesnenin metotlarını, verilerini ve değişkenlerini diğer nesnelerden saklayarak ve bunlara erişimini sınırlandırarak yanlış kullanımlarını karşı koruyan bir konsep diyebiliriz. Bu konsepti 3 aşamalı olarak sınırlandırabiliriz.

  1. Public (açık): Metotlara ve verilere her nesneden erişebiliriz.
  2. Private (özel): Sadece metodun tanımlandığı sınıftan örneklendirilmiş nesnelerle ulaşabiliriz.
  3. Protected (korumalı): Sadece metodun tanımlandığı sınıftan örneklendirilmiş nesnelerle ulaşabiliriz ve bu sınıftan türetilmiş alt nesnelerinden ulaşabiliriz.

Ve gelelim bu alanda çığır açmış günümüzde kullanımı halen popüler olan JAVA ve C++ yaratıcılarına;

Bjarne Stroustrup: C++ yaratıcısıdır nesneye yönelik programlamada ilk ve başarılı bir programlama dili yapmıştır.

Bjarne StroustrupYazdığı “The C++ Programming Language” kitabı 19’dan fazla dile çevrilmiştir. Bu nesneye yönelik programlama dili diğer programlama dilleri gibi kodlama ve kullanıldığı platform üzerinde çalışıyordu.

James Gosling: Sun Microsystems mühendislerinden biridir. 23 Mayıs 1995’te piyasaya sürülen açık kaynak kodlu nesneye yönelik olan JAVA dilinin yaratıcısıdır. JAVA, platformdan bağımsız çalışma gereksiniminden ortaya çıkmıştır.

Yani JAVA’dan önceki dillerle yazılmış programlar sadece yazıldığı platformda çalışıyordu ve JAVA’nın bu dillere nazaran en büyük avantajı ise sadece yazıldığı değil bütün platformlarda çalışabilir olması idi. Örneğin JAVA ile Windows’ta yaptığınız programı aynı zamanda LİNUX’tada çalıştırabiliyorsunuz. JAVA birçok özelliğini C ve C++ dillerinden almıştır. Nesneye Yönelik Programlamada C++ yakındır, Sözdizim (syntax) olarakda C yakın bir dildir tabi JAVA’yı bu dillerden ayıran en büyük özellik dediğimiz gibi programlandığı platform ve diğer tüm platformlarda çalışabilmesi.

İşte günümüz teknolojisi özellikle telefon ve hayatımızın vazgeçilmezi olan diğer teknolojilerin ilerlemesi ve gelişmesine büyük katkıları olan iki büyük mimar James Gosling ve Bjarne Stroustrup.

arıcılık malzemeleri
İbrahim Yıldırım
İbrahim Yıldırım
Arkadaşlar merhaba ben İbrahim Yıldırım Batman Üniversitesi'nde Bilgisayar Mühendisliği okumaktayım yazılım ve elektronik ile ilgileniyorum. Cep telefonları ile aram iyidir Android, Java ve C++ üzerine çalışmalar yapmaktayım. Bilgilerimi sizler ile paylaşmaktan gurur duyarım.

9 Yorum

  1. Çok güzel bir makale olmuş . Size bir de sorum olacaktı . Sizce ileride bilgisayarlar çok geliştirilerek telefonlara ihtiyaç duyulmayacak hale getirilmeleri ve ya telefonların aynı şekilde geliştirilmeleri ve bilgisayarları hayatımızdan çıkarmamız mümkün mü?
    Bir programlama dili eskiyip , kullanılacak bir yer bulunmayacak hale gelir mi ve ya yazılımcılara boşa zaman kaybı yaratacak duruma düşer mi?

    • Telefonun babası bilgisayardır bilgisayar var oldugu sürece telefon gelişebilir bu mantıkta telefonlara ihtiyac kalmıyacak anlamına gelir :)

Düşünceleriniz Nedir?

Lütfen yorumunuzu buraya yazınız.
Lütfen isminizi buraya yazını.

Yazar Ol arıcılık malzemeleri Proje Yönetimi

Yeni Yazılar

Giyilebilir Teknoloji Ürünleri

Teknoloji hayatımızın bir parçası olmaktan çıktı artık teknoloji hayatımız oldu. Yeni teknolojiler geliştirildikçe var olan teknolji ve teknolojik aletlerde gelişiyor ve değişiyor. Örnek olarak...

Antioksidan Nedir Görevleri Nelerdir

Canlı vücudu sürekli bir oksidatif stres altında bulunur. Oksidatif stres oksidan ve antioksidanlar arasındaki dengesizlik olarak tanımlanabilir. Bu dengesizliğe neden olan şey ise oksijenin vücutta ikiye ayrılması ve çift halde bulunamamasıdır. Bu...

Genetik Mühendisliğinin İnsanlığa Yarar ve Zararları

İnsanlığın, kalıtsal özellikleri kontrol altına alması ihtiyacından doğmuş genetik mühendisliği ilk kez 1972’de ortaya çıkmıştır ve gelişmiş ülkelerde oldukça değerli bir meslektir. Canlılarda bulunmakta...

RTX 3000 Serisi Ekran Kartlarının Başarısı

nVidia yeni nesil ekran kartlarında oldukça büyük bir başarı yakaladı. Her ne kadar ekran kartını dağıtan firmalarda bazı teknik detay sorunları yaşansa da performansın...

Mühendislik Maaşları

Gıda Mühendisliği Maaşları

Merhaba arkadaşlar bu yazımda gıda mühendisliği maaşları hakkında bilgi vereceğim. Gıda mühendisliği hakkında daha önceki yazılarımızda bilgilendirme yapmış idik. Gıda mühendisliği hakkında bilgi için...

Bilgisayar Teknikeri Maaşları

Teknikerler, bulundukları kurumda her türlü donanım sorunları, internet bağlantıları, internet kurulumları, güncellemeler ve benzeri bilgi işlem sürecinde hizmet sağlayan teknik personel kadrosuna bağlı memurlar...

Nükleer Enerji Mühendisliği Maaşları

Merhaba arkadaşlar bu yazımızda nükleer enerji mühendisliği maaşları hakkında internetten araştırarak bulduğum bilgileri sizlerle paylaşacağım. Nükleer enerji mühendisliği; atom çekirdeğinin parçalanması sonucunda ortaya çıkan...

İşlem Mühendisliği Maaşları

Her şirketin kendine göre bir maaş politikası vardır. Maaş politikası belirlenirken, yazılı kanunlar, kişinin iş performansı dikkate alınır. İşlem mühendisi; hastane, banka, belediye de...