Optimiser son code en Java
Pavlos Kosmetatos
Lead Engineer @Wealthyhood
Gestion manuelle de la mémoire (C/C++)
$$
Garbage Collection en Java

Compromis de performance de la GC
$$
Algorithmes de GC
// À éviter : créer de nombreux objets de courte durée de vie for (int i = 0; i < 1000000; i++) { new Object(); // Devient immédiatement un déchet }// Mieux : réutiliser des objets Object obj; for (int i = 0; i < 1000000; i++) { obj = new Object(); // Une seule référence }
// À éviter dans du code critique en performance String result = ""; for (int i = 0; i < 100000; i++) { result += i; // Crée une nouvelle String à chaque fois }// Approche recommandée StringBuilder builder = new StringBuilder(); for (int i = 0; i < 100000; i++) { builder.append(i); // Réutilise le même tampon } String result = builder.toString();
// Des branches prévisibles aident l'optimisation JIT
if (value > 0) {
// Code A - chemin souvent emprunté
} else {
// Code B - chemin rarement emprunté
}
Optimiser son code en Java