NESNE YÖNELİMLİ PROGRAMLAMA
- Ders
- CMPE313 - NESNE YÖNELİMLİ PROGRAMLAMA
- Bölüm
- Bilgisayar Mühendisliği - İngilizce - Lisans
- Ders Tipi
- Ders
- Durum
- Zorunlu
- Dil
- İngilizce
- Kredi
- 4
- AKTS
- 7
- T+P+L
- 3 + 0 + 2
- Ders Koordinatörleri
- Yrd. Doç. Dr. Fuat UYGUROĞLU
- Ön Koşul
- Anahtar Sözcükler
Ders Açıklaması
Nesne Yönelimli Programlama dersinin amacı interaktif bir programlama alanı olan nesne yöneilimini ele almaktadır. Bu bağlamda dersin içeriği, sınıfları, sınıfların niteliklerini, davranışlarını ve yöntemlerini de içerecek şekilde, nesneleri ve onların ilişkilerini bilişimsel problemi anlayarak belirlemeyi içerir. Tanımlanan problemin açıklamasına bakarak nesne diyagramlarını oluşturmak, verilen UML sınıf diyagramlarından Java sınıf diyagramlarını oluşturmak, mevcut endüstri standart kodlama ve biçimlendirme kurallarını kullanmak, Java ve Eclipse kullanarak GUI tabanlı uygulamalar oluşturmak, teknik olarak sınıflar, nesneler, miras, polimorfizm, arayüzler, toplama ve soyut sınıf arasındaki farklılıkları belirlemek diğer konulardır. Buna ek olarak, kodun yeniden kullanımı ve yazılım kalite konuları ele alınacaktır ve miras kod kodun yeniden kullanım yoluyla gösterilecektir.
NESNE YÖNELİMLİ PROGRAMLAMA
Değerlendirme Araçları (Aktif Dönem)
| Öğe | Tür | Ağırlık (%) |
|---|---|---|
| Midterm | Ara Sınav | 25 |
| Final | Final | 35 |
| Project | Proje | 20 |
| Lab | Kısa Sınav | 10 |
| Quiz | Kısa Sınav | 10 |
| Toplam | 100 | |
Ders çıktıları
- 01 Design and develop non-trivial programs using appropriate object oriented design and development methods
- 02 Use UML Class diagrams efficiently for object oriented software design
- 03 Apply principles of object oriented programming for flexibility, re-use and maintenance purposes
- 04 Practice layered architecture model and develop gradually expanding object oriented programs
Ders Müfredatı
| Hafta | Konu |
|---|---|
| Hafta 1 | Introduction to the course/Ice breaking. |
| Hafta 2 | What is object oriented programming? The difference between Object Oriented Programming (OOP) and structured programming? |
| Hafta 3 | Classes, Objects & Unified Modelling Language (UML) |
| Hafta 4 | Classes, Objects & Unified Modelling Language (UML) Cont. |
| Hafta 5 | Inheritance and Multiple Inheritance and Abstract classes |
| Hafta 6 | Interfaces and Polymorpism |
| Hafta 7 | Revision and QUIZ 1 |
| Hafta 8 | Midterm Exam |
| Hafta 9 | Midterm Exam |
| Hafta 10 | Exception Handling & File I/O |
| Hafta 11 | Generics & Basic Collections (List, Map). UML sequence diagrams. |
| Hafta 12 | Generics & Basic Collections (List, Map). UML sequence diagrams. Cont. |
| Hafta 13 | JavaFX I (Basics): Stage, Scene, Layouts, Controls. |
| Hafta 14 | JavaFX II (Event Handling & Lambdas) |
| Hafta 15 | Revision and QUIZ 2 & LAB QUIZ |
Referans Kitaplar & Ders Materyalleri
- 01 Paul J. Deitel and Harvey Deitel. 2017. Java How to Program, Early Objects, Global Edition (11th Edition) Pearson.
- 02 Gaddis, T. 2021 Starting out with java: From control structures through objects, 8th edition. Pearson Education
- 03 Y. Daniel Liang 2023 Introduction to Java Programming and Data Structures, 13th edition. Pearson Education
Ders Çıktıları
- L01
- L02
- L03
- L04
Program Çıktıları
- Matematik, fen bilimleri, temel mühendislik, bilgisayarla hesaplama ve ilgili mühendislik disiplinine özgü konularda bilgi.
- Matematik, fen bilimleri, temel mühendislik, bilgisayarla hesaplama ve ilgili mühendislik disiplinine özgü konularda ki bilgileri, karmaşık mühendislik problemlerinin çözümünde kullanabilme becerisi.
- Karmaşık mühendislik problemlerini, temel bilim, matematik ve mühendislik bilgilerini kullanarak ve ele alınan problemle ilgili BM Sürdürülebilir Kalkınma amaçlarını gözeterek tanımlama becerisi.
- Karmaşık mühendislik problemlerini, temel bilim, matematik ve mühendislik bilgilerini kullanarak ve ele alınan problemle ilgili BM Sürdürülebilir Kalkınma amaçlarını gözeterek formüle etme becerisi.
- Karmaşık mühendislik problemlerini, temel bilim, matematik ve mühendislik bilgilerini kullanarak ve ele alınan problemle ilgili BM Sürdürülebilir Kalkınma amaçlarını gözeterek analiz etme ve çözme becerisi.
- Karmaşık mühendislik problemlerine yaratıcı çözümler tasarlama becerisi.
- Karmaşık sistemleri, süreçleri, cihazları veya ürünleri gerçekçi kısıtları ve koşulları gözeterek, mevcut ve gelecekteki gereksinimleri karşılayacak biçimde tasarlama becerisi.
- Karmaşık mühendislik problemlerinin analizi ve çözümüne yönelik, tahmin ve modelleme de dahil olmak üzere, uygun teknikler ve kaynakları sınırlamalarının da farkında olarak seçme ve kullanma becerisi.
- Karmaşık mühendislik problemlerinin analizi ve çözümüne yönelik, tahmin ve modelleme de dahil olmak üzere, modern mühendislik ve bilişim araçlarını, sınırlamalarının da farkında olarak seçme ve kullanma becerisi.
- Karmaşık mühendislik problemlerinin incelenmesi için literatür araştırması yapma ve araştırma yöntemlerini kullanma becerisi.
- Karmaşık mühendislik problemlerinin incelenmesi için deney tasarlama becerisi.
- Karmaşık mühendislik problemlerinin incelenmesi için, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi.
- Mühendislik uygulamalarının BM Sürdürülebilir Kalkınma amaçları kapsamında, topluma, sağlık ve güvenliğe, ekonomiye, sürdürülebilirlik ve çevreye etkileri hakkında bilgi.
- Mühendislik uygulamalarının BM Sürdürülebilir Kalkınma amaçları kapsamında, mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık.
- Mühendislik meslek ilkelerine uygun davranma, etik sorumluluk hakkında bilgi.
- Hiçbir konuda ayrımcılık yapmadan, tarafsız davranma ve çeşitliliği kapsayıcı olma konularında farkındalık.
- Bireysel olarak etkin biçimde çalışabilme becerisi.
- Disiplin içi takımlarda (yüz yüze, uzaktan veya karma) takım üyesi veya lideri olarak etkin biçimde çalışabilme becerisi.
- Çok disiplinli takımlarda (yüz yüze, uzaktan veya karma) takım üyesi veya lideri olarak etkin biçimde çalışabilme becerisi.
- Hedef kitlenin çeşitli farklılıklarını (eğitim, dil, meslek gibi) dikkate alarak, teknik konularda sözlü etkin iletişim kurma becerisi.
- Hedef kitlenin çeşitli farklılıklarını (eğitim, dil, meslek gibi) dikkate alarak, teknik konularda yazılı etkin iletişim kurma becerisi.
- Proje yönetimi ve ekonomik yapılabilirlik (fizibilite) analizi gibi iş hayatındaki uygulamalar hakkında bilgi.
- Girişimcilik ve yenilikçilik hakkında farkındalık.
- Bağımsız ve sürekli öğrenebilme.
- Yeni ve gelişmekte olan teknolojilere uyum
- Teknolojik değişimlerle ilgili sorgulayıcı düşünebilmeyi kapsayan yaşam boyu öğrenme becerisi.
Pç-Dç Matrisi
| ÖÇ | Ortalama | ||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| L01 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
| L02 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
| L03 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
| L04 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |