Le meilleur livre de prog ?

Le meilleur livre de prog ? - C++ - Programmation

Marsh Posté le 19-01-2013 à 15:08:22    

Slt a tous  
je voulais savoir si le meilleur livre de prog pour le C,C++ etc... sa serez ceux du site du zero ?

Reply

Marsh Posté le 19-01-2013 à 15:08:22   

Reply

Marsh Posté le 19-01-2013 à 15:11:59    

Absolument pas, le site du zéro est plus ou moins bien pour commencer, mais faut le fuir comme la peste dès que possible.
Perso j'suis toujours allé sur internet pour les cours, et cplusplusreference est une mine d'or.


---------------
Perhaps you don't deserve to breathe
Reply

Marsh Posté le 19-01-2013 à 15:14:42    

mais je parlais du livre..

Reply

Marsh Posté le 19-01-2013 à 15:24:35    

Ah, le livre du SDZ ? A mon avis, même niveau que le site, je ne le recommanderais pas.


---------------
Perhaps you don't deserve to breathe
Reply

Marsh Posté le 19-01-2013 à 19:36:00    

le SDZ porte bien son nom a oublier derechef

Reply

Marsh Posté le 19-01-2013 à 21:17:42    

Apprendre le C et apprendre le C++, c'est deux choses différentes. Je ne répond que pour le C++:
 
- Pour démarrer le C++, Accelerated C++, de Andrew Koenig et Barbara Moo, il apprends les bases en partant de zero.
(Une fois les bases acquises, on peut aller plus loin en utilisant Thinking in C++ de Bruce Eckel (les deux tomes, et en particulier le second)
Une fois cela fait, on peut passer a la lecture du The C++ Programming Language de Bjarne Stroustrup pour voir tous les détails restants)
 
- Pour comprendre les principales structures de données et algorithmes, le Data Structures and Program Design in C++ de Robert Kruse et Alexander Ryba (il est excellent en tout ce qui concerne les structures de données, moins bon pour leur implémentation en C++, car c'est l'adaptation d'un bouquin pour le C a la base, et c'est dommage qu'il n'ait pas été remanié en tenant compte de la STL)
 
A+,

Message cité 2 fois
Message édité par gilou le 19-01-2013 à 21:20:23

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 19-01-2013 à 21:24:29    

merci de vos réponces !

Reply

Marsh Posté le 19-01-2013 à 21:28:27    

Programming -- Principles and Practice using C++ de Stroustrup n'est pas mal et correspond bien au titre, c'est un cours de programmation qui utilise le C++ comme langage et pas un cours de C++. De mémoire, il a été traduit en français.


Message édité par Un Programmeur le 19-01-2013 à 21:29:09

---------------
The truth is rarely pure and never simple (Oscar Wilde)
Reply

Marsh Posté le 21-01-2013 à 23:42:27    

le livre du SDZ est une tuerie quand tu débutes et que tu as jamais programmer, un must have !

Reply

Marsh Posté le 23-01-2013 à 21:41:14    

gilou a écrit :

Apprendre le C et apprendre le C++, c'est deux choses différentes. Je ne répond que pour le C++:
 
- Pour démarrer le C++, Accelerated C++, de Andrew Koenig et Barbara Moo, il apprends les bases en partant de zero.
(Une fois les bases acquises, on peut aller plus loin en utilisant Thinking in C++ de Bruce Eckel (les deux tomes, et en particulier le second)
Une fois cela fait, on peut passer a la lecture du The C++ Programming Language de Bjarne Stroustrup pour voir tous les détails restants)
 
- Pour comprendre les principales structures de données et algorithmes, le Data Structures and Program Design in C++ de Robert Kruse et Alexander Ryba (il est excellent en tout ce qui concerne les structures de données, moins bon pour leur implémentation en C++, car c'est l'adaptation d'un bouquin pour le C a la base, et c'est dommage qu'il n'ait pas été remanié en tenant compte de la STL)
 
A+,


Tu cites "The c++ programming language" en avant dernier  - est-ce parce qu'il va suffisamment au delà des bases ?
Je serais pas mal intéressé...

Reply

Marsh Posté le 23-01-2013 à 21:41:14   

Reply

Marsh Posté le 24-01-2013 à 01:22:27    

Oui, tout à fait: The C++ Programming Language c'est le bouquin de référence qui explique tout dans le détail, mais c'est pas vraiment la que tu va apprendre à programmer en C++.
 
Le gros pb avec les bouquins qui sont censés t'apprendre le C++, c'est qu'un grand nombre d'entre eux ne t'apprennent que le C à la mode C++. Ça a un petit peu changé ces dernier temps heureusement.
 
DE toute façon, il y a des incontournables à avoir (au fur et a mesure de sa progression) dans toute bonne bibliothèque de programmeur C++:
Les bouquins de Stroustrup:
- The C++ Programming Language
- The Design and Evolution of C++ (pour un bon exposé des idées ayant abouti au C++ et aux choix qui ont été faits)
- Programming: Principles and Practice Using C++ (perso, je suis pas certain que ce soit à recommander a un débutant, il fait plus de 1000 pages et je trouve sa pédagogie discutable)
 
De Koenig et Moo:
- Accelerated C++ pour avoir rapidement les bases
- Ruminations on C++
[de Koenig seul, tout développeur C doit avoir son bouquin C Traps and Pitfalls, on on voit de superbes choses comme (*(void(*)())0)(); qui est l'appel d'une routine stockée à l'adresse machine 0 ]
 
De Lippman, Lajoie et Moo
- The C++ Primer (la toute dernière édition qui inclus le C++ 11)
 
De Sutter
- Exceptional C++
- More Exceptional C++  
- Exceptional C++ Style
 
De Sutter et Alexandrescu
- C++ Coding Standard
 
De Meyers
- Effective C++
- More Effective C++
- Effective STL
 
De Cargill
- C++ Programming Style
 
De Dewhurst
- C++ Gotchas
 
De Henricson et Nyquist
- Industrial Strength C++ - Rules and Recommendations  (quoique je sois pas d'accord avec certaines de leurs règles)
 
De Alexandrescu
- Modern C++ Design
 
De VanDerVoorde et Josuttis
- C++ Templates
 
De Langer et Kreft
- Standard C++ IOStreams and Locales
 
De Musser, Derge et Saini
- Stl Tutorial and Reference Guide - C++ Programming with the STL
 
De Sedgewick
- Algorithms in C++ parts 1-5
 
De Eckel
- Thinking in C++ (les 2 tomes)
 
etc etc.
 
Pour un débutant, en plus du Koenig et Moo, le Lischner, Exploring C++ est pas mal aussi pour apprendre les bases, et est un bon complément a lire ensuite.
 
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 24-01-2013 à 07:30:31    

goldenboy_45 a écrit :

le livre du SDZ est une tuerie quand tu débutes et que tu as jamais programmer, un must have !


non, c'ets juste de la merde. le SDZ et ses subsides ne font que colporter de mauvaises pratiques.

Reply

Marsh Posté le 24-01-2013 à 11:52:30    

Chacun son truc, moi j'aime bien le style.  
Je suis pas informaticien, ingénieur et je connais rien en programmation, si ce n'est VBA.  
 
Donc pour moi, ne connaissant rien, avec "Apprenez à programmer en C" j'apprend énormément de choses, c'est l'un des seuls bouquins à prendre vraiment le truc depuis le début.  
 
C'est certainement pas hype, puisque c'est de la vulgarisation, c'est claire que pour un informaticien c'est surement de la merde, mais pour un vrai débutant qui cherche pas à faire des programmes de folies, juste des trucs de calcul, c'est vraiment bien fait.

Reply

Marsh Posté le 24-01-2013 à 17:02:40    

non, c'est pas "pour les informaticiens" c'est bien. le truc a une pedagogie en bois et n'aborde pas les vrais problemes proprement.  
 
Moi en general, dans mes cours de dev, le premier que je choppe a lire ca, il passe la porte.

Reply

Marsh Posté le 24-01-2013 à 20:09:35    

Non mais ça c'est le comportement typique bobo, la vulgarisation ça passe pas.  
Je suis pareil dans mon domaine remarque.

Reply

Marsh Posté le 24-01-2013 à 20:15:20    

non, c'est pas etre bobo, c'est etre professionnel.
 
Tu verras le jour ou tu auras un vrai job.

Reply

Marsh Posté le 24-01-2013 à 21:29:08    

Non mais ton job c'est écrire des programmes c'est normal que lise pas les livres du SDZ.  
 
Mon job c'est la finance et c'est normal que je lise pas la tribune.  
 
C'est du pareil au même, mais un mec qui connais rien dans l'un des domaines il va pas commencer avec "The C++ the programming language" comme il commencera pas avec "Les outils stochastiques des marchés financiers une visite guidée de Einstein a Black-Scholes"
 
Moi ça me permet de faire des pricers et d'appliquer les modèles financiers avec ce que j'ai appris dans le SDZ, je galère encore pas mal, mais ça viendra. Donc je suis très content de ce que j'ai appris.  
C'est un très bon livre pour les personnes n'ayant jamais programmé, et pour qui ce n'est pas le métiers.

Reply

Marsh Posté le 24-01-2013 à 22:04:58    

Et tu bosses chez Knight Capital? :whistle:  
A+,


Message édité par gilou le 24-01-2013 à 22:05:50

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 27-01-2013 à 21:34:58    

Le problème, c'est qu'après, ça va écrire des bots pour faire du high frequency trading, et ensuite, on s'étonne que la bourse crashe :o


---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
Reply

Marsh Posté le 04-02-2013 à 19:58:49    

gilou a écrit :

Oui, tout à fait: The C++ Programming Language c'est le bouquin de référence qui explique tout dans le détail, mais c'est pas vraiment la que tu va apprendre à programmer en C++.
 
Le gros pb avec les bouquins qui sont censés t'apprendre le C++, c'est qu'un grand nombre d'entre eux ne t'apprennent que le C à la mode C++. Ça a un petit peu changé ces dernier temps heureusement.
 
DE toute façon, il y a des incontournables à avoir (au fur et a mesure de sa progression) dans toute bonne bibliothèque de programmeur C++:
Les bouquins de Stroustrup:
- The C++ Programming Language
- The Design and Evolution of C++ (pour un bon exposé des idées ayant abouti au C++ et aux choix qui ont été faits)
- Programming: Principles and Practice Using C++ (perso, je suis pas certain que ce soit à recommander a un débutant, il fait plus de 1000 pages et je trouve sa pédagogie discutable)
 
De Koenig et Moo:
- Accelerated C++ pour avoir rapidement les bases
- Ruminations on C++
[de Koenig seul, tout développeur C doit avoir son bouquin C Traps and Pitfalls, on on voit de superbes choses comme (*(void(*)())0)(); qui est l'appel d'une routine stockée à l'adresse machine 0 ]
 
De Lippman, Lajoie et Moo
- The C++ Primer (la toute dernière édition qui inclus le C++ 11)
 
De Sutter
- Exceptional C++
- More Exceptional C++  
- Exceptional C++ Style
 
De Sutter et Alexandrescu
- C++ Coding Standard
 
De Meyers
- Effective C++
- More Effective C++
- Effective STL
 
De Cargill
- C++ Programming Style
 
De Dewhurst
- C++ Gotchas
 
De Henricson et Nyquist
- Industrial Strength C++ - Rules and Recommendations  (quoique je sois pas d'accord avec certaines de leurs règles)
 
De Alexandrescu
- Modern C++ Design
 
De VanDerVoorde et Josuttis
- C++ Templates
 
De Langer et Kreft
- Standard C++ IOStreams and Locales
 
De Musser, Derge et Saini
- Stl Tutorial and Reference Guide - C++ Programming with the STL
 
De Sedgewick
- Algorithms in C++ parts 1-5
 
De Eckel
- Thinking in C++ (les 2 tomes)
 
etc etc.
 
Pour un débutant, en plus du Koenig et Moo, le Lischner, Exploring C++ est pas mal aussi pour apprendre les bases, et est un bon complément a lire ensuite.
 
A+,


Ça en fait du bouquin...  [:shlavos]
 
Sinon y'a "The C++ Programming Language" qui va être rééditer en mai avec le C++ 11


---------------
The success, is a progressive realization of a worthy ideal
Reply

Marsh Posté le 28-02-2013 à 13:01:41    

perso je pense que si tu veux comprendre le C, il faut lire celui écrit par Lionel Ritchie & Korrigan
http://en.wikipedia.org/wiki/The_C [...] g_Language
il est sur le net partout.

 

Je pense que c'est le livre qu'il faut lire en 1.

 

Sinon pour le C++, n'importe quel bouquin fera l'affaire pour les bases. Les livres de Sutter et ceux de meyers sont bien pour du niveau "advanced".

 

Sinon sur le net : cplusplus.com, t'as déjà une foultitude d'infoS.

 

Enfin, pour les algos, à mon avis il y a un bouquin qui est très bien mais c'est un énorme pavé : http://www.dunod.com/informatique- [...] de-donnees
T'as des trucs équivalents voire mieux mais en anglais.

 

Si tu veux du multithread, je te conseil C++ in concurrency, mais bon il faut avoir lu les autres bouquins avant sinon tu sera largué.

Message cité 1 fois
Message édité par in_your_phion le 28-02-2013 à 13:07:25
Reply

Marsh Posté le 06-03-2013 à 18:32:12    

Bonjour,
 
Je souhaiterais me remettre à programmation orientée objet (très demandée par les entreprises)
D'après vous, lorsque l'on commence à travailler dans ce domaine là, faut-il mieux savoir coder en C++ ou en java ?

Reply

Marsh Posté le 06-03-2013 à 18:33:09    

Je sais que les deux langages sont très similaires, mais y en t-il qu'il faut absolument savoir utiliser ?

Reply

Marsh Posté le 06-03-2013 à 18:50:07    

C++ et Java ne sont pas similaire du tout :D
 
Maintenant, tout dépend de ce que tu souhaites faire, si c'est du dev pour smartphone par exemple, Java, pour des logiciels sur des PCs, plutôt C++.


---------------
Perhaps you don't deserve to breathe
Reply

Marsh Posté le 06-03-2013 à 19:13:39    

si tu ecris du C++ qui ressemble a du JAVA c'ets que tu as rien compris.
C'ets deux langages completement opposes philosophiquement

Reply

Marsh Posté le 06-03-2013 à 20:54:03    

Joel F a écrit :

si tu ecris du C++ qui ressemble a du JAVA c'ets que tu as rien compris.
C'ets deux langages completement opposes philosophiquement


 
ah ?


---------------
Ta peau de nacre noir, la courbe de ton cul
Reply

Marsh Posté le 06-03-2013 à 22:51:20    

Ben oui, ils sont tous les deux orientés objets mais ne se manipule pas de la même manière :D


---------------
Perhaps you don't deserve to breathe
Reply

Marsh Posté le 07-03-2013 à 06:04:38    

Comme dis plus haut il faut vraiment distinguer C++ du C, il y à quelques très bons livres pour apprendre à "pensez en C++" comme par exemple "Thinking in C++: Introduction to Standard C++, (2nd Edition)", il y à deux volumes.  
Sinon la première édition de ce livre existe en français sur le net : penser en C++


Message édité par Paul JR le 07-03-2013 à 06:07:59
Reply

Marsh Posté le 07-03-2013 à 07:16:53    


 
le C++ moderne se base sur le typage statique fort, la preponderance des algorithmes generiques parametriques, l'aspect fonctionnel et de l'utilisation de la pile comme gestionnaire de ressource automatique et ne fait de l'objet comme papy que lorsque y a que ca qui passe.
JAVA lui passe par du dynamic allcoation tout le temps, des API lourde et pas de parametrismes ni de gestion de la pile, ce qui imapct le style et les performances des programmes meme si depuis qqs temps la JVM arrive a corriger ca.
JAVA est bloque dans son paradigme tout objet et doit pedaler dur pour faire des choses simples. Sans parler du fait que JAVA ne peut pas aire autrement que violer SOLID et Demeter par design, la ou C++ et son aspect multiparadigme permet d'adapter son style au besoin.

Reply

Marsh Posté le 07-03-2013 à 15:27:29    

Tout à fait, si on veux comparer Java à quelque chose c'est plutôt C# mais pas C++.

Reply

Marsh Posté le 08-03-2013 à 11:58:48    

Joel F a écrit :


 
le C++ moderne se base sur le typage statique fort, la preponderance des algorithmes generiques parametriques, l'aspect fonctionnel et de l'utilisation de la pile comme gestionnaire de ressource automatique et ne fait de l'objet comme papy que lorsque y a que ca qui passe.
JAVA lui passe par du dynamic allcoation tout le temps, des API lourde et pas de parametrismes ni de gestion de la pile, ce qui imapct le style et les performances des programmes meme si depuis qqs temps la JVM arrive a corriger ca.
JAVA est bloque dans son paradigme tout objet et doit pedaler dur pour faire des choses simples. Sans parler du fait que JAVA ne peut pas aire autrement que violer SOLID et Demeter par design, la ou C++ et son aspect multiparadigme permet d'adapter son style au besoin.


 
Apres, des gens qui font que du c++ a papy, on en a des charettes, et quand t'arrives en parlant de généricité la bouche en coeur, on te rétorques que c'est "compliqué" ou "pas maintenable"

Reply

Marsh Posté le 09-03-2013 à 07:59:02    

t'as aussi le droit de changer de travail .. oh wait :o

Reply

Marsh Posté le 09-03-2013 à 08:00:28    

snafu8 a écrit :


 
Apres, des gens qui font que du c++ a papy, on en a des charettes, et quand t'arrives en parlant de généricité la bouche en coeur, on te rétorques que c'est "compliqué" ou "pas maintenable"


 
Plus serieusement, j'ai pas de solutions miracles. Tout ce passif vient surtotu du fait que le C++ ets tre stres tres mal enseigne en France.

Reply

Marsh Posté le 09-03-2013 à 09:44:33    

Joel F a écrit :


 
le C++ moderne se base sur le typage statique fort, la preponderance des algorithmes generiques parametriques, l'aspect fonctionnel et de l'utilisation de la pile comme gestionnaire de ressource automatique et ne fait de l'objet comme papy que lorsque y a que ca qui passe.
JAVA lui passe par du dynamic allcoation tout le temps, des API lourde et pas de parametrismes ni de gestion de la pile, ce qui imapct le style et les performances des programmes meme si depuis qqs temps la JVM arrive a corriger ca.
JAVA est bloque dans son paradigme tout objet et doit pedaler dur pour faire des choses simples. Sans parler du fait que JAVA ne peut pas aire autrement que violer SOLID et Demeter par design, la ou C++ et son aspect multiparadigme permet d'adapter son style au besoin.


 
Le java s'oriente vers du typage fort depuis pas mal de versions il me semble. Après effectivement tu ne gères pas la mémoire.
Maintenant, le java est beaucoup plus proche du C++ que les nouveaux langages de programmation "interprétés" qui émergent, type python ou Ruby.
 
Pour répondre à la question posée, j'apprendrais plutôt le C++, qui permets de passer très facilement à java ou C#, plutôt que l'inverse qui est moins vrai.
 


---------------
Ta peau de nacre noir, la courbe de ton cul
Reply

Marsh Posté le 10-03-2013 à 08:45:41    

I_m_back a écrit :


Le java s'oriente vers du typage fort depuis pas mal de versions il me semble.


 
Tantq ue Object existera, y aura des mecs pour ecrire du caca.
Le tout Objet est une impasse.
 
Quant a la memoire, c'ets surtotu le fait de pas acceder à la stack qui est detrimental.

Reply

Marsh Posté le 10-03-2013 à 11:27:15    

Genre.
Genre, en supprimant object, on fera disparaitre le code de merde. Le code de merde est pas lié à un paradigme ou un autre, il est là parce qu'il existe des codeurs de merde, des deadlines, des chefs de projet avec des restrictions pourries, etc.

Reply

Marsh Posté le 10-03-2013 à 14:42:01    

snafu8 a écrit :

Genre.
Genre, en supprimant object, on fera disparaitre le code de merde. Le code de merde est pas lié à un paradigme ou un autre, il est là parce qu'il existe des codeurs de merde, des deadlines, des chefs de projet avec des restrictions pourries, etc.


 
J'ai pas dit le contraire, c'est comme les gens en C++ qui font encore des new partout et pas de RAII ou les aficionados de l'inline assembly...
 
Mon commentaire était surtout pour dire que vu comment le paradigme "Object ou je trépasse" est tellement pervasif au langage que c’est peine perdu,
les gens n'ont *pas* le choix :{
 
T'auras pas de petit pain si c'est ca :o

Reply

Marsh Posté le 19-03-2014 à 13:10:17    

gilou a écrit :


De Koenig et Moo:
- Accelerated C++ pour avoir rapidement les bases


 
 
merci je vais prendre celui la, je 'suivais' les cours du ex site du zero, ayant déjà eu des cours de Java je m'y suis retrouvé mais je suis passé à coté de pas mal de choses parce que c'était pour moi, mal expliqué, mais bon comme c'est gratuit je n'ai rien dis :D
 
même un bon bouquin ne vaux pas un bon cours, mais bon à mon age j'ai pas forcement l'envie d'y retourner non plus  [:azylum] alors ça sera : un bon bouquin  
 
 [:americas]


---------------
Mon topic - Mon Feed-Back
Reply

Marsh Posté le 22-03-2014 à 13:25:29    

in_your_phion a écrit :

perso je pense que si tu veux comprendre le C, il faut lire celui écrit par Lionel Ritchie & Korrigan
http://en.wikipedia.org/wiki/The_C [...] g_Language


 
Très bonne blague "Lionel Ritchie & Korrigan" :D


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 25-03-2014 à 20:02:41    

Et vous pensez quoi de Wikibooks: Programmation C++ (debutant) ??
http://fr.wikibooks.org/wiki/Progr [...] troduction


Message édité par Jonathan2304 le 25-03-2014 à 20:04:22
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed