Cet ouvrage s'adresse principalement aux étudiants des cycles informatiques (IUT , IU P, licence, master 1re année et MIAGE) ainsi qu'aux élèves ingénieurs. Il intéressera également toute personne souhaitant découvrir la programmation avec Java. L'objectif de cet ouvrage est d'enseigner des méthodes et des outils de construction de programmes informatiques valides et fiables. L'auteur propose une introduction à l'algorithmique ainsi qu'à la programmation impérative procédurale et orientée objet. Il met l'accent sur les notions de validité et de fiabilité en s'appuyant sur des notations formelles. Tous les algorithmes et les structures de données sont traduits et présentés en Java 8. De nombreux exercices complètent ce cours. Cette cinquième édition a été revue et complétée pour tenir compte des évolutions du langage Java.