Les meilleurs cours et tutoriels pour apprendre JAVA

Sélection des meilleurs tutoriels et cours de formation gratuits pour apprendre la programmation Java. Vous trouverez les meilleures méthodes éducatives pour une formation agréable et complète, ainsi que des exercices intéressants, voire ludiques, vous pouvez aussi trouver des exercices offerts en sus des cours pour perfectionner votre niveau et acquérir de l'expérience. Si vous avez besoin, n'hésitez pas aussi à vous référer à la FAQ Java et à poser vos questions sur les forums d'entraide Java.

Un espace de dialogue vous est proposé sur le forum si vous avez des remarques concernant cette page cours Java : 1 commentaire Donner une note à l'article (5).

Page lue   fois.

Nombre d´auteurs : 255, nombre de traducteurs : 1, nombre d´articles : 46, dernière mise à jour : 4 mars 2017 

 
Pour débuter

Sommaire

menu Tests
  • PDF on-line ZIP E-book 
    fr
    Ce tutoriel a pour objectif de mettre en pratique le développement dirigé par les tests en construisant une petite application web. Du fait de sa taille importante, il sera mis à jour régulièrement.
     
  • PDF on-line ZIP E-book 
    fr
    3T : les Tests en Trois Temps
    par Thierry Leriche-Dessirier
    Le TDD, la fameuse méthode de Développement Guidé par les Tests est devenue incontournable. Toutefois, elle n'est pas si simple à comprendre et à mettre en œuvre. Ce miniarticle propose, comme version allégée du TDD, la « 3T » qui, bien qu'incomplète, devrait suffire à la plupart des équipes.
     
  • PDF on-line ZIP E-book 
    fr
    Les Tests en Trois Temps (3T) en pratique
    par Thierry Leriche-Dessirier
    « 3T » est une version simplifiée des incontournables TDD (Test Driven Development), une méthode dans laquelle on commence par écrire des tests pour aider (guider) le développement des fonctionnalités. Ce second article sur le sujet propose une illustration de « 3T » en action sous forme d'un miniroman.
     
  • PDF on-line ZIP E-book 
    fr
    Ce petit tutoriel montre comment mettre en œuvre 3T (Tests en Trois Temps), pour développer une fonctionnalité simple (la suite de Fibonnaci dans l'exemple) en s'aidant des tests, le tout en quelques minutes.
     
  • PDF on-line ZIP E-book 
    fr
    Faire des tests de charge réalistes n'est pas forcément évident pour de nombreuses raisons. Mais l'effort en vaut la peine car cela peut fausser les résultats s'ils ne sont pas réalistes. Dans cet article, nous verrons comment réaliser des tests de charge et comment éviter certains pièges.
     
  • PDF on-line ZIP E-book 
    fr
    En complément de mon tutoriel sur le développement dirigé par les tests, cette page propose une traduction des antipatrons de tests unitaires recensés par James Carr sur son blog. Traduction faite avec la permission de James Carr.
     
  • PDF on-line ZIP E-book 
    fr
    Patterns de tests pour des tests unitaires en Java
    par Mirko Raner, Alexandre Gautier (traducteur)
    Présentation des patterns de tests pour des tests unitaires en Java.
     
  • PDF on-line ZIP E-book 
    fr
    Tests unitaires
    par Sébastien Meric
    L'utilisation de framework de tests unitaires est essentielle à la constitution d'un code robuste . Elle s'inscrit dans la lignée des articles précédents et vient en complément, vous aider, d'une part à placer votre code en situation difficile, d'autre part, elle en améliore la lisibilité !
     
  • PDF on-line ZIP E-book 
    fr
    Le terme « objet simulacre » est devenu populaire pour décrire des objets spéciaux qui imitent de vrais objets dans le but de les tester. La plupart des environnements de développement ont maintenant des outils qui permettent de créer facilement des objets simulacres. Cependant, souvent on ne réalise pas que les objets simulacres sont un cas particulier d'objets de tests, qui permettent un style de test différent. Dans cet article, j'explique comment les objets simulacres fonctionnent, comment ils encouragent le test basé sur la vérification du comportement, et comment la communauté autour d'eux les utilise pour développer un style de test différent.
     
  • PDF on-line ZIP E-book 
    fr
    Nos logiciels deviennent de plus en plus complexes et importants. Et malheureusement, aucun d'entre eux ne peut se vanter de ne comporter aucun bogue. Il incombe au programmeur la délicate tâche de tester son code avant de le distribuer.
     
  • PDF on-line ZIP E-book 
    fr
    Cet article a pour objectif de présenter ce qu'apporte JUnit4 pour les tests automatisés (annotations, nouvelles assertions, suppositions, tests paramétrés).
     
  • PDF on-line ZIP E-book 
    fr
    Tests unitaires avec Spring et JUnit
    par Johnny Beuve, Christophe Knuchel
    Dans cet article, on montrera, à l'aide d'un exemple, comment il est facile de réaliser des tests unitaires avec SPRING d'une application Web. L'application Web testée est un simple CRUD (Create-Read-Update-Delete) d'un document TODO.
     
  • PDF on-line ZIP E-book 
    fr
    Ce billet a pour objectif d'illustrer, à l'aide d'un exemple assez complet et proche des cas réels, la mise en place des tests transactionnels pour l'ensemble des couches applicatives. Il aborde JUnit4 enrichi avec les annotations de Spring 2.5+ et ses lanceurs pour exécuter facilement les tests. Des illustrations en mode transactionnel vous sont proposées à la fin de ce billet. Le framework JUnit est l'œuvre conjointe de Kent Beck (créateur de XP) et Erich Gamma (auteur des Design Patterns). Avec la version 4, JUnit tente de rattraper son retard sur Testng tout en gardant la compatibilité avec JUnit3x ainsi qu'une parfaite intégration aux éditeurs Eclipse, Netbeans... Avec les lanceurs de Spring, les tests deviennent plus attrayants et facilitent l'introduction des transactions par une simple annotation. Spring encourage ainsi à adopter l'approche TDD « Test Driven Design » ou « Test-First Developpment ». L'utilisation de Spring avec JUnit4 n'exige, en aucun cas, de maîtriser Spring. Dans l'exemple détaillé plus loin, les annotations de Spring 2.5 allègent considérablement la configuration XML. Le principe « ZERO CONFIGURATION » et/ou « CONVENTION OVER CONFIGURATION » permettent d'aboutir à « zéro xml » ou presque. La présentation de ce billet est divisée en trois axes :
    - créer une application Web JEE sous eclipse/Maven2, SpringMVC et ses annotations, en particulier @Controller ;
    - mettre en place, via le framework JUnit4.x, des tests unitaires et des tests d'intégration couvrant l'ensemble des couches applicatives (Dao, Service et Web) ;
    - exécution des tests en mode transactionnel.
    2 commentaires Donner une note à l'article (4.5) Création : 9 juin 2010  · Mise à jour : 22 janvier 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Cet article va vous présenter l'utilisation de Easymock et de JUnit 4 pour effectuer des tests unitaires avec des simulacres de tests.
     
  • PDF on-line ZIP E-book 
    fr
    Jcreator est un environnement de développement pour Java ne fonctionnant que sous Windows. Il n'est pas aussi complet que Eclipse ou NetBeans, mais a l'avantage d'être léger, rapide et simple d'utilisation pour un débutant. Malheureusement, cet environnement, contrairement à d'autres, ne permet pas initialement de réaliser des tests unitaires avec junit. Nous allons voir comment faire.
     
  • PDF on-line ZIP E-book 
    fr
    JMockit est un framework de mocks pour les tests unitaires. En plus de proposer les fonctionnalités habituelles de mocking, il permet de poser des tests sur du code dit intestable. Absolument tout est mockable : les méthodes statiques, les initialiseurs statiques, les constructeurs et même les méthodes privées.
     
  • PDF on-line ZIP E-book 
    fr
    L'objectif de cet article est de présenter clairement, à travers des exemples simples, le framework de tests unitaires Java TestNG.
     
  • PDF on-line ZIP E-book 
    fr
    Cet article se propose de présenter comment utiliser la bibliothèque JBehave pour mettre en œuvre le développement dirigé par le comportement (BDD en anglais pour Behavior Driven Development).
     
  • PDF on-line ZIP E-book 
    fr
    Cet article s'intéresse à l'outil DBSetup qui est un substitut à DBUnit.
    Commentez Donner une note à l'article (5) Création : 10 juillet 2014 
     
  • PDF on-line ZIP E-book 
    fr
    Faire des tests unitaires dans ses développements fait aujourd'hui partie des pratiques courantes. Voici 10 antipratiques à ne pas suivre, tirées d'expériences réelles, qui pourraient précipiter vos tests unitaires dans les oubliettes.
    2 commentaires Donner une note à l'article (5) Création : 22 septembre 2014 
     
  • PDF on-line ZIP E-book 
    fr
    Pourquoi les fins de projet sont-elles toujours aussi « rock'n'roll » ? Les méthodologies classiques de développements ont échoué.
    Cet article est bien plus que le rapport d'autopsie d'un énième projet qui a mal fini. Il tentera d'analyser pour vous, développeurs, les raisons de l'échec, et parviendra à vous convaincre j'en suis sûr, de tester une nouvelle eXPérience.
    2 commentaires Donner une note à l'article (5) Création : 11 septembre 2014 
     
  • PDF on-line ZIP E-book 
    fr
    Cet article se propose de présenter la bibliothèque Catch-Exception qui permet de tester les exceptions sur JUnit.
    5 commentaires Donner une note à l'article (3.5) Création : 8 septembre 2014 
     
  • PDF on-line ZIP E-book 
    fr
    AssertJ-DB (Assertions for database) peut être utilisé dans les tests unitaires avec une base de données en tant qu'alternative à DBUnit, en fournissant des assertions pour tester la valeur des données. Il permet donc de valider l'état de la base de données à la fin d'un test.
    2 commentaires Donner une note à l'article (5) Création : 3 septembre 2015 
     
  • PDF on-line ZIP E-book 
    fr
    AssertJ-DB peut être utilisé dans les tests unitaires pour avoir une solution de remplacement à DBUnit, en fournissant des assertions pour tester la valeur de données. Il permet donc de valider l'état de la base de données à la fin d'un test.
    Commentez Donner une note à l'article (5) Création : 27 novembre 2015 
     
menu Performances
  • PDF on-line ZIP E-book 
    fr
    Introduction à YourKit Java Profiler.
     
  • PDF on-line E-book 
    fr
    Lors d'une campagne de tests de charge, l'objectif va être de simuler un grand nombre d'utilisateurs afin de tester le comportement global du système (applicatif, ressources systèmes, etc.). Les tests manuels n'étant pas à l'ordre du jour pour ce type de test (trop complexes à mettre en œuvre, trop chers), il est fortement conseillé d'utiliser un outil de test de charge. De nombreux outils existent et nous allons nous concentrer sur Apache JMeter et ses plugins.
     
  • PDF on-line ZIP E-book 
    fr
    Création d'un jeu de données le plus réaliste possible pour un test de charge avec Benerator. Cet article a été mis à jour pour la sortie de Benerator v0.6.1
     
  • PDF on-line ZIP E-book 
    fr
    CRaSH est un projet open source récent créé par Julien Viet (coprésident du Marseille JUG). J'ai découvert CRaSH au Marseille JUG lors d'une session sur CRaSH et depuis peu j'y contribue.
    Avec cet article, je souhaite vous faire découvrir CRaSH à travers un cas pratique et vous montrer comment on peut facilement agir directement au c?ur de la JVM.
     
  • PDF on-line ZIP E-book 
    fr
    « À votre avis : c'est qui le plus fort, l'hippopotame ou l'éléphant ? » Voilà une question à laquelle il sera difficile de répondre, même avec un outil tel que JMH de l'OpenJDK ! Néanmoins, il pourra vous être très utile pour mesurer les performances d'un code Java, comparer deux implémentations différentes d'un algorithme, ou encore estimer les gains de performances apportés par la dernière JVM. Je vous propose de découvrir cet outil et d'écrire votre premier benchmark JMH en dix minutes chrono !
    Commentez Donner une note à l'article (5) Création : 14 août 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Cet article s'intéresse à étudier les risques dus à l'overhead lors d'une supervision d'applications et comment les éviter.
    Commentez Donner une note à l'article (5) Création : 18 décembre 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Pour faire suite à mes précédents articles consacrés à JMH, le framework de benchmarking de l'OpenJDK, voici la dernière partie, dans laquelle je m'intéresserai non pas au traitement benchmarké proprement dit, mais à la donnée sur laquelle il s'exécute. Quelle importance cette donnée peut-elle avoir ? En matière de performance, nous allons voir qu'étudier la vitesse d'un programme n'a de sens que dans un contexte précis d'exécution : pour faire un parallèle avec la course à pied, diriez-vous qu'un chrono de 2 h 02 est une belle performance ? Tout dépend s'il s'agit d'un marathon ou d'un 100 m?
    Commentez Donner une note à l'article (5) Création : 16 décembre 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Ce chapitre de livre s'intéresse à tester la charge d'une base de données avec l'outil JMeter.
    Commentez Donner une note à l'article (5) Création : 7 décembre 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Ce tutoriel s'intéresse à expliquer le fonctionnement de JMH, l'outil de benchmark de la JDK
    Commentez Donner une note à l'article (5) Création : 9 décembre 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Découvrir l'écosystème d'Apache JMeter
    par Antonio Gomes Rodrigues
    JMeter dispose d'un écosystème foisonnant, aussi comme le dit Bregson, « Choisir, donc exclure ». Nous avons donc dû faire des choix subjectifs. JMeter dispose d'un écosystème foisonnant, aussi comme le dit Bregson, « Choisir, donc exclure ». Nous avons donc dû faire des choix subjectifs.
    Commentez Donner une note à l'article (5) Création : 1er novembre 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Nous verrons comment associer la puissance de JMeter, de JMX et de Groovy afin d'activer les logs GC sur une application en cours d'exécution.
    1 commentaire Donner une note à l'article (5) Création : 24 novembre 2015 
     
  • PDF on-line ZIP E-book 
    fr
    En Java, la gestion de la mémoire est réalisée par la JVM, en particulier par le Garbage Collector (ramasse miettes). Or, si l'on regarde d'un peu plus près, on remarque que l'on peut appeler le GC par l'instruction System.gc(). En Java, la gestion de la mémoire est réalisée par la JVM, en particulier par le Garbage Collector (ramasse miettes). Or, si l'on regarde d'un peu plus près, on remarque que l'on peut appeler le GC par l'instruction System.gc(). On se dit que cela pourrait être utile afin de libérer un maximum de mémoire avant certains traitements. Cette démarche est fortement déconseillée, car c'est une « fausse bonne idée » comme nous allons le démontrer dans ce tutoriel.
    6 commentaires Donner une note à l'article (5) Création : 11 novembre 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Dans cet article nous allons voir une partie des possibilités offertes par AppDynamics pour la partie Java.
    Commentez Donner une note à l'article (5) Création : 22 février 2016 
     
  • PDF on-line ZIP E-book 
    fr
    Lorsque l'on fait du développement Java, on ne se préoccupe pas toujours des problèmes de performance. Et lorsque la performance est une contrainte, on ne sait pas toujours comment la mesurer et avec quel outil. Idéalement, cet outil s'intégrerait à notre environnement de développement et se lancerait automatiquement. En somme, il nous faudrait un framework comme Junit,mais dédié à la performance.
    Commentez Donner une note à l'article (5) Création : 19 mars 2012  · Mise à jour : 30 octobre 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Cet article présente deux aspects de l'outil COJAC pour Java : (i) la détection automatique des pièges que tendent les nombres ; (ii) une toute nouvelle fonctionnalité capable de doper les nombres à virgule.
    Commentez Donner une note à l'article (5) Création : 20 janvier 2016 
     
  • PDF on-line ZIP E-book 
    fr
    Dans ce tutoriel nous étudierons les mécanismes d'apparition d'un OutOfMemoryError dans la JVM et comment les résoudre.
    Commentez Donner une note à l'article (5) Création : 6 janvier 2016 
     
  • PDF on-line ZIP E-book 
    fr
    Dans cet article nous allons nous pencher sur la création de plusieurs jeux de données pour l'application démo PlantsByWebSphere livrée avec IBM WebSphere 8. Nous utiliserons une base de données MySQL en remplacement de Derby.
     
  • PDF on-line ZIP E-book 
    fr
    Une solution simple pour augmenter les performances au niveau base de données est de maîtriser la gestion des index. Vous avez sûrement lu ou déjà expérimenté l'impact de l'ajout d'un index sur les performances d'une requête. Malheureusement, il faut bien être sensibilisé sur le nombre d'index sur une table, car ils ont un coût, et en particulier pour les opérations UPDATE, DELETE et INSERT INTO. Afin de démontrer ce coût, nous allons utiliser le «*couteau suisse*» de JMeter associé à Benerator. Avant de commencer, je vous conseille de réviser vos cours sur la gestion des index (comment créer un index, comment il marche%u2026). Attention, car chaque moteur de base de données a ses particularités.
    9 commentaires Donner une note à l'article (4.5) Création : 28 octobre 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Après avoir vu dans la première partie l'utilisation d'Apache JMeter, nous allons continuer son apprentissage. Pour cela, nous verrons comment enregistrer de manière réaliste (en particulier sur les temps de réponse) un script et comment le lancer.
    1 commentaire Donner une note à l'article (5) Création : 12 octobre 2016 
     
  • PDF on-line ZIP E-book 
    fr
    Le JDK de Oracle propose plusieurs outils et API pour monitorer une JVM (Machine Virtuelle Java) locale et ceci, depuis le JDK 6, sans avoir besoin de configurer cette JVM de manière particulière (enfin, cela c'est dans les cas simples, nous verrons qu'il faut parfois ajouter une petite option).
    1 commentaire Donner une note à l'article (5) Création : 11 décembre 2013 
     
menu Débogage
  • PDF on-line ZIP E-book 
    fr
    Vous êtes face à un bogue et vous ne savez pas où il se trouve. Les printf/cout/println (ou autres fonctions affichant du texte) ne mènent à rien de concret et ne vous aident pas. On vous dit d'utiliser un « débogueur ». Vous en avez un, mais vous ne l'avez jamais utilisé et vous ne savez pas quoi faire. Cet article est pour vous !
    Commentez Donner une note à l'article (5) Création : 17 mars 2015 
     
  • PDF on-line ZIP E-book 
    fr
    Cet article décrit comment déboguer un programme Java durant sa phase de conception comme durant son utilisation. Et comme il vaut mieux prévenir que guérir, les diverses bonnes pratiques de code qui permettent d'éviter de rendre le débogage trop ardu seront également abordées.
     
Consultez tous les cours