0% ont trouvé ce document utile (0 vote)
0 vues4 pages

100 Questions Backend Java

Ce document présente 100 questions et réponses essentielles pour réussir un entretien technique en tant que développeur backend Java. Les thèmes abordés incluent les fondamentaux de Java, Spring, l'architecture backend, les bases de données, la sécurité et les pratiques DevOps. Chaque section fournit des explications claires sur des concepts clés et des différences entre divers éléments de la programmation Java.

Transféré par

cabk.diallo
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
0 vues4 pages

100 Questions Backend Java

Ce document présente 100 questions et réponses essentielles pour réussir un entretien technique en tant que développeur backend Java. Les thèmes abordés incluent les fondamentaux de Java, Spring, l'architecture backend, les bases de données, la sécurité et les pratiques DevOps. Chaque section fournit des explications claires sur des concepts clés et des différences entre divers éléments de la programmation Java.

Transféré par

cabk.diallo
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

100 Questions/Reponses

pour un Entretien Backend Java


100 Questions/Reponses pour un Entretien Backend Java

Table des matieres


Introduction ........................................... 3
A. Java - Fondamentaux ........................................... 4
B. Spring & Spring Boot ........................................... 5
C. Architecture Backend ........................................... 6
D. Base de Donnees ........................................... 7
E. Securite ........................................... 8
F. DevOps & Observabilite ........................................... 9

Page 2
100 Questions/Reponses pour un Entretien Backend Java

Introduction

Ce document regroupe 100 questions et reponses couvrant l'ensemble des connaissances


essentielles pour reussir un entretien technique en tant que developpeur backend Java. Les themes
abordes incluent Java, Spring, l'architecture logicielle, les bases de donnees, la securite et les
pratiques DevOps.

A. Java - Fondamentaux

1. Difference entre interface et classe abstraite


Une interface definit un contrat sans implementation (sauf methodes par defaut). Une classe
abstraite peut contenir de l'etat et du code partage. On choisit une interface pour un role, une classe
abstraite pour un comportement commun.

2. Difference entre List, Set et Map


List : ordonnee, doublons autorises.
Set : non ordonnee, pas de doublons.
Map : cle -> valeur, cles uniques.

3. Qu'est-ce qu'un record ?


Une structure immuable avec equals/hashCode/toString generes automatiquement. Ideal pour les
DTO.

4. Difference entre HashMap et ConcurrentHashMap


HashMap n'est pas thread-safe. ConcurrentHashMap utilise une segmentation interne permettant
des acces concurrents.

5. Qu'est-ce que le mot-cle volatile ?


Il garantit la visibilite des modifications d'une variable entre threads, mais ne protege pas les
operations atomiques complexes.

6. Qu'est-ce qu'un code thread-safe ?


Un code thread-safe fonctionne correctement en presence de plusieurs threads sans corruption
d'etat.

7. Difference entre synchronized et Lock


synchronized est simple mais moins flexible. Lock permet timeout, tryLock, conditions.

Page 3
100 Questions/Reponses pour un Entretien Backend Java

8. Qu'est-ce qu'un deadlock ?


Deux threads se bloquent mutuellement en attendant une ressource detenue par l'autre.

9. Qu'est-ce qu'un race condition ?


Deux threads accedent a une ressource partagee sans synchronisation, entrainant un
comportement imprevisible.

10. Heap vs Stack


Stack : variables locales, appels de fonctions.
Heap : objets alloues dynamiquement.

11. Qu'est-ce que le Garbage Collector ?


Un mecanisme qui libere automatiquement la memoire des objets non references.

12. Difference entre JIT et AOT


JIT compile a l'execution, AOT compile avant l'execution.

13. Qu'est-ce qu'un ClassLoader ?


Un composant qui charge les classes en memoire.

14. Qu'est-ce que l'immutabilite ?


Un objet dont l'etat ne change jamais apres construction.

15. Difference entre equals et ==


equals compare le contenu, == compare les references.

16. Qu'est-ce qu'un Optional ?


Un conteneur qui evite les NullPointerException.

17. Qu'est-ce qu'un Stream ?


Une API pour manipuler des collections de maniere fonctionnelle.

18. Lazy vs Eager evaluation


Lazy : calcul differe.
Eager : calcul immediat.

19. Qu'est-ce qu'un CompletableFuture ?


Un outil pour gerer l'asynchronisme sans bloquer les threads.

20. Pourquoi preferer composition a heritage ?


La composition evite le couplage fort et les hierarchies rigides.

Page 4

Vous aimerez peut-être aussi