ADVANCED FEATURES IN JAVA: WORKING WITH MAPS IN JAVA EĞİTİMİ

Java Map yapılarını derinlemesine öğren

HashMap iç yapısı, computeIfAbsent, merge, TreeMap, LinkedHashMap LRU ve ConcurrentHashMap kullanımını uygulayın.

Java Map ile Çalışmak eğitimi 2 günlük uygulamalı programda map temelleri, hashmap i̇ç yapısı, anahtar tasarımı, sıralı map'ler gibi konuları kapsar. HashMap, LinkedHashMap, TreeMap ve EnumMap arasında gerekçeli seçim yapabilirsiniz.

2 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Map uygulamaları, HashMap iç yapısı, modern metotlar ve eşzamanlılık

Bu eğitim, java.util.Map arayüzünün tüm günlük kullanım alanlarını işler. HashMap'in bucket, hashCode ve çakışma yönetimi (bağlı liste ve ağaçlaşma), load factor ve yeniden boyutlandırma; LinkedHashMap ile ekleme/erişim sırası ve LRU önbellek; TreeMap ile sıralı anahtarlar ve NavigableMap sorguları; EnumMap ve IdentityHashMap ele alınır. getOrDefault, putIfAbsent, compute, computeIfAbsent, merge, entrySet gezinmesi, Map.of ve Map.entry, null politikaları ile ConcurrentHashMap ve atomik güncellemeler uygulamalı işlenir.

Süre ve Format

2 Gün. Her gün dört modül; katılımcılar map uygulamaları ve hashmap konusundan başlayıp modern metotlar ve eşzamanlılık konusuyla tamamlar.

Seviye

Orta Seviye — Map arayüzü, HashMap, LinkedHashMap, TreeMap, ConcurrentHashMap ve modern Map metotları.

Öğrenme Metodu

Kelime sayacı, önbellek ve gruplama gibi küçük uygulamalarla her Map türü denenir; hashCode hataları bilinçli olarak üretilip çözülür.

Neden Bu Eğitim?

🗺️Map Seçimi

HashMap, TreeMap, LinkedHashMap ve EnumMap'i ihtiyaca göre seçersiniz.

🧮Modern Metotlar

merge ve computeIfAbsent ile döngüsüz, kısa kod yazarsınız.

🔐Eşzamanlılık

ConcurrentHashMap ile thread-safe sayaç ve önbellek kurarsınız.

Anahtar Konular

java mapjava hashmaphashmap iç yapısıjava treemaplinkedhashmap lruconcurrenthashmapjava computeifabsentjava merge mapjava map örneklerihashcode equals
“Anahtar iyi seçilirse, Map aradığınızı hemen bulur.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Java Sözdizimi

Değişken, döngü, metot ve sınıf tanımlayabilecek düzeyde temel Java bilgisi beklenir.

2
Nesne Yönelimli Bilgi

Sınıf, kalıtım, arayüz ve polimorfizm kavramlarına aşinalık faydalıdır.

3
Geliştirme Ortamı

JDK 17 veya üzeri ile IntelliJ IDEA ya da Eclipse kurulu bir bilgisayar gerekir.

4
Komut Satırı

javac, java ve Maven/Gradle ile derleme-çalıştırma adımlarını izleyebilmek yararlıdır.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı, HashMap iç çalışmasını açıklar ve doğru Map türünü seçer.
Modül 1
Map Temelleri
  • Anahtar-değer eşleme ve tekil anahtar kuralı
  • put, get, remove, containsKey, containsValue
  • null anahtar ve değer politikaları
  • keySet, values ve entrySet görünümleri
  • Map.of, Map.ofEntries ve Map.entry
  • Map.copyOf ve değişmez map
Modül 2
HashMap İç Yapısı
  • hashCode'dan bucket indeksi hesaplama
  • Çakışma (collision) ve bağlı liste zinciri
  • Java 8 ağaçlaşma (treeify) eşiği
  • Load factor (0.75) ve rehash
  • Başlangıç kapasitesi seçimi ve performans etkisi
  • Kötü hashCode ile O(n)'e düşme deneyi
Modül 3
Anahtar Tasarımı
  • equals ve hashCode sözleşmesi
  • Değiştirilebilir anahtarın Map'te kaybolması
  • String, Integer ve record anahtar kullanımı
  • Bileşik anahtar (composite key) tasarımı
  • Objects.hash ve karma değer kalitesi
  • IdentityHashMap ve referans eşitliği
Modül 4
Sıralı Map'ler
  • LinkedHashMap ekleme sırası ve erişim sırası
  • removeEldestEntry ile LRU önbellek
  • TreeMap ve kırmızı-siyah ağaç sıralama
  • firstKey, floorKey, ceilingKey, headMap, tailMap
  • Comparator ile özel anahtar sıralaması
  • EnumMap ve enum anahtarlı Map
Günün hedefiKatılımcı, Java 8+ Map metotlarıyla kısa kod yazar ve eşzamanlı Map kullanır.
Modül 1
Modern Map Metotları
  • getOrDefault ve putIfAbsent
  • computeIfAbsent ile çoklu değer Map'i (Map<K, List<V>>)
  • computeIfPresent ve compute
  • merge ile kelime ve toplam sayacı
  • replaceAll ve forEach(BiConsumer)
  • Atomik olmayan check-then-act hatası
