Java Dersleri
Bu sayfada, Java’yı, temellerinden başlayarak sunumlarda anlatacağım. Sunumlar ve örnek kodlarına bu sayfadan ulaşabilirsiniz.
Sunumlar, bölümler olarak yazıldıkça buraya konacaktır. İlgili örnek kodları ise hem buradaki sayfalarda yayınlayacağım hem de Eclipse projesi olarak burada paylaşacağım. Belki bu anlatımlar ileride bir kitaba dönüşür.
Sunumlar ve örnekler, Java SE’nin 7. sürümü üzerinden olacaktır. Java SE’ye 7. ve önceki sürümlerde katılan yeni özellikler yeri geldikçe ifade edilecektir. Ayrıca Java’yı öğrenmek için neleri bilmek gerektiğiyle ilgili buraya da bakabilirsiniz.
Sunumlardan da farkedeceğiniz gibi yaklaşımımda anlamak, “nasıl”lıkla beraber “neden”liği kavramak esastır. Hemen her konu ile ile ilgili, noktaya atış türünden ayrıntılı örnekleri de hazırlamaktayım. Bu kod örneklerinin hoşunuza gideceğini umuyorum. Ögrenmenizi daha sağlıklı ve daha zevkli hale getirmek için örneklerle oynayın, değişiklikler yapıp davranışını gözlemleyin. Programlama dilleri ancak ve ancak bol pratik yaparak öğrenilebilir.
Vurgulamaya çalışacağım bir diğer tarz ise programlamayı daha geniş, Yazılım Mühendisliği bakış açısıyla ele almak ve detayları öğrenirken her birini büyük resme, bir yazılım mimarı edasıyla yerleştirebilme becerisini vermek. Zira ülkemizde yazılan programlama kitaplarındaki en temel eksik, bir “süreç” anlayışına sahip olmamaları.
Java ile Nesne Merkezli Programlama
1 – Java’ya Giriş
Java nedir? sorusu cevaplanmaktadır. Java’nın en temel özellikleri, ortaya çıkışı ve kısa tarihi, farklı tipleri ve sürümleri, öğrenme yöntemi, Oracle’ın sertifika sınavları ve dilin günümüz yazılım dünyasındaki yeri anlatılmaktadır.
2 – Nesne Merkezli Programlamaya Giriş
Bu bölümde nesne merkezli teorinin, soyutlama, sınıf, nesne, vb. temel kavramları ele alınmaktadır. Bu bölüm felsefi bir tarza sahiptir.
3 – Java’nın Temelleri
Bu bölümde Java’nın temel yapıları ele alınıyor. Java kaynak kodunun yapısı, anahtar kelimeleri, veri tipleri, ifadeleri, cümleleri ve blokları ile kodlama standartları işlenmektedir.
4 – Operatörler
Java operatörleri ele alınacaktır.
5 – Akış Kontrolü
Java’da akışın kontrolünü belirleyen yapılar ele alınacak, karar verme, tekrarlama ve dallanma yapıları anlatılacaktır.
6 – Diziler
Java’da en basit torba yapısı olan diziler (array) anlatılmaktadır
7 – Java Nesneleri: Temeller
Java’da nesne merkezli programlamanın temelleri anlatılacaktır. Sınıf oluşturma ve sınıfın bileşenleri, değişkenler ve metotlar, kurucular, nesne üretme, başlama sırası konuları ile this ve static anahtar kelimeleri ele alınmaktadır. JVM’in bellek yapısıyla ilgili başlangıç seviye bilgileri de bu bölümle anlatılmaktadır.
8 – Java Nesneleri: Organizasyon
Java’da nesne merkezli programlamanın organizasyonel özellikleri anlatılacaktır. Paket ve import yapısı ve CLASSPATH, sarmalama (encapsulation) ve bilgi saklama (information hiding), erişim kontrol yapıları ve bellek organizasyonu bu bölümde ele alıancaktır.
9 – Tekrar Kullanım ve Kalıtım
Yazılımda tekrar kullanım (reusability) ve Java’daki has-a ile is-a yapıları yapısı ele alınacaktır. Saklama (hiding) ve üstüne yazma/ezme (overriding) mekanizmaları da bu bölümde ele alıancaktır.
10 – Çok Şekillilik
Çok şekillilik (polymorphism) ve çalışma-zamanı tip belirlemesi (run-time type identification) incelenecektir.
11 – Arayüzler
Arayüzler ve arayüz devralması incelenecektir.
12 – Java API’si ve Temel Sınıflar
Java’da sayı, string, tarih, takvim, konsola yazma, biçimlendirme, düzenli ifadeler gibi konular ele alınacaktır.
13 – Sıradışı Durumlar
Sıradışı durumlar (exceptions) ve assert anahtar kelimesi ele alıancaktır.
14 – Torbalar
Java’nın torba çerçevesi (collections framework) anlatılacaktır. Genelleyiciler (generics) de bu bölümde ele alıancaktır.
15 – Giriş ve Çıkış (GÇ)
Java’da GÇ (IO) mekanizmaları ele alınacaktır.
16 – Swing ile Grafik Arayüz Programlama
Swing ile grafik arayüzü geliştirme ve olay yakalama incelenecektir.
17 – Kanallar
Java’da çok kanallı (multi-threaded) programlama ele alınacaktır.
18 – Ağ Programlama
Java’da kapı (socket) yapıalrını kullanarak ağ (network) programlama ele alınacaktır.
19 – Java ile Nesne-Merkezli Yazılım Geliştirme
Yazılım geliştirme süreci ile Java’da iyi sınıflar nasıl tasarlanır ve yazılır, tasarım şablonları ve Java deyimleri, vb. konular ele alınacaktır.
Hiç yorum yok:
Yorum Gönder