Nesne Yönelimli Programlama Dersi

Slides:



Advertisements
Benzer bir sunumlar
Nesnelerin Özellikleri. - Üye nesneler - friend belirtesi - Nesnelerin operatörlere yüklenmesi - this yerel (lokal) değişkeni - inline tanımlı üye fonksiyonlar.
Advertisements

Göstericiler (Pointers)
SINIFLAR Yılmaz Kılıçaslan.
NESNEYE YÖNELİK PROGRAMLAMA SINIFLAR
Yığın ve Kuyruk.
Nesneye Yönelik Programlama
Nesneye Yönelik Programlama
Programlama-II (Java ile Bilgisayar Programlama)
Nesneye Dayalı Programlama
Nesneye Yönelik Programlama
Tanım ANSI C dizgisi (string) bir karakter dizisidir (array of characters) Örnek dizgi tanımları: #define UYARI_DIZGISI “Veri giris hatasi” #define DIZGI_BOYU.
Yeni C++ Standartları: C++0x
Nesneye Dayalı Programlama
C++’A GİRİŞ Yılmaz Kılıçaslan.
SANAL FONKSİYONLAR VE ÇOK BİÇİMLİLİK
Bölüm 9 Dizgiler Dizgi Tanımı Dizgi Girdi İşlemleri
Bölüm 10 Yapılar ve Birleşimler
Namespaces and .NET Class Library (İsim Alanları Sınıf Kütüphanesi)
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 6: Sınıflar
KOPYA YAPICI FONKSİYON, STATİK ELEMANLAR, ARKADAŞ SINIF VE FONKSİYONLAR, NESNE DİZİLERİ Yılmaz Kılıçaslan.
SINIFLAR GİRİŞ Yılmaz Kılıçaslan.
Nesneye Dayalı Programlama
Erişim Denetimi, Fonksiyon
C++ Yapısı Giriş-Çıkış Komutları Döngü Komutları
Nesneye Yönelik Programlama
.Net teknolojisi ve C# Yasin Gedik Dokuz Eylül Üniversitesi (4. Sınıf) Microsoft Danışman Öğrenci
SINIFLAR VE DİNAMİK BELLEK YÖNETİMİ
Sınıflar ve Fonksiyonlar
Paralel Programlamaya Giriş
FONKSİYONLAR.
SABİT NESNE VE ELEMAN FONKSİYONLAR VE ELEMAN NESNELER
Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü C ++ Nesne.
Önceki Dersi Hatırlama !!
Nesneye Yönelik Programlama (12. Sunu). İsim Uzayları (Namespaces) Sınıfınızda Deniz adında iki öğrenci olduğunu kabul ediniz. Böyle bir durumda bu öğrencileri.
Kalıtım , Sınıf Asli Ergün.
Nesneye Dayalı Programlama
JAVA’DA DİZİLER Dr.Galip AYDIN.
Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü C ++ Veri.
Sınıflar ve Nesneler Sınıf: bir nesnenin şablonunu, kalıbını, şeklini, davranışını, kalıtımını değişkenleri, metodları ve ebeveynleri vasıtasıyla tanımlar.
SINIFLAR VE DİNAMİK BELLEK YÖNETİMİ VE SINIFLARIN DİĞER ÖZELLİKLERİ Yılmaz Kılıçaslan.
Trees, Vectors, Iterators. ADT Abstract Data Type (ADT) vs implementation -Soyut Veri Türleri - Uygulamaları.
KALITIM Yılmaz Kılıçaslan.
SANAL FONKSİYONLAR VE ÇOKBİÇİMLİLİK Yılmaz Kılıçaslan.
Görsel C# ile Windows Programlama
SINIFLAR ve NESNELER. İlk sınıfımızı ekleyelim class KrediHesap { public ulong HesapNo; public double Limit; public string KartSahibi; }
SINIFLAR VE DİNAMİK BELLEK YÖNETİMİ Yılmaz Kılıçaslan.
BTP206– Görsel Programlama II
SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
PROGRAMLAMA Dosyalama İşlemleri
Veri yapıları Hafta3 Dizi Yapıları.
C Programlamada, benzer tipte tanımlaman değişkenleri kontrol etmede bize en çok yardım eden dostlarımız dizilerdir. Örneğin: 100 Öğrencinin bilgilerini.
BİLGİSAYAR programlama II
Bilgisayar Programlama III C
Hafta2 Rekürsif Algoritmalar
JAVA 1. GİRİŞ & TARİHÇE Java, Sun Microsystems mühendislerinden James Gosling tarafından geliştirilmeye başlanmıştır. Açık kodlu. Nesneye yönelik. Düzlemden.
İbrahim Olgaç PROGRAMLAMA DİLLERİ SUNUMU C#
C’de Fonsiyonlar Aslı Ergün.
5- class & object Nesne Yönelimli Programlama - i
C Programlama Yrd.Doç.Dr. Ziynet PAMUK BMM211-H11
3- VERİ TİPLERİ - OPERATÖRLER Nesne Yönelimli Programlama - i
Soyut veri tipleri ve kapsülleme kavramları
YAPISAL PROGRAMLAMA Hafta-6
JAVA’DA DİZİLER. Özet  Dizi: belirli sayıda ve aynı veri türünden de ğ işkenlere aynı adla erişilmesini sa ğ layan bir yapıdır.  Dizilerde döngü işlemleri.
Bölüm 10: Kayıtlar – Records (structs)
C++ Programming:. Program Design Including
YAPISAL PROGRAMLAMA Hafta-7
Kurucular(Yapıcılar), Yıkıcılar
Karakter dizi fonksiyonları
MTM216 GÖRSEL PROGRAMLAMA
Sunum transkripti:

Nesne Yönelimli Programlama Dersi «Bir Dönemin Ardından…»

C++’ın Temel Elemanları C/C++ arasındaki temel farklar Belirteçler (identifiers) -> kısıtlamaları Temel veri tipleri -> int, bool, char, float, … Giriş – çıkış deyimleri (cin, cout) Arttırma, azaltma operatörleri (++, --) Escape sequences (\n, \t, \’, …) Using namespace std…

Giriş - Çıkış Input stream, output stream get, getline, ignore, peek, putback, clear fonksiyonları fill, setfill, unsetf, flush fonksiyonları Dosya okuma-yazma işlemleri, açılış modları (ios::app, ios::trunc, ios::binary, ...)

Kullanıcı Tanımlı Fonksiyonlar Void fonksiyonlar Value ve reference parametreler Local, global değişkenler static değişkenler

Kullanıcı Tanımlı Veri Tipleri, İsim Uzayları ve String Sınıfı enum tipi (değişken tanımlama, atama, illegal işlemler, karşılaştırmalar, döngüler, fonksiyonlarla kullanımı, isimsiz veri tipleri…) typedef ile alias (takma ad) oluşturma namespace’ler (erişim, using deyimi, global, local ve namespace’deki değişkenlere erişim, isimsiz namespace’ler) string sınıfı (length, size, find, substr, swap fonksiyonları, + operatörü, string::npos sabiti) C string’leri (null terminated karakter dizileri) : strcpy, strlen, strcmp, c_str fonksiyonları

Preprocessor Directives #include #define, macrolar ve #undef Koşullu derleme (#if, #ifdef, #ifndef, #elif, #endif) #error #pragma # ve ## operatörleri #line Öntanımlı sembolik sabitler (__DATE__, __TIME__) assert macrosu ve #define NDEBUG

Classes and Data Abstractions Sınıf kavramı Üyelere erişim tipleri (public, protected, private) Sınıf üyelerine erişim ve atama operatörü Sınıfların faaliyet alanı (class scope) Fonksiyonlara sınıfların geçirilmesi Üye fonksiyonların implementasyonu, scope resolution operatörü Constructor ve destructor’lar, ne zaman çağrıldıkları Sınıf nesnesi dizileri Abstract data type (soyut veri tipi) Information hiding (.h - .cpp ayrımı)

Inline fonksiyonlar (faydaları, kullanımı, kısıtlamaları,…) Fonksiyon argümanlarına default değer atamaları Implicit conversions

Kalıtım (Inheritance) ve Kompozisyon (Composition) Base ve derived class’lar Tekli, çoklu ve çok seviyeli kalıtım Üye erişim belirteci (member access specifier) Derived ve base class’ların constructor’larının, üye fonksiyonlarının çağrımı Member access specifier ile member type’lar arasındaki ilişki Base class’ın constructor’larının derived class’a dahil edilmesi (using Base::Base) Composition (tanımlanması, constructor ve üye fonksiyonların çağrımı,…) Nesne yönelimli tasarımın 3 ana esası, noun-verb yöntemi

Pointer’lar, Dinamik Bellek Tahsisi… Pointer değişkenler, address of (&) ve dereferencing (*) operatörleri, class pointer’ları Dinamik bellek tahsisi (new, delete, heap-stack bellek, dinamik diziler) Pointer arttırımı/azaltımı (increment/decrement) Pointer’ların fonksiyonlarda kullanımı Shallow/deep copy Copy constructor Fonksiyona pointer Void pointer’lar

Sanal Fonksiyonlar Compile-time binding / run-time binding Sanal fonksiyonların oluşturulması, kullanımı, base class pointer’ları aracılığıyla tek bir arayüz ile çok sayıda türetilmiş sınıfın kullanımı Sanal destructor’ların gerekliliği Saf sanal fonksiyonlar Soyut sınıflar Sanal temel sınıflar Referans değişkenler

Fonksiyon ve Operatör Aşırı Yüklemesi Fonksiyonların aşırı yüklenmesi Operatörlerin aşırı yüklenmesi (kısıtlamalar, kavramlar,…) this pointer’ı Sınıfların private üyelerine erişim amacıyla kullanılan sınıf üyesi olmayan friend fonksiyonlar Operatör fonksiyonlarının member-function ya da friend function olma durumları (faydalar, gereklilikler,…) Çok sayıda operatör aşırı yükleme örneği…

Const, Static Const değişkenler, const pointerlar, const nesneler ve const üye fonksiyonlar, mutable değişkenler… Sınıf üyesi static değişkenler ve fonksiyonlar (paylaşımlı bellek örneği, kullanımı…)

Şablonlar (Templates) Function ve class templates Function ve class template specializations Function template tanımlaması, kullanımı, faydaları ve kısıtlamaları (örn. information hiding) Parametreleştirilmiş sınıflar – class templates (tanımlanması, kullanımı, non-type template parameters, default types, …)

Tip Dönüşümleri Eski stil dönüşümler static_cast const_cast reinterpret_cast dynamic_cast downcast, upcast tanımları RTTI typeinfo sınıfı – typeid fonksiyonu Ne amaçla – nerelerde kullanılacakları, kısıtlamaları ve birbirlerine üstünlükleri…

Sınavda başarılar…