Java SE 21: Programming II Eğitimi

  • Eğitim Tipi: Classroom
  • Süre: 5 Gün
  • Seviye: Intermediate

Oracle Resmi Müfredatına dayanan bu eğitim, Java dilini öğrenen geliştiriciler için ikinci seviye bir kurstur. Önceki "Java SE: Programming I" eğitiminin üzerine inşa edilen bu kursta, nesne yönelimli programlama (OOP), modüler yapı, güvenli kodlama, veritabanı bağlantısı, Lambda kullanımı ve çok iş parçacıklı (multithreaded) uygulama geliştirme gibi konulara odaklanılır.

Eğitim boyunca Java'nın güncel versiyonu olan Java SE 21 kullanılır.

Bu eğitimi kendi kurumunuzda planlayabilirsiniz.

Önkoşullar

Java SE 21: Programming I eğitiminin tamamlanmış olması veya eşdeğer bilgi birikimi

Kimler Katılmalı

  • Java geliştiricileri

  • Veri Bilimcil

    • Java geliştiricileri

    • Veri Bilimciler (Data Scientist)

    • Java tabanlı sistemlerde çalışan uygulama geliştiricileri

    • Yeni nesil Java teknolojileriyle uygulama geliştirmek isteyen tüm yazılım uzmanları

  • er (Data Scientist)


  • Java tabanlı sistemlerde çalışan uygulama geliştiricileri

  • Yeni nesil Java teknolojileriyle uygulama geliştirmek isteyen tüm yazılım uzmanları

Neler Öğreneceksiniz

  • Kapsülleme, kalıtım ve çok biçimlilik (polymorphism) gibi nesne yönelimli özellikleri içeren uygulamalar geliştirebilir,

  • Komut satırından Java uygulamaları çalıştırabilir,

  • Java Collections Framework yapısını etkili bir şekilde kullanabilir,

  • Lambda ifadeleriyle koleksiyonları filtreleyebilir ve işleyebilir,

  • Exception handling ile hataları etkili bir şekilde yönetebilir,

  • Dosya ve veri işlemleri için G/Ç (I/O) fonksiyonlarını uygulayabilir,

  • JDK NIO.2 API'sini kullanarak dosya sistemlerini yönetebilir,

  • JDBC ve JPA teknolojilerini kullanarak veritabanı işlemleri gerçekleştirebilir (CRUD: Create, Read, Update, Delete),

  • Lambda ile paralel işlem ve concurrency mekanizmalarını uygulayabilir,

  • Modüler programlama tekniklerini kullanarak sürdürülebilir yazılım tasarlayabilir,

  • Performanslı ve çok iş parçacıklı uygulamalar geliştirebilir.

Outline

🔹 1. Fonksiyonel Programlama

  • Lambda Expressions ve Functional Interface kavramları

  • Java’nın hazır fonksiyonel arayüzleri (Predicate, Consumer, Function vs.)

  • Koleksiyonlar üzerinde stream(), filter(), map() işlemleri

  • Stream API ile temiz, okunabilir ve kısa kod yazımı

🔹 2. Modüler Programlama

  • Java 9 ile gelen modüler sistemin (JPMS) temelleri

  • module-info.java dosyasının kullanımı

  • Uygulamalarda modül ve servis tanımı

  • Legacy projelerin modüler yapıya taşınması (Migration)

🔹 3. Stream ve Paralel Stream İşlemleri

  • Parallel Stream kavramı

  • Performans artışı için stream’leri paralel hale getirme

  • Collectors API’si ile terminal işlemleri

  • Özel (custom) stream yapılandırmaları

🔹 4. Concurrency (Eşzamanlılık)

  • Çok iş parçacıklı uygulamalar (Multithreading)

  • ExecutorService, Callable, Runnable kullanımı

  • Thread senkronizasyonu ve yarış durumu (race condition) yönetimi

🔹 5. Java API ve Güvenli Kodlama

  • Giriş/Çıkış (I/O) temelleri: InputStream, OutputStream, Reader, Writer

  • NIO.2 ile modern dosya yönetimi (Path, Files, DirectoryStream)

  • Güvenli kod yazım teknikleri ve açıkların önlenmesi

🔹 6. Veritabanı Uygulamaları (JDBC & JPA)

  • JDBC API ile temel bağlantı ve sorgu işlemleri

  • PreparedStatement ve SQL Injection koruması

  • ORM mantığı ve JPA kullanımı

  • CRUD operasyonları uygulamalı örneklerle

🔹 7. Localization (Yerelleştirme)

  • Locale, ResourceBundle, DateFormat, NumberFormat kullanımı

  • Çok dilli uygulama desteği sağlama

🔹 8. Koleksiyonlar ve Generics

  • Java Collections Framework: List, Set, Map, Queue

  • Iterator ve Iterable arayüzleri

  • Generics ile tür güvenliği sağlama

  • Wrapper sınıflar (Integer, Double, Boolean vs.)

🔹 9. Exception Handling ve Assertions

  • Checked ve unchecked exception ayrımı

  • Özel exception sınıfları oluşturma

  • try, catch, finally, throw, throws kullanımı

  • assert ifadesi ile koşul kontrolü

🔹 1. Fonksiyonel Programlama

  • Lambda Expressions ve Functional Interface kavramları

  • Java’nın hazır fonksiyonel arayüzleri (PredicateConsumerFunction vs.)

  • Koleksiyonlar üzerinde stream()filter()map() işlemleri

  • Stream API ile temiz, okunabilir ve kısa kod yazımı

🔹 2. Modüler Programlama

  • Java 9 ile gelen modüler sistemin (JPMS) temelleri

  • module-info.java dosyasının kullanımı

  • Uygulamalarda modül ve servis tanımı

  • Legacy projelerin modüler yapıya taşınması (Migration)

🔹 3. Stream ve Paralel Stream İşlemleri

  • Parallel Stream kavramı

  • Performans artışı için stream’leri paralel hale getirme

  • Collectors API’si ile terminal işlemleri

  • Özel (custom) stream yapılandırmaları

🔹 4. Concurrency (Eşzamanlılık)

  • Çok iş parçacıklı uygulamalar (Multithreading)

  • ExecutorServiceCallableRunnable kullanımı

  • Thread senkronizasyonu ve yarış durumu (race condition) yönetimi

🔹 5. Java API ve Güvenli Kodlama

  • Giriş/Çıkış (I/O) temelleri: InputStreamOutputStreamReaderWriter

  • NIO.2 ile modern dosya yönetimi (PathFilesDirectoryStream)

  • Güvenli kod yazım teknikleri ve açıkların önlenmesi

🔹 6. Veritabanı Uygulamaları (JDBC & JPA)

  • JDBC API ile temel bağlantı ve sorgu işlemleri

  • PreparedStatement ve SQL Injection koruması

  • ORM mantığı ve JPA kullanımı

  • CRUD operasyonları uygulamalı örneklerle

🔹 7. Localization (Yerelleştirme)

  • LocaleResourceBundleDateFormatNumberFormat kullanımı

  • Çok dilli uygulama desteği sağlama

🔹 8. Koleksiyonlar ve Generics

  • Java Collections Framework: ListSetMapQueue

  • Iterator ve Iterable arayüzleri

  • Generics ile tür güvenliği sağlama

  • Wrapper sınıflar (IntegerDoubleBoolean vs.)

🔹 9. Exception Handling ve Assertions

  • Checked ve unchecked exception ayrımı

  • Özel exception sınıfları oluşturma

  • trycatchfinallythrowthrows kullanımı

  • assert ifadesi ile koşul kontrolü



Eğitimlerle ilgili bilgi almak ve diğer tüm sorularınız için bize ulaşın!

Eğitim Tarihleri

Sınıf eğitimlerimizi İstanbul, Ankara ve Londra ofislerimizde düzenlemekteyiz. Kurumunuza özel eğitimleri ise, dilediğiniz tarih ve lokasyonda organize edebiliriz.

08 Haziran 2025 (5 Gün)
İstanbul, Ankara, Londra
Classroom / Virtual Classroom
23 Haziran 2025 (5 Gün)
İstanbul, Ankara, Londra
Classroom / Virtual Classroom
09 Temmuz 2025 (5 Gün)
İstanbul, Ankara, Londra
Classroom / Virtual Classroom
22 Temmuz 2025 (5 Gün)
İstanbul, Ankara, Londra
Classroom / Virtual Classroom
28 Temmuz 2025 (5 Gün)
İstanbul, Ankara, Londra
Classroom / Virtual Classroom
05 Ağustos 2025 (5 Gün)
İstanbul, Ankara, Londra
Classroom / Virtual Classroom
10 Eylül 2025 (5 Gün)
İstanbul, Ankara, Londra
Classroom / Virtual Classroom
13 Eylül 2025 (5 Gün)
İstanbul, Ankara, Londra
Classroom / Virtual Classroom
Java SE 21: Programming II Eğitimi ile ilgili sıkça sorulan sorular

Java nedir?

Java, 1995 yılında Sun Microsystems tarafından geliştirilen, nesne yönelimli ve platformdan bağımsız bir programlama dilidir. "Bir kez yaz, her yerde çalıştır" (Write Once, Run Anywhere) felsefesiyle tanınır.


Java ne için kullanılır?

Java;

  • Web uygulamaları
  • Android mobil uygulamaları
  • Kurumsal yazılımlar
  • Oyunlar
  • Masaüstü uygulamaları
  • gibi birçok alanda yaygın şekilde kullanılır. Özellikle büyük şirketlerin sistemleri Java ile yazılmıştır.

Java öğrenmek zor mu?

Java sözdizimi oldukça açık ve düzenlidir. Başlangıçta kavramlar (sınıflar, nesneler, miras vb.) zorlayıcı olabilir, ancak düzenli çalışmayla rahatça öğrenilebilir. Java, birçok eğitim kaynağına ve büyük topluluğa sahip olduğu için destek bulmak kolaydır.


Java ile ne kadar sürede iş bulabilirim?

Temel seviyede Java bilgisiyle iş bulmak zor olabilir. Ancak backend development (özellikle Spring Framework), Android geliştirme gibi alanlarda uzmanlaşırsanız 3–6 ay içinde staj veya giriş seviyesinde iş bulabilirsiniz.


Java’nın en popüler framework’leri nelerdir?

  1. Spring / Spring Boot – Kurumsal uygulamalar için
  2. Hibernate – ORM (veri tabanı işlemleri) için
  3. JavaFX / Swing – Masaüstü uygulamaları için
  4. JUnit – Test otomasyonu için

Java mı Python mu?

Bu tamamen hedefe bağlı:

  • Python: Daha sade, veri bilimi ve yapay zeka için uygun.
  • Java: Daha güçlü tip sistemi, büyük sistemlerde ve kurumsal uygulamalarda tercih edilir.
  • Eğer sağlam bir yazılım temeli istiyorsan, Java mükemmel bir tercihtir.

Java ile mobil uygulama geliştirilebilir mi?

Evet. Özellikle Android uygulamaları geliştirmek için Java uzun süre ana dil olarak kullanıldı. Şimdi Kotlin öne çıksa da Java hâlâ destekleniyor.


Java’nın günümüzdeki yeri nedir?

Java hâlâ Fortune 500 şirketlerinin çoğu tarafından aktif olarak kullanılıyor. Bankacılık, sigorta, telekomünikasyon gibi sektörlerde Java yazılımları kritik rol oynamaktadır. Ayrıca Java SE 21 gibi güncellenen sürümlerle modern kalmayı sürdürüyor.


Java’da hangi IDE’ler kullanılır?

En popüler Java geliştirme ortamları:

  • IntelliJ IDEA 🧠 – En gelişmiş ve profesyonel ortam
  • Eclipse ☀️ – Açık kaynak, güçlü ama biraz karmaşık
  • NetBeans 💡 – Başlangıç için uygun ve kullanımı kolay

Java geliştiricisi olmak için hangi konular öğrenilmeli?

Başlangıç için:

  • Değişkenler, kontrol yapıları, diziler
  • Nesne yönelimli programlama (OOP)
  • Koleksiyonlar, exception handling
  • Dosya işlemleri ve JDBC
  • Sonrasında:
  • Spring Framework, REST API, Unit Test
  • Maven/Gradle, Git, GitHub
  • Temel veri yapıları ve algoritmalar
Sitemizi kullanarak çerezlere (cookie) izin vermektesiniz. Detaylı bilgi için Çerez Politika'mızı inceleyebilirsiniz.