Programlamaya Giriş (Java)
Değişkenler, operatörler, koşullar, döngüler, metotlar, diziler ve ilk sınıflar.
Kaynak kitap: Paul Deitel, Harvey Deitel, Java: How to Program, 9th Edition, 2011, Pearson, ISBN-10: 0132575663, Edition: 10th
- 1. haftaIntroduction
- Java programı nasıl derlenir ve çalışırKaynak koddan bytecode'a, JVM'den ekrana: javac/java zinciri, ilk programın anatomisi ve üç hata türü. Vizede boşluk doldurma ve kısa çıktı sorusu olarak gelir.
- 2. haftaIntroduction to Java Applications /Elementary Programming
- Değişkenler, primitive tipler ve printfDeğişken tanımlama, sekiz primitive tip, char aritmetiği, casting ve printf ile biçimli çıktı. Çıktı sorularında 7 ile 7.0 farkını buradan öğrenirsin.
- Scanner ile girdi, String temelleri, ++ ve +=Klavyeden sayı ve metin okumak, String metotları (length, charAt, substring, indexOf, equals) ve artırma/bileşik atama operatörleri. Yazma sorularının ilk satırları ve tracing'in en sinsi kısmı burada.
- Operatörler: /, % ve öncelikTam sayı bölmesi, kalan operatörü ve Java'nın işlem sırası. “What is printed?” sorularının yarısı buradan gelir.
- 3. haftaControl Statements: Part 1
- Karar yapıları: if/else, mantıksal operatörler, switchif, else if zinciri, iç içe if, &&, || ve ! ile kısa devre, switch ve fall-through. Vizede hem çıktı izleme hem de getSeason tipi metot yazma olarak gelir.
- 4. haftaControl Statements: Part 2
- Döngüler: while, for, do-while, break/continue, iç içe döngülerÜç döngü türü, tur sayma, break ve continue, basamak ayıklama ve yıldız desenleri. Vizenin en çok puan taşıyan konusu: iz tablosuyla çıktı bulma ve döngülü metot yazma.
- 5. haftaMethods
- Metotlar: parametre, return, scope, overloading, Math ve RandomMetot başlığı, parametre ve argüman, return ile void, pass-by-value, kapsam (scope), aşırı yükleme (overloading), Math sınıfı ve rastgele sayı aralıkları. Vizedeki 'write a method' sorularının temeli.
- 6. haftaArrays
- Diziler (arrays): tanımlama, gezinme, metotlara geçirmeTek boyutlu dizi oluşturma, varsayılan değerler, length, indeks hataları, enhanced for, toplam/max/ortalama ve dizinin metoda referans olarak gitmesi. Vize sonrası her sınavın temel taşı.
- 7. haftaArrays II
- Dizi algoritmaları ve ArrayListDoğrusal arama, sayma, yerinde ters çevirme, gerçek kopya ile takma ad farkı, kaydırma ve sıralı mı kontrolü; ardından boyutu değişen liste ArrayList ve metotları. Sınavda hem iz sürme hem kısa metot yazma olarak gelir.
- 8. haftaReview + Midterm
- Vize tekrar: 1-7. haftalarDerleme zincirinden ArrayList'e kadar bütün vize konularının tek tablo özeti, en çok puan kaybettiren tuzaklar, sınav taktiği ve karışık sınav tipi sorular.
- 9. haftaMultidimensional Arrays
- İki boyutlu diziler (2D arrays)Satır ve sütunlardan oluşan tablolar: oluşturma, m.length ile m[r].length, iç içe döngüyle gezinme, satır/sütun toplamı, köşegen, transpoze ve düzensiz (ragged) diziler. Finalde iz sürme ve metot yazma olarak gelir.
- 10. haftaIntroduction to Classes and Objects
- Sınıflar ve nesneler: alanlar, metotlar, get/setSınıf bir kalıp, nesne o kalıptan üretilen örnek. new ile nesne oluşturma, örnek değişkenleri, nokta operatörü, private alanlar ve get/set metotları, referans değişkenler ve null. Finalin en büyük konusu burada başlıyor.
- 11. haftaClasses and Objects II
- Kurucular (constructors), UML sınıf diyagramı, nesne dizileriNesneyi doğduğu anda hazırlayan kurucular, varsayılan kurucu kuralı, kurucu aşırı yükleme, UML sınıf diyagramını okuma ve çizme, nesneleri dizide ve ArrayList'te tutma. Final yazma sorularının iskeleti.
- 12. haftaClasses and Objects: A Deeper Look
- this, static üyeler, final sabitler ve toStringParametre alanı gölgelediğinde this, kurucuları birbirine bağlayan this(...), bütün nesnelerin paylaştığı static alanlar, değişmeyen final değerler ve nesneyi okunur yazdıran toString. Final sınavında 'what is printed' sorularının favorisi.
- 13. haftaClasses and Objects: A Deeper Look II
- Composition, enum ve referansların metoda geçişiBir sınıfın alanı olarak başka bir sınıfın nesnesi (has-a), sabit değer kümeleri için enum, ve nesne referanslarının metoda kopya olarak gitmesinin sonuçları: metot nesneyi değiştirebilir ama çağıranın değişkenini başka nesneye çeviremez.
- 14. haftaCase Study
- Vaka çalışması: adım adım not defteri (GradeBook)Dönemin bütün parçalarını tek programda birleştiriyoruz: Student sınıfı (dizi alanı, ortalama, harf notu), GradeBook sınıfı (ArrayList, en iyi öğrenci, geçen sayısı, arama), printf raporu ve yıldızlı histogram. Final yazma sorularının provası.