Modül 2
Gezinme ve Dönüşüm
  • entrySet üzerinde dolaşma ve Map.Entry
  • Dolaşırken silme: entrySet().removeIf
  • Map'i değere göre sıralama (Stream + Entry.comparingByValue)
  • Collectors.toMap ve groupingBy ile Map üretme
  • Map'ten Map'e dönüşüm: anahtar/değer eşleme
  • Ters çevrilmiş Map (inverse) oluşturma
Modül 3
Eşzamanlı Map'ler
  • HashMap'in çok iş parçacığında sorunları
  • Hashtable ve synchronizedMap sınırlamaları
  • ConcurrentHashMap segment ve CAS mantığı
  • Atomik compute/merge ile sayaç
  • ConcurrentSkipListMap sıralı eşzamanlı Map
  • LongAdder ile yüksek yazma yüklü sayaç
Modül 4
Uygulama ve Performans
  • Önbellek (cache) uygulaması ve TTL fikri
  • Kelime frekansı analizi dosyadan
  • Telefon rehberi ve ters indeks (inverted index)
  • Map türleri için JMH benchmark
  • Bellek tüketimi karşılaştırması
  • Map seçimi karar tablosu ve kod gözden geçirme

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Doğru Map

HashMap, LinkedHashMap, TreeMap ve EnumMap arasında gerekçeli seçim yapabilirsiniz.

🧠
Hash Mekanizması

HashMap'in bucket, çakışma ve rehash sürecini açıklayabilirsiniz.

⚙️
Anahtar Tasarımı

Doğru equals/hashCode ile güvenli Map anahtarları yazabilirsiniz.

🔍
Modern API

computeIfAbsent ve merge ile kısa ve doğru Map kodu yazabilirsiniz.

🛠️
LRU Önbellek

LinkedHashMap ile LRU önbellek oluşturabilirsiniz.

📈
Sıralı Sorgu

TreeMap ile aralık ve en yakın anahtar sorgularını çözebilirsiniz.

🧩
Eşzamanlı Kullanım

ConcurrentHashMap ile thread-safe sayaç ve önbellek yazabilirsiniz.

🚀
Dönüşüm Becerisi

Map'leri Stream ile sıralayıp gruplayıp dönüştürebilirsiniz.

Kimler İçin Uygundur?

  • Java Collections temellerini bilen
  • Map yapılarını verimli
  • doğru kullanmak isteyen geliştiriciler için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Java Collections temellerini bilen, Map yapılarını verimli ve doğru kullanmak isteyen geliştiriciler için uygundur.
HashMap ve ConcurrentHashMap farkı nasıl öğretilir?
Aynı sayaç kodu çok iş parçacığıyla her iki Map'te çalıştırılır; HashMap'te kayıp güncellemeler, ConcurrentHashMap'te merge ile doğru sonuç gözlenir.
LRU önbellek yazılacak mı?
Evet. LinkedHashMap'in erişim sırası modu ve removeEldestEntry metodu ile kapasiteli LRU önbellek yazılıp JUnit ile test edilir.
Eğitim için hangi ön bilgi ve ortam gerekir?
Değişken, döngü, metot ve sınıf tanımlayabilecek düzeyde temel Java bilgisi beklenir. Sınıf, kalıtım, arayüz ve polimorfizm kavramlarına aşinalık faydalıdır. JDK 17 veya üzeri ile IntelliJ IDEA ya da Eclipse kurulu bir bilgisayar gerekir.
Eğitim sonunda sertifika verilir mi?
Eğitimi tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir. 2 günlük program boyunca uygulama çalışmalarının tamamlanması beklenir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Advanced Features in Java: Working with Maps in Java Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre2 gün
SeviyeOrta Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

Java ve JVMJakarta Servlets: URL Mappings and Request Parameters Eğitimi
Yazılım Geliştirme Eğitimleri

Jakarta Servlets: URL Mappings and Request Parameters Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Servlet URL Eşlemeleri ve İstek Parametreleri eğitimi: Exact, path, extension ve default eşlemeler, getParameter, getParameterMap, path variable çözümleme ve gi

Detayları Gör →
Java ve JVMJakarta Servlets: Using Apache Tomcat with Servlets Eğitimi
Yazılım Geliştirme Eğitimleri

Jakarta Servlets: Using Apache Tomcat with Servlets Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Apache Tomcat ile Servlet Geliştirme eğitimi: Tomcat 10.1 mimarisi, Connector, server.xml, context.xml, WAR deploy, Manager uygulaması, SSL, loglama ve performa

Detayları Gör →
Java ve JVMJakarta Servlets: Welcome Files, Error Files, Forms, and File Uploads Eğitimi
Yazılım Geliştirme Eğitimleri

Jakarta Servlets: Welcome Files, Error Files, Forms, and File Uploads Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Servlet Welcome/Error Dosyaları, Form ve Dosya Yükleme eğitimi: welcome-file-list, error-page, form işleme, @MultipartConfig, Part API, dosya doğrulama ve güven

Detayları Gör →
Java ve JVMJava & Runtime Eğitimi
Yazılım Geliştirme Eğitimleri

Java & Runtime Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

Java ve Runtime eğitimi: JVM mimarisi, ClassLoader, heap ve stack, çöp toplayıcılar, JIT, Runtime sınıfı, JVM bayrakları ve temel profil araçları.

Detayları Gör →
Java ve JVMJava Application Performance Analysis Tools Eğitimi
Yazılım Geliştirme Eğitimleri

Java Application Performance Analysis Tools Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

Java Uygulama Performans Analiz Araçları eğitimi: Java Flight Recorder, VisualVM, async-profiler, jcmd, heap dump analizi (Eclipse MAT), GC log analizi ve JMH i

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn