GERİ DÖN

Ders Öğretim Planı


Dersin Kodu Dersin Adı Dersin Türü Yıl Yarıyıl AKTS
9025002452026 NESNE TABANLI PROGRAMLAMA-II Seçmeli Ders Grubu 2 3 4,00

Önlisans


Türkçe


Bu ders ile öğrenciye; Dart dili ve nesne tabanlı programlama ve Flutter başlangıç düzeyinde anlatımları yapılır


ÖĞR. GÖR. DR. LEVENT TÜRKLER


1 UML sınıf diyagramlarıyla sınıf tasarımı yapmak; kalıtım, çok biçimlilik, soyutlama ve arayüz yapılarını uygulamak.
2 Nesneler arası ilişkiler ve bileşim yapılarıyla modüler uygulamalar geliştirmek.
3 İstisna yönetimi, veri doğrulama, test ve hata ayıklama yöntemleriyle program hatalarını tespit etmek ve gidermek.
4 Verileri JSON/CSV biçimlerinde ve veritabanında saklamak; dosya, ağ, sensör veya cihazlardan veri alıp işlemek.
5 Katmanlı mimaride, otomasyon alanına yönelik bütünleşik bir nesne tabanlı uygulama geliştirmek, test etmek ve sunmak.

Birinci Öğretim


Yok


Yok


Google Inc in geliştirdiği Dart programlama dilinin yapısı, nesne tabanlı kullanımı ve örnekleriyle beraber bir sonraki adımı olan Flutter programlama ile taşınabilir cihazlarda uygulamanın hazırlanması eğitimi verilir.


Hafta Konular (Teorik) Uygulama Öğretim Yöntem ve Teknikleri Ön Hazırlık
1 Nesne Tabanlı Programlamaya Genel Bakış ve UML ile Sınıf Tasarımı Sınıf, nesne, nitelik ve metot yapılarının gözden geçirilmesi ve UML sınıf diyagramlarının oluşturulması Anlatım, Gösterip Yaptırma, Uygulama Sınıf, nesne, metot ve kapsülleme kavramlarının gözden geçirilmesi
2 Kalıtım (Inheritance) ve Sınıf Hiyerarşileri Temel ve türetilmiş sınıfların oluşturulması ve sınıf hiyerarşilerinin uygulanması Anlatım, Gösterip Yaptırma, Uygulama Sınıf üyeleri, erişim belirleyicileri ve kurucu metotların gözden geçirilmesi
3 Metot Aşırı Yükleme (Overloading), Metot Ezme (Overriding) ve Çok Biçimlilik (Polymorphism) Metotların aşırı yüklenmesi ve ezilmesi ile farklı nesne davranışlarının gerçekleştirilmesi Anlatım, Gösterip Yaptırma, Uygulama Kalıtım, metot ve sınıf hiyerarşisi kavramlarının gözden geçirilmesi
4 Soyutlama, Soyut Sınıflar ve Arayüzler Soyut sınıfların ve arayüzlerin tanımlanması ve farklı sınıflarda uygulanması Anlatım, Gösterip Yaptırma, Uygulama Kalıtım ve çok biçimlilik kavramlarının gözden geçirilmesi
5 Nesneler Arası İlişkiler, Bileşim ve Modüler Tasarım Nesneler arasında ilişkilerin oluşturulması, bileşim yapılarının kullanılması ve uygulamanın modüllere ayrılması Anlatım, Gösterip Yaptırma, Uygulama Sınıf ilişkileri ve nesne etkileşimlerinin incelenmesi
6 İstisna Yönetimi (Exception Handling) ve Veri Doğrulama Program çalışma hatalarının yakalanması, istisnaların yönetilmesi ve kullanıcı verilerinin doğrulanması Anlatım, Gösterip Yaptırma, Uygulama, Problem Çözme Program hataları ve kullanıcı veri girişlerinin gözden geçirilmesi
7 Nesne Tabanlı Uygulama Geliştirme Kalıtım, çok biçimlilik, soyutlama, nesne ilişkileri ve istisna yönetimini içeren bir uygulamanın geliştirilmesi Uygulama, Problem Çözme İlk yarıda öğrenilen nesne tabanlı programlama yapılarının gözden geçirilmesi
8 ARA SINAV — — —
9 Veri Serileştirme ve Yapılandırılmış Veri İşlemleri Nesnelerin JSON, CSV ve benzeri veri biçimleri kullanılarak kaydedilmesi, okunması ve aktarılması Anlatım, Gösterip Yaptırma, Uygulama Dosya işlemleri ve veri koleksiyonlarının gözden geçirilmesi
10 Veritabanına Giriş ve Nesne Tabanlı Veri Yönetimi Veritabanı ve tabloların oluşturulması, temel SQL sorguları ve veritabanı işlemlerinin sınıflar üzerinden gerçekleştirilmesi Anlatım, Gösterip Yaptırma, Uygulama Veritabanı, tablo, alan, kayıt ve temel SQL kavramlarının incelenmesi
11 Katmanlı ve Modüler Uygulama Mimarisi Kullanıcı arayüzü, uygulama mantığı ve veri erişim işlemlerinin ayrı modül ve sınıflar halinde düzenlenmesi Anlatım, Gösterip Yaptırma, Uygulama, Problem Çözme Modüler programlama ve sınıf sorumluluklarının gözden geçirilmesi
12 Harici Veri Kaynakları ve Veri Alışverişi Uygulamaların dosya, ağ, sensör veya cihazlardan veri alması ve bu verileri işlemesine yönelik uygulamaların gerçekleştirilmesi Anlatım, Gösterip Yaptırma, Uygulama Veri iletişimi ve yapılandırılmış veri biçimlerinin gözden geçirilmesi
13 Yazılım Testleri, Hata Ayıklama ve İyileştirme Uygulamanın farklı çalışma koşullarında test edilmesi, hataların belirlenmesi ve giderilmesi Anlatım, Gösterip Yaptırma, Uygulama, Problem Çözme Hata yönetimi ve program doğrulama yöntemlerinin gözden geçirilmesi
14 Bütünleşik Nesne Tabanlı Uygulama Geliştirme – I Nesne tabanlı yapı, kullanıcı arayüzü, veri yönetimi ve gerekli veri kaynaklarını içeren kapsamlı bir uygulamanın geliştirilmesi Uygulama, Problem Çözme, Proje Tabanlı Öğrenme Geliştirilecek uygulamanın gereksinimlerinin ve sınıf yapısının hazırlanması
15 Bütünleşik Nesne Tabanlı Uygulama Geliştirme – II Uygulama bileşenlerinin bütünleştirilmesi, temel işlevlerin tamamlanması ve uygulamanın test edilmesi Uygulama, Problem Çözme, Proje Tabanlı Öğrenme Geliştirilen uygulamanın mevcut durumunun ve eksiklerinin değerlendirilmesi
16 Bütünleşik Uygulamanın Tamamlanması ve Değerlendirilmesi Geliştirilen uygulamanın tamamlanması, çalışır durumda gösterilmesi ve işlevsel olarak değerlendirilmesi Uygulama, Problem Çözme, Proje Tabanlı Öğrenme Uygulamanın çalışır ve değerlendirilebilir duruma getirilmesi

1. Özgül, F. Her Yönüyle Python, Kodlab Yayınları. 2. Başer, M. Python, Dikeyeksen Yayıncılık. 3. Özgül, F. Python Programlama Dili (güncel çevrimiçi Türkçe kaynak), belgeler.yazbel.com 4. Python Resmî Dokümantasyonu, docs.python.org/tr 5. SQLite Resmî Dokümantasyonu, sqlite.org/docs.html 6. Ders notları ve uygulama dosyaları


Ders, kuramsal anlatım ile laboratuvarda uygulamalı programlama çalışmaları birlikte yürütülerek işlenir. Her hafta konuya ilişkin örnek uygulamalar gösterilir ve öğrenciler bu uygulamaları bilgisayar başında yaparak pekiştirir. Haftalık ödevlerle konular desteklenir. Dönem sonunda öğrenciler, otomasyon alanına yönelik bütünleşik bir nesne tabanlı uygulama geliştirir, test eder ve sunar.


Yarıyıl (Yıl) İçi Etkinlikleri Adet Değer
Ara Sınav 1 50
Ev Ödevi 2 50
Toplam 100
Yarıyıl (Yıl) Sonu Etkinlikleri Adet Değer
Final Sınavı 1 100
Toplam 100
Yarıyıl (Yıl) İçi Etkinlikleri 40
Yarıyıl (Yıl) Sonu Etkinlikleri 60

Yok


Etkinlikler Sayısı Süresi (saat) Toplam İş Yükü (saat)
Ara Sınav 1 2 2
Final Sınavı 1 2 2
Derse Katılım 14 4 56
Bireysel Çalışma 14 2 28
Ara Sınav İçin Bireysel Çalışma 1 8 8
Final Sınavı içiin Bireysel Çalışma 1 6 6
Ev Ödevi 2 6 12
Toplam İş Yükü (saat) 114

PÇ 1 PÇ 2 PÇ 3 PÇ 4 PÇ 5 PÇ 6 PÇ 7 PÇ 8 PÇ 9 PÇ 10 PÇ 11 PÇ 12 PÇ 13 PÇ 14 PÇ 15 PÇ 16
ÖÇ 1 2 4 2
ÖÇ 2 4 3
ÖÇ 3 3 4 2
ÖÇ 4 4 2 3 2
ÖÇ 5 2 4 3 2 2
* Katkı Düzeyi : 1 Çok düşük 2 Düşük 3 Orta 4 Yüksek 5 Çok yüksek