Akademik Birim: |
Mekatronik Mühendisliği Bölümü |
Öğrenim Türü: |
Örgün Eğitim |
Ön Koşullar |
MTE 291 |
Öğrenim Dili: |
İngilizce |
Dersin Düzeyi: |
Lisans |
Dersin Koordinatörü: |
Doğan ÇÖRÜŞ |
Dersin Amacı: |
Bu dersin amacı, öğrencilere C++ programlamasının hem temel hem de ileri düzey konseptlerini kapsamlı bir şekilde anlatmak, nesne yönelimli programlama prensiplerine odaklanmaktır. Ders, öğrencilere bu konseptleri mekatronik mühendisliği alanında uygulama yeteneği kazandırmayı hedeflemektedir. Dersin sonunda, öğrenciler C++ konusunda sağlam bir temele sahip olacak, mühendislik çözümlerinde özelliklerini uygulama konusunda yetkin olacak ve yenilikçi ve verimli yazılım çözümleri ile gerçek dünya mühendislik zorluklarına hazır olacaklardır. |
Dersin İçeriği: |
C++ sözdizimi ve temel dil özelliklerine genel bakış, C++'daki temel programlama kavramlarının gözden geçirilmesi, const nitelikleri, fonksiyon prototipleme, fonksiyon aşırı yüklemesi, C++ yapı taşlarının detaylı analizi, işaretçilerin anlaşılması, bellek tahsisi/boşaltılması, mekatronik mühendisliğinde pratik uygulamalar, C++'da referanslara giriş, fonksiyon argümanları ve dönüş değerlerinde kullanımı, kapsülleme, bilgi gizleme, sınıf özellikleri, üye fonksiyonlar, erişim kontrolü, tek kalıtımın uygulanması, temel ve türetilmiş sınıfların, kalıtımın etkilerinin keşfi, C++'da polimorfizmin uygulanması, sanal fonksiyonlar, çalışma zamanı bağlaması, v-tablo kavramları, soyut sınıfların tanımlanması ve kullanılması, arayüzlerin uygulanması, kalıtım hiyerarşilerinde yukarı/aşağı döküm. |
Dersin Öğrenme Çıktıları (ÖÇ): |
- 1- Develop a strong foundation in C++ basics, including syntax, programming concepts, and critical non-object-oriented features.
- 2- Gain expertise in pointers and references, crucial for effective memory management and software development in mechatronic systems.
- 3- Master class-related concepts like encapsulation, information hiding, and class structures, vital for object-oriented design.
- 4- Acquire the ability to implement and understand single inheritance, enhancing capabilities in designing complex software systems.
- 5- Develop skills in polymorphism and dynamic binding, essential for creating flexible and efficient object-oriented designs.
- 6- Mekatronik mühendisliğinde ileri ve esnek yazılım tasarımı ve uygulamasında kilit olan soyut sınıfları ve arayüzleri etkili bir şekilde kullanma öğrenimi.
|
Dersin Öğrenme Yöntem ve Teknikleri |
Sınıfta ders anlatımı ardından bilgisayar laboratuarında uygulama ve proje sunumları |
Hafta | Konular | Ön Hazırlık |
ÖÇ |
1 |
C++ Temel Varsayımlarına Giriş |
Ders Kitabı 1 |
1 |
2 |
C++’da Temel Dil Özellikleri |
Ders Kitabı 2 |
1 |
3 |
Dolaylı Adresleme - İşaretçiler |
Ders Kitabı 3 |
2 |
4 |
Dolaylı Adresleme - Referanslar |
Ders Kitabı Bölüm 4 |
2 |
5 |
Sınıflar |
Ders Kitabı Bölüm 5 |
3 |
6 |
Tek Kalıtımla Hiyerarşilerin Uygulanması |
Ders Kitabı Bölüm 6 |
4 |
7 |
Polimorfizm ile Dinamik Bağlama |
Ders Kitabı Bölüm 7 |
5 |
8 |
Soyut Sınıflar |
Ders Kitabı Bölüm 8 |
6 |
9 |
Nesne Yönelimli Programlamada İleri Kavramlar |
Ders Kitabı Bölüm 5-8 |
3,5,6 |
10 |
Nesne Yönelimli Programlama Prensipleri |
Ders Kitabı Bölüm 1-8 |
1,2,3,4,5, |
11 |
İleri Kalıtım ve Polimorfizm |
Ders Kitabı Bölüm 6-7 |
4,5 |
12 |
Soyut Sınıflar ve Arayüz Tasarımı |
Ders Kitabı Bölüm 8 |
3,6 |
13 |
Nesne Yönelimli Programlama Kavramlarını Bütünleştirme |
Ders Kitabı Bölüm 1-8 |
1, 2, 3, 4 |
14 |
Dersin Gözden Geçirilmesi ve Sentezi |
Ders Kitabı Bölüm 1-8 |
1, 2, 3, 4 |
Kadir Has Üniversitesi'nde bir dönem 14 haftadır, 15. ve 16. hafta sınav haftalarıdır.