GERİ DÖN

Ders Öğretim Planı


Dersin Kodu Dersin Adı Dersin Türü Yıl Yarıyıl AKTS Kredi
BTT511 Java İle Programlama Seçmeli Ders Grubu 1 1 6.00 3.00

Yüksek Lisans



Bu ders, öğrencilere, Java programlama dilini kullanarak nesne yönelimli programlamanın genel prensiplerini vermeyi amaçlar. Bu derste öğrenciler, sınıfları, nesneleri, veri üyelerini, metotları, kalıtımı ve çok biçimliliği içeren nesne yönelimli programlamanın ana kavramlarını öğrenecektir. Ders içeriğinde, soyut sınıfların kullanımıyla kalıtımın ve çok biçimliliğin uygulanması gibi nesne yönelimli programlama teknikleri de işlenecektir.


Dr. Öğr. Üy. Önder Eyecioğlu


1 Java programlama dilini bilir
2 Java Programlama Dilinde Kullanılan Kontrol ve Döngü Komutlarını kullanmak
3 Nesneye dayalı programlama kavramlarını bilir
4 Tasarım düzenlemeyi bilir

Birinci Öğretim


Programlamaya Giriş Algoritma ve Programlama Temelleri


Öğrencilerin temel algoritma ve mantık becerilerine sahip olması beklenir. IDE (örn. IntelliJ IDEA, Eclipse) kullanımı teşvik edilir. Haftalık küçük projeler ve ödevlerle öğrenme desteklenmelidir. Nesne yönelimli programlama kavramlarına açık olunmalıdır.


Java diline giriş ve kurulum Temel sözdizimi ve veri türleri Karar yapıları ve döngüler Diziler ve dizi işlemleri Metotlar ve parametre geçişi Sınıflar ve nesneler Kalıtım ve çok biçimlilik Soyut sınıflar ve arayüzler İstisna (exception) yönetimi Koleksiyon yapıları (List, Set, Map) Dosya okuma/yazma işlemleri Basit grafik arayüz uygulamaları (GUI) Java ile proje geliştirme


Hafta Teorik [OgretimYontemVeTeknikleri] [OnHazirlik]
1 Java diline giriş ve geliştirme ortamlarının kurulumu Teorik ders anlatımı Java JDK ve IDE kurulumu (IntelliJ IDEA, Eclipse)
2 Temel sözdizimi, değişkenler ve veri türleri Canlı kod yazımı ve gösterimi Temel algoritma mantığının gözden geçirilmesi
3 Karar yapıları (if, switch) Laboratuvar uygulamaları Değişken tanımlama ve veri türleri üzerine tekrar
4 Döngüler (for, while, do-while) Kod inceleme (code review) oturumları Koşullu ifadelerin çalışılması (if, else)
5 Diziler ve çok boyutlu diziler Grup projeleri Döngülerle ilgili örneklerin incelenmesi
6 Metotlar ve parametre geçişi Sınıf içi mini uygulamalar Basit metotlar yazma denemeleri
7 Sınıf ve nesne kavramı Problem çözme çalışmaları Nesne yönelimli programlama (OOP) temel kavramlarının araştırılması
8 Yapıcılar (constructors) ve metot aşırı yükleme Öğrenci sunumları Sınıf ve nesne tanımı örneklerini incelemek
9 Yapıcılar (constructors) ve metot aşırı yükleme Ters yüz sınıf (flipped classroom) yaklaşımı Inheritance ve polymorphism üzerine temel bilgiler
10 Çok biçimlilik (polymorphism) ve override işlemleri Geribildirim odaklı uygulamalar try-catch blokları ile hata yönetimi örnekleri
11 Soyut sınıflar ve arayüzler Video anlatım destekli öğrenme Java koleksiyon kütüphanelerine genel bakış
12 İstisna yönetimi (try-catch-finally) Proje tabanlı öğrenme Dosya işlemlerine giriş: FileReader, FileWriter
13 Koleksiyon yapıları (ArrayList, HashMap vb.) Etkileşimli sınavlar ve quizler Temel GUI kütüphanelerine bakış (Swing, JavaFX)
14 Dosya işlemleri (okuma/yazma) Kodlama yarışmaları / hackathon Önceki dönem programlama ödevlerinin gözden geçirilmesi
15 Basit grafik kullanıcı arayüzü (GUI) uygulamaları Gerçek dünya problemleri ile senaryo çözümü Java ile yazılmış basit projelerin analiz edilmesi

Oracle Java Tutorial (https://docs.oracle.com/javase/tutorial/)



Yarıyıl (Yıl) İçi Etkinlikleri Adet Değer
Ara Sınav 4 100
Toplam 100
Yarıyıl (Yıl) Sonu Etkinlikleri Adet Değer
Final Sınavı 4 100
Toplam 100
Yarıyıl (Yıl) İçi Etkinlikleri 40
Yarıyıl (Yıl) Sonu Etkinlikleri 60


Etkinlikler Sayısı Süresi (saat) Toplam İş Yükü (saat)
Ara Sınav 1 1 1
Final Sınavı 1 1 1
Ara Sınav İçin Bireysel Çalışma 1 72 72
Final Sınavı içiin Bireysel Çalışma 1 76 76
Toplam İş Yükü (saat) 150

ÖÇ 1
ÖÇ 2
ÖÇ 3
ÖÇ 4
* Katkı Düzeyi : 1 Çok düşük 2 Düşük 3 Orta 4 Yüksek 5 Çok yüksek