Ara

19 Ocak 2015 Pazartesi

Java Dersleri


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, soyutlamasınıfnesne, 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  (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