Java/Spring - Questions/Réponses Techniques

38 kart

38 kart

Tekrar et
Aralıklı tekrar, her kartı uzun süreli hafızalamak için en uygun anda gösterir ve gitgide artan aralıklarla revizyonlar.
Soru
Qu'est-ce qu'un stéréotype en Spring ?
Yanıt
Une annotation qui marque une classe comme un composant spécifique pour la détection et la gestion par le conteneur Spring.
Soru
Citez 3 stéréotypes Spring courants.
Yanıt
  • @Component (générique)
  • @Service (couche service)
  • @Repository (couche d'accès aux données)
  • @Controller (contrôleur web)
  • @RestController (contrôleur REST)
Soru
Qu'est-ce qu'un scope en Spring ?
Yanıt
Le scope d'un bean définit le nombre et la durée de vie de ses instances dans le conteneur Spring.
Soru
Quel est le scope par défaut d'un bean Spring ?
Yanıt
Singleton.
Soru
Expliquez le scope Prototype.
Yanıt
Une nouvelle instance du bean est créée à chaque injection.
Soru
Citez les 3 principaux types d'injection en Spring.
Yanıt
Injection par attribut (field-based), injection par constructeur, injection par setter.
Soru
Quelle injection est recommandée et compatible avec final ?
Yanıt
L'injection par constructeur.
Soru
Quel est le rôle du conteneur Spring ?
Yanıt
Il gère les objets (beans) de l'application : création, configuration, injection de dépendances.
Soru
Quelle méthode HTTP est utilisée pour créer une ressource ?
Yanıt
POST.
Soru
Quelle méthode HTTP est utilisée pour modifier partiellement une ressource ?
Yanıt
PATCH.
Soru
Quel code de statut HTTP indique un succès sans contenu à retourner ?
Yanıt
204 No Content.
Soru
Quel code de statut HTTP indique que la ressource n'a pas été trouvée ?
Yanıt
404 Not Found.
Soru
Donnez la différence clé entre une API REST et une API SOAP.
Yanıt
API REST est stateless et utilise HTTP/JSON (souvent), tandis que SOAP est базирована sur XML, protocole strict et souvent stateful.
Soru
Qu'est-ce qu'une API stateless ?
Yanıt
Une API dont le serveur ne conserve aucune information entre deux requêtes. Chaque requête est indépendante.
Soru
Citez deux architectures logicielles principales.
Yanıt
Architecture Monolithique, Architecture en Couches, Architecture Microservices, Architecture Hexagonale, etc.
Soru
Dans MVC, quel est le rôle du Contrôleur ?
Yanıt
Il reçoit les requêtes utilisateur et coordonne le Modèle et la Vue.
Soru
Qu'est-ce que le Design Pattern Singleton ?
Yanıt
Un pattern de création qui garantit qu'une classe n'a qu'une seule instance et fournit un point d'accès global à celle-ci.
Soru
Citez une version LTS de Java postérieure à Java 8.
Yanıt
Java 11, Java 17 ou Java 21.
Soru
Expliquez ce qu'est une fonction 'citoyen de premier ordre' en programmation fonctionnelle.
Yanıt
Une fonction qui peut être passée en paramètre, retournée par une autre fonction, ou stockée dans une variable.
Soru
Donnez un exemple d'opération intermédiaire sur un Stream Java.
Yanıt
filter(), map(), sorted().
Soru
Donnez un exemple d'opération finale sur un Stream Java.
Yanıt
collect(), forEach(), count().
Soru
Quelle est la principale différence entre Heap et Stack en gestion mémoire Java ?
Yanıt
Le Stack stocke les variables locales et appels de méthodes (rapide, LIFO), le Heap stocke les objets créés dynamiquement (géré par le GC).
Soru
Qu'est-ce qu'un Garbage Collector ?
Yanıt
Un mécanisme automatique qui libère la mémoire des objets non référencés en Java.
Soru
Quelle est la différence fondamentale entre List et Set en Java ?
Yanıt
List est ordonnée et autorise les doublons ; Set n'autorise pas les doublons et n'est pas forcément ordonné.
Soru
Qu'est-ce qu'une Checked Exception ?
Yanıt
Une exception que le compilateur oblige à gérer (ex: IOException, SQLException).
Soru
Quel est l'effet du mot-clé final sur une classe ?
Yanıt
La classe ne peut pas être héritée (elle ne peut pas avoir de sous-classes).
Soru
À quoi sert un record en Java (16+) ?
Yanıt
C'est une classe simplifiée pour les DTOs ou les conteneurs de données immuables. Il génère auto constructeur, getters, toString, equals, hashCode.
Soru
Quelle est la différence entre JPA et Hibernate ?
Yanıt
JPA est une spécification (interface) pour la persistance Java, tandis qu'Hibernate est une implémentation concrète de cette spécification.
Soru
Quel est le problème N+1 en JPA et comment peut-on le solutionner ?
Yanıt
Une requête principale déclenche 'N' requêtes supplémentaires pour charger des entités liées. Solution : utiliser JOIN FETCH.
Soru
Quelle jointure SQL retourne toutes les lignes de la table de gauche et seulement les correspondances de la table de droite ?
Yanıt
LEFT JOIN.
Soru
Quel est l'acronyme de NoSQL et sa caractéristique principale ?
Yanıt
NotOnlySQL. Caractéristiques : bases non relationnelles, flexibles, performantes, sans schéma rigide.
Soru
Citez une différence majeure entre React et Angular.
Yanıt
React est une librairie (Facebook), Angular est un framework complet (Google). React utilise JS/TS avec one-way data binding, Angular utilise TS et two-way data binding.
Soru
À quoi sert le hook useContext() dans React ?
Yanıt
Il permet d'accéder à une donnée partagée via un contexte React et d'éviter le 'prop drilling'.
Soru
Pourquoi utilise-t-on className au lieu de class en JSX (React) ?
Yanıt
Car class est un mot réservé en JavaScript.
Soru
Donnez la différence entre Merge et Rebase avec Git.
Yanıt
Merge fusionne et crée un 'merge commit'. Rebase 'rejoue' les commits d'une branche après ceux d'une autre, sans merge commit, pour une histoire linéaire.
Soru
Citez deux des principes SOLID.
Yanıt
  • S : Single Responsibility Principle
  • O : Open/Closed Principle
  • L : Liskov Substitution Principle
  • I : Interface Segregation Principle
  • D : Dependency Inversion Principle
Soru
Comment peut-on versionner une API REST Spring Boot ?
Yanıt
En utilisant @RequestMapping("/api/v2/...") sur les endpoints pour indiquer la version.
Soru
Quel mécanisme Spring permet de centraliser la gestion des exceptions pour les contrôleurs REST ?
Yanıt
L'utilisation de @RestControllerAdvice et @ExceptionHandler.

Bir quiz başla

Bilgini etkileşimli sorularla test et