Nesne Tabanlı Programlama. Ders Notları

Benzer belgeler
NESNE TABANLI PROGRAMLAMA

C++ Dersi: Nesne Tabanlı Programlama

YZM 2105 Nesneye Yönelik Programlama

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

ANA SINIF TÜRETİLEN BİRİNCİ SINIF TÜRETİLEN İKİNCİ SINIF

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

BİL-141 Bilgisayar Programlama I (Java)

Görsel Programlama DERS 02. Görsel Programlama - Ders02/ 1

Ders 8 Konu Özeti ve Problemler

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 1. Yrd.Doç.Dr.Hacer Karacan

YZM 2105 Nesneye Yönelik Programlama

Nesne Yönelimli Programlama

Görsel Programlama-I (Visual Programming) 1.Hafta

NESNE TABANLI PROGRAMLAMA Temel Kavramlar

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BLM209 PROGRAMLAMA LAB. I PROJE 3 PROJE SÜRESİ:

Sunum İçeriği. Programlamaya Giriş

Java Programlama Güz Dönemi CLASS YAPISI

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10. Yrd.Doç.Dr.Hacer Karacan

YZM 2108 Yazılım Mimarisi ve Tasarımı

Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2

Sınıf Diyagramları Amaç: Sınıf Diyagramları Nasıl Çizilir?

C++ Dersi: Nesne Tabanlı Programlama

Nesne Yönelimli Programlama

Java Temel Özellikleri

BBS515 Nesneye Yönelik Programlama. Ders 1 Zümra Kavafoğlu

İçerik. Kapsülleme ( Encapsulation ) Java da Kalıtım: Örnek 2.1. Kalıtım ( Inheritance ) Tekrar Ziyaret. Java da Kalıtım: Örnek 2.2.

Şekil 1 de dört adet genel kullanıma açılmış veri (D1-D4) ve bunları doğrudan ya da dolaylı olarak kullanan 7 adet yordam (P1-P7) yer almaktadır.

Eğitsel Oyun Projesi Raporu. ÖĞRENEREK EĞLENİYORUM Berkay Bekaroğlu

3. NESNE TABANLI PROGRAMLAMANIN PRENSİPLERİ

DERS 5 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 bacak bağlantıları PIC 16F84 bellek yapısı Program belleği RAM bellek Değişken kullanımı Komutlar

YZM 2105 Nesneye Yönelik Programlama

NESNE TABANLI PROGRAMLAMA

Kalıtım (Inheritance)

Nesne Yönelimli Programlama

SINIF YAPISI ve NESNE YÖNELİMLİ PROGRAMLAMA NESNE YÖNELİMLİ PROGRAMLAMA

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Java Dersi. Altuğ Bilgin Altıntaş

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

Kapsülleme ( Encapsulation ) BBS-515 Nesneye Yönelik Programlama

YZM 2105 Nesneye Yönelik Programlama

Arayüz (Interface) Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 7 1

1 PROGRAMLAMAYA GİRİŞ

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Canlı ve cansız varlıklara, çeşitli somut ve soyut kavramlara ad olan sözcük türüdür.

Görsel Programlama DERS 01. Görsel Programlama - Ders01/ 1

Nesne Yönelimli Programlama ve Kalıtım

5.HAFTA. Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Programlama Dillerinde Kullanılan Veri Tipleri

Dizi ( Array ) ve Dizgi ( String )

Görsel Programlama DERS 08. Görsel Programlama - Ders08/ 1

Görsel Programlama DERS 07. Görsel Programlama - Ders07/ 1

1. HAFTA TEMEL KURULUM İŞLEMLERİ ve NESNE TABANLI PROGRAMLAMA KAVRAMLARI

WEB PROGRAMLAMA II. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Bölüm 12. Nesne yönelimli programlama desteği

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

Temel Kavramlar-2. Aşağıda depolama aygıtlarının kapasitelerini inceleyebilirsiniz.

YZM 2105 Nesneye Yönelik Programlama

Module ve Mixin Module nedir? 17.2 Neden Module?

FBEB-512 C++ ile Nesne Tabanlı Programlama Güz 2009 (1. Hafta) (Yrd. Doç. Dr. Deniz Dal)

Masaüstü Bilgisayarlar

ALGORİTMA VE PROGRAMLAMA II

OYUN GELİŞTİRME AŞAMALARI-I

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Masaüstü Bilgisayarlar

Windows'da çalışırken pek çok durumda bir işe başlamadan önce işletim sisteminin o işe ilişkin bilgileri depolayacağı bir alan yaratması gerekir.

Varlıklar hakkında veri sakladığımız şeyler olduğu için iyi bir şekilde anlamamız gerekir.

Operatörlerin Aşırı Yüklenmesi

Problem Yaklaşım Temelleri, Algoritma ve Akış Şeması

Java da İstemci Tarafı Uygulamalar

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

Nesneye Dayalı Programlama nedir? UML Nedir? Sınıf Diyagramları Nesneye Dayalı Programlamanın Temel Taşları Miras alma (Inheritance) Çok biçimlilik

1. SINIFLAR Sınıf (Class) Mantığı

Sistem Programlama. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir.

EM-554 İleri Bilgisayar Programlama Teknikleri Algoritma ve Akış Diyagramları

Nesneye Dayalı Programlama

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 7

Bilgisayarların Gelişimi

Bölüm 9. Altprogramlar ISBN

NESNEYE DAYALI YAZILIM GELİŞTİRME

Java C.Thomas Wu 2004b kitabından Türkçeleştirilerek ve örneklendirilerek hazırlanmıştır.

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA

YZM 2105 Nesneye Yönelik Programlama

Yrd. Doç. Dr. Caner ÖZCAN

BTEP243 Ders 3. class Yazım Kuralı:

4. Bölüm Programlamaya Giriş

Spring Giriş Eğitimi

CANLILARIN ORTAK ÖZELLİKLERİ Beslenme Boşaltım Üreme Büyüme Uyarıları algılama ve cevap verme Hareket Solunum Hücreli yapı

ALGORİTMA TASARIMI VE SCRATCH UYGULAMASI

Oyununuzun senaryosunu kısaca tanıtınız/ amacını da belirtiniz:

Dersin Adı Alan Meslek/Dal Dersin Okutulacağı Dönem / Sınıf Süre Dersin Amacı Dersin Tanımı Dersin Ön Koşulları

Mantıksal İşlemler. 7.1 true, false, nil

SiSTEM ANALiZi ve TASARIMI

HSancak Nesne Tabanlı Programlama I Ders Notları

Nesne Yönelimli Programlama

Akdeniz Üniversitesi

=~ Metodu 92 Karakter Sınıfları 94 sub ve gsub metotları 101 Hızlı Tekrar 102 Kontrol Noktası 103 Düello 106 Sonraki Bölümde 109

Nesneye Yönelik Tasarım ve Programlama (COMPE 501) Ders Detayları

Transkript:

Nesne Tabanlı Programlama Ders Notları

Nesneye tabanlı programlamanın temellerini kavrayabilme Java temelleri ve Netbeans editörünü kavrayabilme Sınıf ve nesne kavramlarını anlayabilme Kalıtım konusunu kavrayabilme Çok biçimlilik, soyut sınıflar ve interface konularını kavrayabilme Java da istisna yönetimi konusunu kavrayabilme becerilerini kazanacaklardır.

Nesne Nedir? Sözlük anlamı belli bir ağırlığı ve hacmi, rengi olan her türlü canlı ve cansız varlık olan nesne çevremizi saran dokunabildiğimiz, görebildiğimiz her şeydir. Nesne tabanlı programlama gerçek dünyayı örnek almaktadır. Tıpkı gerçek dünyadaki gibi nesneler vardır ve bir birleri arasında etkileşim içerisindedirler.

Nesne Özellikleri Gerçek hayatta olduğu gibi nesne tabanlı programlamada da her bir nesnenin özellikleri vardır. Nesnelerin özelliklerinin tutukları değerler nesnenin o andaki durumu hakkında bilgi verirler. Bu değerler değiştikçe nesnenin durumu da değişikliğe uğrar. Nesnelerin özellikleri genellikle nesnenin içinde ya da dışında oluşan bir olayla değişir.

Nesne Davranış Biçimi Çevremizde ne kadar çok nesne var. Çiçekler, böcekler, insanlar, arabalar, otobüsler, kuşlar, taşlar, kayalar... Bu liste o kadar kabarık ki saymaya kalkmak bile sonsuzlukla çarpışmak gibi bir şey olsa gerek. Her nesnenin belli bir takım özellikleri, işlevsellikleri ve hatta amaçları var. Bazı nesneler bir araya gelerek başka yeni nesnelerin doğmasına neden olurlarken onlara bir takım ortak özelliklerini de veriyorlar. Bir bilgisayar nesnesini göz önüne alalım. Bilgisayar, monitör, ram, hard disk, mouse, klavye vb. gibi nesnelerden oluşur. Bu parçaların görevi farklıdır. Örneğin, monitör verilerin ekranda görünmesini sağlar, ama veri depolama görevi yoktur. Veri depolama görevi hard disk biriminin görevidir. Bilgisayarın çalışması, verilerin ekranda görünmesi, veri depolanması ise nesne davranışlardır. Verilerin ekranda gösterilmesi monitör nesnesinin bir davranışıdır.

Nesnelerin Barındırdığı Bilgiler Her bir nesne, kendisi hakkında ve yerine getireceği işlem yani eylem hakkında bilgi barındırır. Sistemin gereksinim duyduğu tüm veriler bir nesnenin özellikleri içinde yerleşmiştir. Bazı nesnelerin az verisi vardır; hatta bazılarının hiç yoktur. Bazıları ise büyük miktarda veriye sahiptir. Bu olay nesnenin gerçekleştireceği işleme bağlıdır. Nesne Özellikleri Nesneler o andaki durumları ile ilgili bilgiye sahiptir. Bilginin her bir parçasına özellik denilir. İşlemlere bağlı olarak, farklı nesneler farklı özellikleri saklarlar. Örneğin, bankanın ATM nesnesi, içerdeki para, kart tanıma, ATM kodu, ve bunun gibi özelliklere sahip olacaktır. Kalem, kalem gövdesinin uzunluğu, kalan mürekkep, ucun kalınlığı, vb. özelliklere sahiptir. Bir otomobil nesnesi ise daha farklı özelliklere sahip olacaktır. Örneğin, otomobilin hızı, ağırlığı, yakıt tüketimi vb. sayılabilir. 1.Nesne Otomobil 2.Özellik Hız Ağırlık

Nesneye Yönelik Programlama Aşamaları Nesneye dayalı programlama belirli bir sıraya göre yapılır. Bu sıra içinde nesneler tasarlanır, yaratılır ve ana program içinde bu nesneler kullanılır. Problemi oluşturan nesneler belirlenir. Bu nesneler somut ya da soyut varlıklar olabilir. Bu nesneler kodlanarak tanımlanır. Ana programda bu nesneler kullanılır. Nesne, ana programda aldığı mesaja göre davranır. Ya kendisi bir mesaj üretir ya da bir başka mesaj gelinceye dek bekler.

Nesneye Yönelik Programlama Aşamaları Nesneler Belirlenir Nesneler kodlanarak tanımlanır Nesneler ana program içinde kullanılır

Nesneler Arası İlişkiler Nesneler, daima diğer nesnelerle ilişki içerisindedirler. Bu ilişki nesneler arası iletişim şeklinde olabildiği gibi, yapısal ilişkilerde kurabilirler. Öyle ki bir nesne başka bir nesnenin parçası olabileceği gibi, birden çok nesnenin birleşiminden de oluşabilir. Örneğin bir araba tekerlekler, kapı, motor, koltuk gibi pek çok nesnenin bir araya gelmesiyle oluşmuş bir nesnedir. Nesneye yönelimli bir uygulamada tüm veriler ve kodlamalar nesneler üzerinden yapılırlar. Bu nedenle iş birliği söz konusudur. Nesnelerin birbirleriyle işbirliği yapabilmesi için birbirleriyle ilişki içersisinde olmaları gerekmektedir. Nesneler işbirliğini aralarında mesaj iletimiyle yaparlar. Mesajı alan nesne bu mesajı nasıl yorumlayacağını bilmekle yükümlüdür. Mesajlar genellikle nesnenin bir eylemini gerçekleştirmesi için gerekli veriyi taşırlar. N1 Mesaj2 N2 Mesaj1

Nesne Tabanlı Programlama Unsurları Nesne tabanlı programlamada temel 3 unsur vardır. Bunlar; Kapsülleme (Encapsulation) Sınıf içindeki bir değişkene direkt olarak erişim yerine özellikler aracılığı ile sağlanmalı Kalıtım (Inheritance) Bir sınıf başka sınıftan türetilebilir. Balina, tavşan, kedi, köpek gibi hayvanlar memeli sınıfına ait hayvanlardır. Bu sınıfa ait olmaları ortak özellikler barındıklarını göstermektedir. Yani memeli sınıfı temel sınıf, balina, tavşan, kedi, köpek sınıfları da türetimiş sınıf olarak adlandırabiliriz. Çok biçimlilik (Polymorphism) Aralarında kalıtsal ilişki bulunan sınıflardan temel sınıf tipindeki değişkenler, türeyen sınıflar tipinde referans alabilirler. İguana bu durumu açıklayabilen bir örnek olabilir.