Accueil
Rechercher:
sur developpez.com sur les forums
Forums | Tutoriels | F.A.Q's | Participez | Hébergement | Contacts
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi MS-Office SQL & SGBD Oracle  4D  Business Intelligence
FORUMS C FAQs C TUTORIELS C LIVRES C COMPILATEURS C SOURCES GTK+
logo

Les meilleurs livres sur le C

Dernière mise à jour : 27/07/2007 - 6 livres - 8 critiques


couverture du livre 'Le langage C'

Note 5.0

Le langage C

Norme ANSI, 2ème édition

de Brian W. Kernighan et Dennis M. Ritchie

Résumé de l'éditeur

Conçu à l'origine comme le langage des systèmes d'exploitation Unix, le langage C s'est répandu bien au-delà de cette fonction et continue à se diffuser. L'ouvrage de Brian W. Kernighan et de Denis M. Ritchie, qui sont les principaux créateurs du C, a été traduit en quinze langues. Connu sous l'abréviation K&R, il constitue la "référence" pour tout utilisateur de ce langage. Le but de ce livre est de vous apprendre à programmer en C. Il est construit en 8 chapitres qui présentent successivement tous les concepts fondamentaux du langage C (les types, les opérateurs, les structures de contrôle, les pointeurs, les structures, les entrées-sorties...). L'annexe A est un manuel de référence qui a été conçu à l'intention des programmeurs. L'annexe B est un résumé des possibilités qu'offre la bibliothèque standard. Les solutions des 250 exercices proposés par B. Kernighan et D. Ritchie sont fournies en détail dans l'ouvrage complémentaire de C.Tondo et S.Gimpel paru dans la même collection sous le titre Exercices corrigés sur le langage C.

Critique du livre par la rédaction (Anomaly)
Ce livre est réellement l'ouvrage de référence du langage C, convenant tout aussi bien à l'apprentissage du langage ou comme référence sur la norme et la bibliothèque.

L'auteur a su habilement séparer la définition du langage de celle de la bibliothèque standard, et bien qu'il y ait un petit chapitre sur les appels systèmes Unix, l'ouvrage est indépendant du système et du compilateur utilisé, et donc conviendra à tous.

Le débutant saura prendre en main rapidement le langage tout en apprenant dès le début à être rigoureux. Le premier chapitre présente les premiers tâtonnements nécessaires avec le langage afin de pouvoir faire ses tous premiers programmes. Les chapitres suivants présentent ensuite point par point tous les éléments du langage, avec l'écriture de petites programmes pour illustrer chaque notion. Les explications sont très claires, y compris sur les sujets très délicats comme les tableaux et les pointeurs.

La bibliothèque standard est abordée en dernier (où on voit que la majorité des exercices précédents consistaient à la réécrire, mais c'est probablement le meilleur entraînement). Après le petit chapitre sur quelques appels systèmes Unix indispensables, on trouve deux annexes : une référence concise, mais complète, du langage (équivalent d'une norme), et une référence concise de toute la bibliothèque.

S'il existe probablement des ouvrages plus orientés pratiques pour apprendre le langage, la méthode utilisée sur celui-ci me paraît de loin la meilleure : en C, beaucoup plus que dans d'autres langages, il faut beaucoup de rigueur, et c'est l'une des qualités premières de cet ouvrage. L'apprentissage sera récompensé par de meilleurs réflexes dès le départ, et permettra au lecteur, par la suite, d'aborder en toute sérénité le développement spécifique pour un système.

En définitive, mon seul regret est que bien que cette édition soit très récente (septembre 2004), il ne s'agit que d'une nouvelle présentation de l'édition de 1997 ; par conséquent, l'ouvrage n'aborde malheureusement pas la nouvelle norme C99, et présente la norme C90 comme nouvelle, ce qui surprend de nos jours.

Malgré cela, s'il ne vous faut qu'un seul livre sur le C, cela devrait être celui-ci. En attendant la 3ème édition ?

Critique du livre par la rédaction (Mathieu Dalbin)
Dès les premières pages du livre, les auteurs sont clairs : cet ouvrage a pour but de présenter les différentes caractéristiques du langage C, tout en répertoriant ses évolutions depuis son apparition et sa première normalisation. Le livre aborde ainsi toutes les nouveautés de la norme ANSI (C 90), mais son but principal est de donner au lecteur les éléments nécessaires pour programmer en C.

Le premier chapitre décrit le langage C dans son ensemble : il aborde les entrées-sorties de caractères, les tableaux et les boucles, permettant ainsi aux lecteurs novices de commencer à programmer simplement ; Les chapitres suivants reprennent en détail et un par un les éléments brièvement présentés au chapitre 1 : opérateurs, expressions, structures de contrôle, pointeurs, tableaux et gestion de la mémoire. Un chapitre est consacré aux entrées-sorties de la bibliothèque standard et en fin un dernier chapitre concerne l'interface avec un système Unix. Chaque sous-chapitre est accompagné d'un ou plusieurs codes source mettant en pratique ou illustrant les propos des auteurs, et ces mêmes sous-chapitres contiennent souvent plusieurs exercices non corrigés destinés à mettre en œuvre les connaissances acquises par le lecteur.

L'annexe A est en fait un condensé de la norme ANSI, et décrit les caractéristiques internes du langage. Cette section est utile pour les programmeurs souhaitant utiliser une sémantique précise et optimale en s'appuyant sur toutes les possibilités du langage, les principaux aspects du langage au niveau sémantique étant abordés dans les premiers chapitres. Cette annexe peut également être d'une aide précieuse si l'on veut comprendre le fonctionnement interne des compilateurs C ou bien si l'on souhaite écrire son propre compilateur. L'annexe B concerne la bibliothèque standard et répertorie les principales fonctions, leur action et les informations nécessaires à leur utilisation. Cette section est particulièrement utile, car ces fonctions sont fréquemment utilisées dans n'importe quel programme C.

En résumé, cet ouvrage s'adresse principalement aux programmeurs désirant découvrir le langage C, ou se perfectionner dans son utilisation. La difficulté progressive des exemples et des codes source permettra aux novices d'avancer sans être troublé, et les programmeurs plus expérimentés y trouveront les informations précises qu'ils recherchent. Ce livre n'aborde en aucun cas les différents aspects d'algorithmique : des bases en programmation sont donc nécessaires.

280 pages, 2ème édition, septembre 2004 Editions Dunod, ISBN10 : 2100487345
Commandez sur www.amazon.fr :
31,26 EUR TTC (prix éditeur 32,90 EUR TTC) - Livraison Gratuite !
couverture du livre 'Méthodologie de la programmation en C'

Note 5.0

Méthodologie de la programmation en C

Norme C 99 - API POSIX

de Achille Braquelaire

Résumé de l'éditeur

Cet ouvrage qui s'adresse aux étudiants de master d'informatique, aux élèves-ingénieurs et aux développeurs est basé sur les normes internationales ISO/IEC 9899 (1999 - 2e édition) et ISO/IEC 9945-1. La première, encore appelée C 99, est la norme la plus récente du langage C et de la bibliothèque standard, et la seconde encore appelée POSIX.1, spécifie une interface de programmation portable avec les systèmes d'exploitation. La description des fonctionnalités du langage et des bibliothèques est exhaustive et rigoureusement conforme aux normes. L'ouvrage comporte huit chapitres. Les cinq premiers sont consacrés à la présentation du langage, les deux suivants aux bibliothèques C standard et POSIX, et le dernier à la modularisation des programmes C. À l'exception du chapitre 7, toutes les fonctionnalités présentées sont portables et indépendantes du système d'exploitation utilisé. De nombreux exemples de programmes accompagnés d'extraits de sessions réalisés sous GNU/Linux illustrent le propos. L'ensemble des programmes est disponible via Internet.

Critique du livre par la rédaction (Nicolas Joseph)
Le titre laisse rêveur : un livre qui explique comment coder proprement en C (enfin c'est ce que me laisse penser la notion de méthodologie) et surtout qui aborde la norme C99 (il est difficile de trouver des articles à ce sujet sur le net, encore plus en français !) C'est donc avec une certaine excitation que j'ouvre les premières pages du livre, je lis avec attention les premières lignes de code pour me faire une idée : propres et claires, vraiment rien à redire.

Bon passons l'introduction au langage, c'est sûrement le blabla habituel... Donc j'arrive enfin à la première nouveauté du C99 : le type booléen. Deux pages rien que pour expliquer cette nouvelle notion. Eh bien, je fus le début d'une lecture qui ne s'arrêta qu'à la dernière page du livre !

J'ai vraiment lu le livre avec un grand intérêt : la bibliothèque standard est entièrement documentée avec de nombreux exemples concrets : il ne s'agit pas de simples exemples type "Hello world" (pour illustrer l'arithmétique des complexes, l'auteur propose un code pour créer une image de l'espace de Mandelbrot au format pgm !), exemples accompagnés du résultat de l'exécution de ce code, bien sûr clairement expliqué.

Ce livre aborde également la norme POSIX, malgré l'ampleur du sujet l'auteur l'aborde de façon exhaustive (en ce qui concerne l'interface de programmation, l'ensemble de la norme POSIX demanderait un livre à lui seul).

Arrivé (trop rapidement hélas) à la fin du livre, pour vous livrer la critique la plus juste, je suis revenu au début du livre (la partie que j'avais survolée pensant qu'elle était rébarbative), et c'est avec surprise que j'ai découvert une approche du C comme on aimerait en voir plus souvent : elle semble (c'est difficile de se prononcer à ce sujet lorsque l'on connaît déjà le C) abordable par un programmeur débutant (peut être pas totalement novice mais, à mon avis, le C n'est pas le meilleur langage pour faire ses premiers pas en programmation).

Le seul regret que j'ai à propos de ce livre est l'absence d'une table qui regrouperait l'ensemble des nouveautés du C99.

En conclusion, si vous cherchez un livre pour apprendre ou progresser dans la maîtrise du langage C, je vous conseille fortement celui-ci !

672 pages, 4 ième édition, Mars 2005 Editions Dunod, ISBN10 : 2100490184
Commandez sur www.amazon.fr :
37,05 EUR TTC (prix éditeur 39 EUR TTC) - Livraison Gratuite !
couverture du livre 'C en action'

Note 4.5

C en action

Solutions et exemples pour les programmeurs en C

de Yves Mettier
Public visé : Avancé

Résumé de l'éditeur

C en action rassemble une sélection de solutions efficaces aux problèmes les plus souvent rencontrés par les programmeurs en C. À la fois source d'idées, moyen d'apprendre C par l'exemple ou de programmer plus vite et plus facilement, cet ouvrage est construit sur le modèle : un problème, une solution, une discussion.

Critique du livre par la rédaction (Nicolas Joseph)
L'auteur du livre annonce la couleur dès les premières pages : ce livre est écrit pour des lecteurs ayant des connaissances en C : aucune initiation n'est proposée, aucun résumé des fonctions de la bibliothèque standard n'est inclu en annexe. Le lecteur est censé connaître et surtout maîtriser le langage C. C en action vous propose de passer en revue différents points techniques qui reviennent régulièrement lors de développement en C : gestion de la mémoire, manipulations des chaînes de caractères, les structures de données... Mais aussi des rubriques plus inattendues telles que la compression ou l'utilisation de la libxml2. Chaque sous chapitre est décomposé en trois parties : Problème/Solution/Discussion de telle sorte que le livre se lit aussi bien de la première à la dernière page que comme un recueil de sources prêtes à l'emploi. On appréciera aussi la présence d'une section "Voir aussi" à la fin des chapitres qui renvoit à un site internet ou à des pages man.

L'auteur ne s'arrête pas au C-ANSI, la plupart des chapitres contient un exemple en C-ANSI, un basé sur la glib et un dernier avec les fonctions de la norme POSIX (il y a des chapitres, celui des signaux par exemple, valable uniquement pour des systèmes d'exploitation conformes POSIX)

On retiendra de ce livre la qualité des sources proposées, qui démontre une maîtrise certaine du C par l'auteur, ainsi que leurs abondances, qui rythme de façon agréable chaque chapitre.

Critique du livre par la rédaction (Benjamin Roux)
Au fil des chapitres, l'auteur aborde un certain nombre de problèmes que tout programmeur C rencontre au cours de ses développements, comme les problèmes de gestion mémoire, de traitement de fichier ou de manipulation de chaines de caractères.

Ces problèmes sont livrés avec une solution ainsi qu'une discussion où l'auteur explique son choix. Les codes sources sont bien détaillés et expliqués pour une compréhension aisée. On notera en revanche certains codes sources plus compliqués qu'ils ne pourraient l'être.

C en Action propose aussi des solutions utilisant des fonctions POSIX ainsi que la Glib, ce que peu de livres font. Nous saluerons cette nouveauté.

Les deux derniers chapitres sont dédiés à l'utilisation de deux bibliothèques : libbzip2 pour la compression/décompression et libxml pour l'utilisation des fichiers XML en C. Un très bon point.

En conclusion, C en Action reste un excellent livre pour les développeurs C.

540 pages, 1 ère édition, juin 2005 Editions O'Reilly, ISBN10 : 2841772896, 824 g
Commandez sur www.amazon.fr :
55.10 EUR TTC seulement (au lieu de 58 EUR TTC : prix éditeur) - Livraison Gratuite !
couverture du livre 'Maîtrise des algorithmes en C'

Note 4.0

Maîtrise des algorithmes en C

de Kyle Loudon
Public visé : Intermédiaire

Résumé de l'éditeur

Après une présentation des structures de données et des algorithmes, l'auteur introduit des techniques indispensables pour bien programmer. Vous apprendrez ensuite à manipuler les structures de données les plus importantes. À la fin de chaque chapitre vous trouverez une série de questions avec leurs réponses. Vous découvrirez ainsi :

  • les pointeurs ;
  • la récursivité ;
  • les listes, les piles et les files ;
  • les ensembles, les tables de hachage et les arbres ;
  • les tas et les files de priorité ;
  • les méthodes de tri et de recherche ;
  • l'analyse numérique ;
  • la compression et le chiffrement des données ;
  • les graphes et le calcul géométrique.
Après avoir lu ce livre vous saurez utiliser les algorithmes pour quantité d'applications. Toutes les implémentations sont soigneusement décrites et leur efficacité est évaluée permettant ainsi au programmeur de choisir la solution la mieux adaptée. Les exemples de code sont disponibles sur le site web des Éditions O'Reilly afin de vous éviter une saisie fastidieuse.

Ce livre est destiné à des programmeurs déjà familiarisés avec le langage C. En fonction des besoins du moment, Maîtrise des algorithmes en C servira aussi bien d'ouvrage didactique que de manuel de référence.

Critique du livre par la rédaction (Nicolas Joseph)
Un titre plus adapté à ce livre pourrait être, à mon avis : Maîtrise des structures de données et des algorithmes en C ; en effet, ces deux sujets (certes extrêmement liés), occupent une part égale du livre.

Chaque structure de données ou algorithme est introduit par une description (rappel des concepts mathématiques), suivie de l'interface (prototype des fonctions à implémenter avec leur description ainsi que leur complexité). Ensuite, l'auteur propose une implémentation complète du sujet traité avec un exemple d'utilisation. Pour finir, une série de questions/réponses clôture le chapitre. Voilà qui permet, même avec peu de connaissances en mathématiques ou en algorithmie, de comprendre et d'utiliser les notions abordées dans ce livre.

Passons au code : point très important à mes yeux, sa qualité reflète généralement celle du reste du livre, par conséquent c'est la première chose que je regarde lorsque j'ouvre un livre (surtout quand il s'agit du C puisque ce langage n'est pas simple à maîtriser). Le code est relativement propre (mis à part quelques cast inutiles), par contre l'indentation n'est pas très lisible (enfin sur ce point, il s'agit d'une notion très personnelle, par conséquent je n'en tiens pas rigueur dans l'appréciation générale de ce livre). Malgré cela, il est agréable d'avoir un code complet prêt à l'emploi (qu'il vous faudra recopier puisque le code n'est pas disponible sur Internet ; en contrepartie cela permet de réindenter le code à son goût) !

Ma seule réelle déception concerne le nombre d'algorithmes proposés : par exemple, on ne trouve pas de chapitre traitant des nombres aléatoires, mais il vaut mieux privilégier la qualité plutôt que la quantité (c'est sûrement pour cela que la fin du livre arrive trop rapidement).

600 pages, 1 ière édition, Septembre 2000 Editions O'Reilly, ISBN10 : 2841770966
Commandez sur www.amazon.fr :
40,85 EUR TTC (prix éditeur 43 EUR TTC) - Livraison Gratuite !
couverture du livre 'C précis et concis'

Note 4.5

C précis et concis

Syntaxe et fondamentaux du langage C

de Peter Prinz et Ulla Kirch-Prinz
Traducteur(s) : Philippe Figon
Public visé : Intermédiaire/Avancé

Résumé de l'éditeur

Cet ouvrage constitue un aide-mémoire précieux pour les programmeurs en C, qu'ils soient débutants ou expérimentés. Il se réfère à la norme ANSI et tient compte des nouvelles extensions introduites en 1999. Un index permet de trouver en un clin d'oeil la fonction, le type ou tout autre élément syntaxique recherché.
La première partie offre un tour d'horizon des notions fondamentales du langage. Les programmeurs ne maîtrisant pas C pourront ainsi s'initier rapidement au langage, tandis que l'étudiant soucieux de faire la synthèse des connaissances acquises aura là un parfait vade-mecum.
La deuxième partie explore de façon thématique la bibliothèque standard en ce qui concerne

  • les entrées-sorties;
  • les limites numériques;
  • les fonctions mathématiques;
  • la classification des caractères et la gestion des chaînes de caractères;
  • la recherche et le tri;
  • la gestion de la mémoire;
  • les dates et les heures;
  • le contrôle des processus;
  • l'internationalisation.
Critique du livre par la rédaction (Nicolas Joseph)
Voici un livre au format poche bien pensé et très pratique.
Le livre de référence du langage C (le K&R) n'est pas épais mais il peut être tout de même fastidieux de trouver une information précise dedans : par exemple si vous cherchez le tableau sur la priorité des opérateurs, l'index référence cinq pages alors qu'avec ce livre il n'y en a qu'une !
En plus de ce côté pratique, il est très complet : tout le langage C est passé en revue (syntaxe, bibliothèque standard et surtout la norme C99), claire : l'auteur n'hésite pas à prendre quelques lignes pour expliquer clairement chaque point du langage et l'abondance des tableaux récapitulatifs facilite la lecture.
Pour finir un petit point qui peut sembler insignifiant mais qui m'a fait adopter ce livre : toutes les nouveautés du C99 sont regroupées en index !
Et tout ça pour un prix réduit. Seul inconvénient : tout le monde va vouloir vous l'emprunter :D

136 pages, 1ère édition, février 2003 Editions O'Reilly, ISBN10 : 2841772470
Commandez sur www.amazon.fr :
8,95 EUR TTC (prix éditeur 9,00 EUR TTC) - Livraison Gratuite !
couverture du livre 'Programmation système en C sous Linux : Signaux, processus, threads, IPC et sockets'

Note 4.0

Programmation système en C sous Linux : Signaux, processus, threads, IPC et sockets

de Christophe Blaess
Public visé : Tous

Résumé de l'éditeur

Tirer le meilleur parti de l'environnement Linux : La possibilité de consulter les sources du système, de la bibliothèque glibc et de la plupart des applications qui tournent sur cet environnement représente une richesse inestimable aussi bien pour les passionnés qui désirent intervenir sur le noyau, que pour les développeurs curieux de comprendre comment fonctionnent les programmes qu'ils utilisent quotidiennement. Nombreuses sont les entreprises qui ont compris aujourd'hui tout le parti qu'elles pouvaient tirer de cette ouverture des sources, gage de fiabilité et de pérennité, sans parler de l'extraordinaire niveau de compétences disponible au sein d'une communauté de programmeurs aguerris au contact du code des meilleurs développeurs OpenSource. Un ouvrage conçu pour les programmeurs Linux et Unix les plus exigeants : Sans équivalent en langue française, l'ouvrage de Christophe Blaess constitue une référence complète de la programmation système sous Linux, y compris dans les aspects les plus avancés de la gestion des processus, des threads ou de la mémoire. Les programmeurs travaillant sous d'autres environnements Unix apprécieront tout particulièrement l'attachement de l'auteur au respect des standards (C Ansi, glibc, Posix...), garant d'une bonne portabilité des applications. La deuxième édition de ce livre a été entièrement actualisée en fonction du noyau Linux 2.6 et des nombreuses évolutions de la bibliothèque C.

Critique du livre par la rédaction (BWP-Necromance)
Le développement dans un système de type Linux passe souvent par le langage C, que ce soit pour le développement de processus, de sockets, les pipes, les signaux?

Ce livre propose des explications et des exemples de code en langage C sur la programmation système dans un environnement Linux. Ils traitent sur la plupart, toutes les possibilités qu'offre au développeur, de programmer une application système, c'est-à-dire en ligne de commande. Comme vous l'avez compris, ce livre ne permettra pas de faire une interface graphique (Comme avec GTK+ ou QT) mais principalement au format terminal.

Le livre est destiné non seulement au développeur qui souhaite créer des applications systèmes/serveur, mais également aux étudiants qui souhaitent débuter dans la programmation sous une plateforme Linux.

Pour finir, le livre est très complet mais néanmoins reste assez difficile pour ceux qui n'ont jamais vu la programmation sous Linux, mais reste tout à fait abordable.

963 pages, 2ème édition, Février 2005 Editions Eyrolles, ISBN10 : 2212116012
Commandez sur www.amazon.fr :
42,75 EUR TTC (prix éditeur 45,00 EUR TTC) - Livraison Gratuite !

Valid XHTML 1.1!Valid CSS!

Copyright © 2000-2007 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.

Responsable bénévole de la rubrique C : Arnaud Feltz (buchs) - Contacter par EMail :
Vos questions techniques : forum d'entraide C - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright © 2000-2008 www.developpez.com - Legal informations.