Bilgisayar Programcılığı | |||||
Önlisans | TYYÇ: 5. Düzey | QF-EHEA: Kısa Düzey | EQF-LLL: 5. Düzey |
Ders Kodu: | MYO054 | ||||
Ders İsmi: | Java Programlama | ||||
Ders Yarıyılı: | Güz | ||||
Ders Kredileri: |
|
||||
Öğretim Dili: | Turkish | ||||
Ders Koşulu: | |||||
Ders İş Deneyimini Gerektiriyor mu?: | Hayır | ||||
Dersin Türü: | Bölüm/Program Seçmeli | ||||
Dersin Seviyesi: |
|
||||
Dersin Veriliş Şekli: | Yüz yüze | ||||
Dersin Koordinatörü: | Öğr. Gör. AHMET SELİM ÖVER | ||||
Dersi Veren(ler): | Öğr. Gör. Hüseyin Gökal | ||||
Dersin Yardımcıları: |
Dersin Amacı: | Programlamada tecrübesi olan ya da olmayan öğrencilere yönelik bu derste nesne tabanlı yapıya sahip Java programlama diline giriş yapılmaktadır. Bu amaç doğrultusunda öğrenciler Java dilini kullanarak temel proglamlama becerilerini edinerek, Sun Microsystems, Inc. Java platformunda Eclipse, Netbeans gibi başka tümleşik geliştirme ortamlarında (IDE) derleyip çalıştırabileceklerdir. |
Dersin İçeriği: | Dersin içeriği temel programlama için gerekli ilkel ve referans tipler, atamalar, aritmetik ve mantıksal operatörler, kontrol ifadeleri (if/else, switch/case kontrolleri ve döngüler), metod ve nesneler, UML diyagramları, set/get metodları, yapıcılar, tek ve çok boyutlu diziler ve Arraylist'ler başlıklarından oluşmaktadır. Final sınavına girebilmek için en az 4 derse katılım şartı aranmaktadır. |
Bu dersi başarıyla tamamlayabilen öğrenciler;
1) Java programlama dilindeki temel kavramları ve kategorileri anlayarak, uygulama geliştirme süreçlerini yönetir. 2) Yazılım sorunlarını çözmek amacıyla Java programları tasarlar, bu programları test eder ve başarıyla çalıştırır. 3) Temel veri tipleri arasında int, char, double, String gibi değişkenleri başarılı bir şekilde tanımlar ve kullanır. 4) Aritmetik, ilişkisel ve mantıksal ifadeleri etkili bir şekilde kullanır; tip dönüşümlerini, atama ifadelerini, seçme ve yineleme ifadelerini, koşullu dallanmaları anlar ve uygular. 5) Metodları etkili bir biçimde kullanır, gerekli durumlarda parametrelerle girdi alır ve çıktı üretir; public/private ve static/static olmayan metodları başarıyla oluşturur ve çağırır. 6) Java programlarında for, while, do-while gibi yineleme yapılarını kullanarak döngüler oluşturur ve yönetir. 7) Dizi ve ArrayList yapılarıyla çalışarak Java dilinde çeşitli veri yapıları kullanır ve işler. 8) Math sınıfına ait random metodu veya Random sınıfına ait nextInt metodu ile rastgele sayılar üretebilme yeteneğine sahiptir. 9) Hazırladığı sınıfları kullanarak nesneleri başarıyla oluşturur ve bu sınıfları metodlar içinde girdi veya çıktı olarak tanımlar; ayrıca, diziler ve ArrayList yapıları içinde veriyi etkili bir şekilde saklar. |
Hafta | Konu | Ön Hazırlık |
1) | Dersin amacı ve içeriği, Java'nın tarihçesi, JDK ve IDE kurulumu | Yok |
2) | Değişkenler, doğru tipler ve operatörler | Yok |
3) | Koşul Durumlar (If-else, switch-case) | Yok |
4) | Döngüler: for, while, do-while, Break ve continue kullanımı, Koşullu operatörler | Yok |
5) | Metod tanımlama ve çağırma, Parametreler ve geri dönüş değerleri | Yok |
6) | Metodlarda aşırı yüklenme, Yerel ve global değişkenler | Yok |
7) | Dizilerin tanımlanması ve kullanımı, Dizi elemanlarına erişim, Dizi metodları, Çok boyutlu diziler | Yok |
8) | Ara Sınav | 1,2,3,4,5,6,7 |
9) | Sınıf ve nesne kavramları, Miras, çok biçimlilik, soyut sınıflar, Kapsülleme ve veri gizleme, Arabirimler | Yok |
10) | try-catch blokları, İstisna sınıfları, throw ve throws anahtar kelimeleri, Özel istisna durumları | Yok |
11) | Dosya okuma ve yazma işlemleri, Karakter ve byte akışları | Yok |
12) | Nesnelerin serileştirilmesi, Java'nın standart giriş/çıkış sınıfları | Yok |
13) | Basit tabanlı uygulama geliştirme | Yok |
14) | Dersin genel gözden geçirilmesi, proje çözümleme | Yok |
15) | Final | 9,10,11,12,13,14 |
Ders Notları / Kitaplar: | YENİ BAŞLAYANLAR İÇİN JAVA - Mehmet Kirazlı |
Diğer Kaynaklar: | https://www.btkakademi.gov.tr/portal/course/java-ile-programlamaya-giris-9617 |
Course Learning Outcomes | 1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Program Kazanımları | |||||||||||||
1) Problem çözme ve analitik düşünme yeteneklerini kazanır. | |||||||||||||
2) Bilgisayar programlama, donanım ve yazılım temellerini, temel bilgisayar kavramlarını öğrenir. | |||||||||||||
3) Problemlere göre algoritmalar geliştirir, temel algoritmalardan problemine uygun olanları ayırt etme becerisi kazanır. | |||||||||||||
4) Nesneye yönelik programlama konseptini ve web programlamayı kavrar. | |||||||||||||
5) Sayı tabanı sistemleri, temel elektronik ve bilgisayar donanımı bilgisini öğrenir. | |||||||||||||
6) Mobil programlama becerisi edinir, mobil platformlar için uygulamalar geliştirir. | |||||||||||||
7) Veritabanı tasarım ve kodlamasını yapar. | |||||||||||||
8) Bilgisayar ağları, açık kaynak kodlu işletim sistemleri programlamayı ve kullanmayı öğrenir. | |||||||||||||
9) İngilizce dilini etkin bir biçimde kullanır. | |||||||||||||
10) Programlamanın ihtiyaçlarına göre uygun veri yapıları kullanmayı öğrenir. | |||||||||||||
11) Bireysel ya da takım olarak yazılım geliştirir. | |||||||||||||
12) Alanındaki gelişmeleri, son teknoloji araçlarını/uygulamalarını takip eder. | |||||||||||||
13) Mesleki ve etik sorumluluk bilinci kazanır, meslek etiği farkındalığına sahiptir. |
Etkisi Yok | 1 En Düşük | 2 Orta | 3 En Yüksek |
Dersin Program Kazanımlarına Etkisi | Katkı Payı | |
1) | Problem çözme ve analitik düşünme yeteneklerini kazanır. | 3 |
2) | Bilgisayar programlama, donanım ve yazılım temellerini, temel bilgisayar kavramlarını öğrenir. | 3 |
3) | Problemlere göre algoritmalar geliştirir, temel algoritmalardan problemine uygun olanları ayırt etme becerisi kazanır. | 3 |
4) | Nesneye yönelik programlama konseptini ve web programlamayı kavrar. | 3 |
5) | Sayı tabanı sistemleri, temel elektronik ve bilgisayar donanımı bilgisini öğrenir. | 3 |
6) | Mobil programlama becerisi edinir, mobil platformlar için uygulamalar geliştirir. | 3 |
7) | Veritabanı tasarım ve kodlamasını yapar. | 3 |
8) | Bilgisayar ağları, açık kaynak kodlu işletim sistemleri programlamayı ve kullanmayı öğrenir. | 3 |
9) | İngilizce dilini etkin bir biçimde kullanır. | 3 |
10) | Programlamanın ihtiyaçlarına göre uygun veri yapıları kullanmayı öğrenir. | 3 |
11) | Bireysel ya da takım olarak yazılım geliştirir. | 3 |
12) | Alanındaki gelişmeleri, son teknoloji araçlarını/uygulamalarını takip eder. | 3 |
13) | Mesleki ve etik sorumluluk bilinci kazanır, meslek etiği farkındalığına sahiptir. | 3 |
Yarıyıl İçi Çalışmaları | Aktivite Sayısı | Katkı Payı |
Ara Sınavlar | 1 | % 40 |
Final | 1 | % 60 |
Toplam | % 100 | |
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI | % 40 | |
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI | % 60 | |
Toplam | % 100 |
Aktiviteler | Aktivite Sayısı | Aktiviteye Hazırlık | Aktivitede Harçanan Süre | Aktivite Gereksinimi İçin Süre | İş Yükü | ||
Ders Saati | 2 | 5 | 10 | ||||
Ara Sınavlar | 1 | 35 | 1 | 36 | |||
Final | 1 | 40 | 1 | 41 | |||
Toplam İş Yükü | 87 |