JAVA TEMEL EĞİTİMİ
Java 1995'te James Gosling tarafından geliştirildi ve "bir kez yaz, her yerde çalıştır" (write once, run anywhere) prensibiyle programlama dünyasını değiştirdi. Bugün dünya bankacılık sistemlerinin büyük kısmı, Android uygulamalarının çoğu, kurumsal Türkiye'nin yazılım altyapısı Java üzerinde çalışır. Kurumsal yazılımcı olmak için Java tartışmasız temel araçlardandır.
Java Temel Eğitimi, Java diline güçlü bir başlangıç sağlar. JVM ve Java ekosistemi, sözdizimi, veri türleri, kontrol yapıları, diziler, nesne tabanlı programlama (sınıf, nesne, kapsülleme, kalıtım, polimorfizm), arayüz ve soyut sınıflar, paket yapısı, exception handling (try-catch-finally), koleksiyon (Collection) framework — ArrayList, HashMap, dosya işlemleri ve temel iş parçacığı (thread) işlenir.
Java Temel Eğitimi, yazılıma yeni başlayanlar, kurumsal yazılım sektörüne girmek isteyenler, üniversite öğrencileri, kariyer değişikliği yapanlar ve Android uygulama geliştirmeye temel atmak isteyenler için tasarlanmıştır. Eğitim sonunda katılımcı, ileri Java eğitimine veya frameworklere geçecek seviyededir.
Ön Koşullar
Java Temel Eğitimi için ön koşul yoktur. Temel programlama mantığına aşinalık avantajdır; zorunluluk değildir.
Kimler Katılmalı
- Yazılıma Yeni Başlayanlar: Sıfırdan Java öğrenmek isteyen profesyoneller
- Kurumsal Yazılım Sektörüne Girmek İsteyenler: Banka, sigorta, telekom yolunda olanlar
- Üniversite Öğrencileri: Bilgisayar mühendisliği müfredatını destekleyenler
- Kariyer Değişikliği Yapanlar: Yazılıma geçişte Java'yı seçenler
- Android Geliştiriciliğe Hazırlananlar: Mobile için Java temeli arayanlar
- Diğer Dilden Java'ya Geçenler: Profesyonel dönüşüm yapan kadrolar
- Stajyer Yazılım Geliştiriciler: Kurumsal Java ekiplerine katılan adaylar
Eğitim Yöntemi
Sunum, IntelliJ veya Eclipse üzerinde adım adım uygulama, OOP atölyesi, koleksiyon framework egzersizi ve katılımcının kendi mini Java uygulamasını yazma pratiği ile yürür.
Kazanımlar
- JVM ve Java Ekosistemi: Bytecode ve write-once-run-anywhere felsefesi
- Sözdizimi ve Veri Türleri: Java'nın temel yapı taşları
- OOP Prensipleri: Sınıf, nesne, kapsülleme, kalıtım, polimorfizm
- Arayüz ve Soyut Sınıflar: Sözleşme bazlı tasarım
- Exception Handling: try-catch-finally ve checked-unchecked istisnalar
- Collection Framework: ArrayList, HashMap, HashSet kullanımı
- Dosya İşlemleri ve Thread: I/O ve temel iş parçacığı
Eğitim Süresi
4 Gün (32 Saat). Kurumsal talebe göre 3 günlük yoğun veya 5 günlük uygulamalı versiyon olarak planlanabilir.
Java Temel Eğitimi İçeriği
1. Java Dünyası ve Felsefesi
- JVM, JRE ve JDK kavramları
- Java sürümleri ve LTS süreci
- Bytecode ve platform bağımsızlık
- Java'nın endüstrideki konumu
2. Geliştirme Ortamı Kurulumu
- JDK kurulumu ve sürüm yönetimi
- IntelliJ IDEA ve Eclipse IDE
- İlk projenizi oluşturma
- Maven veya Gradle build aracı
- Hello World derleme ve çalıştırma
3. Sözdizimi ve Veri Türleri
- Primitif ve referans tipler
- int, long, double, char, boolean
- String tipi ve String pool
- Auto-boxing ve wrapper sınıflar
4. Operatörler ve İfadeler
- Aritmetik, mantıksal ve karşılaştırma
- Bit operatörleri
- Operatör önceliği ve gruplandırma
- Tip dönüşümleri (cast)
5. Kontrol Yapıları ve Döngüler
- if-else ve switch (enhanced switch)
- for, while, do-while
- Enhanced for-each loop
- break, continue ve label kullanımı
- Pattern matching ile modern switch
6. Diziler ve String İşlemleri
- Tek ve çok boyutlu diziler
- Arrays sınıfı yardımcı metotları
- String, StringBuilder, StringBuffer
- String formatlama ve text blocks
7. Metotlar ve Parametre Geçişi
- Metot imzası ve aşırı yükleme
- Pass-by-value mantığı
- Varargs (değişken parametre)
- Static metotlar ve util sınıfları
8. Nesne Tabanlı Programlama Temelleri
- Sınıf ve nesne ilişkisi
- Constructor ve this referansı
- Üye değişkenler ve metotlar
- Erişim belirleyicileri (private, public, protected)
- Encapsulation prensibi uygulama
9. Kalıtım (Inheritance)
- extends ile sınıf kalıtımı
- super anahtar kelimesi
- Method overriding
- final sınıf ve metotlar
- Object sınıfı ve evrensel metotlar
10. Polimorfizm
- Dinamik bağlama mantığı
- Upcasting ve downcasting
- instanceof operatörü ve pattern matching
- Polimorfizmin avantajları
11. Soyut Sınıflar ve Arayüzler
- abstract sınıf ve metot
- Interface ve implements
- Default ve static interface metotları
- Sealed sınıflar (Java 17+)
- Interface vs abstract class karar verme
12. Paketler ve Erişim Yönetimi
- package ve import yapısı
- Modül sistemi (Java 9+)
- Görünürlük kuralları
- JAR dosyası ve dağıtım
13. Exception Handling
- Checked ve unchecked exception ayrımı
- try-catch-finally yapısı
- try-with-resources kullanımı
- Throws ve throw keyword'leri
- Custom exception oluşturma
14. Collection Framework Temelleri
- List, Set, Map hiyerarşisi
- ArrayList ve LinkedList
- HashSet, TreeSet
- HashMap, TreeMap, LinkedHashMap
- Iterator ve foreach
15. Generics
- Generic sınıf ve metot
- Wildcard (? extends, ? super)
- Type erasure mantığı
- Type-safe koleksiyon kullanımı
16. Lambda ve Functional Interface
- Lambda expression sözdizimi
- Functional interface tanımı
- Method reference (::)
- Built-in functional arayüzler (Function, Predicate)
17. Stream API Temelleri
- Stream oluşturma ve dönüşüm
- filter, map, reduce işlemleri
- Terminal ve intermediate operasyonlar
- Collectors ile sonuç toplama
18. Dosya İşlemleri ve I/O
- File ve Path API
- BufferedReader ile dosya okuma
- FileWriter ile dosya yazma
- NIO ve Files yardımcı sınıfı
- Serialization temelleri
19. Çoklu İş Parçacığı (Thread)
- Thread ve Runnable arayüzü
- Senkronizasyon (synchronized)
- ExecutorService ve thread pool
- Concurrent collection kullanımı
- Thread safety prensipleri
20. Best Practice ve Mini Proje
- Kod stili ve isimlendirme
- Unit test ile JUnit temelleri
- Logging ve hata yönetimi
- Sıfırdan mini Java uygulaması
- İleri Java'ya geçiş için yol haritası





