OVH Cloud OVH Cloud

Chercher un livre sur le C avec certains critères.

200 réponses
Avatar
Francois
Bonjour à tous,

Je débute dans le C et personnellement j'apprends surtout avec les
livres. J'ai commencé "Livre du C premier langage" de Delannoy (je
précise que j'avais quand même des petites notions de programmations,
même si, à mon sens, j'étais [ et suis encore ? ] vraiment ce qu'on
appelle un débutant).

Je suis en train de lire le K&R (deuxième édition) qui est bien sûr
beaucoup plus difficile. C'est du concentré, mais quand on y regarde de
prêt, c'est quand assez précis et bien fait. Ceci étant, il y a des
choses qui ne me satisfont pas complètement.

Je trouve que ce livre à une approche trop éloignée de la machine
(comment une donnée est encodée ? comment se passe l'histoire du signed
ou unsigned du point de vue de la machine etc.). Je m'explique.

Bien sûr, le langage C est un langage abstrait de "haut niveau" qui se
doit (en principe) de ne pas faire référence à la machine. Donc c'est
normal qu'un livre sur le C ne parle pas (trop) des problèmes qui
dépendent de l'architecture. Ceci étant, j'aimerais savoir si un tel
livre existe malgré tout. Un livre qui expose le langage C et qui
n'hésite pas de temps en temps à parler de ce qui se passe dans la
machine (bien sûr, justement, ce qui se passe dépend de la machine et
n'est pas universel, mais le livre pourrait présenter les choses sur
seulement une architecture "classique" par exemple). Bon, si je pouvais
éviter les circuits électroniques et compagnie quand même, ça serait
bien. Qu'on me dise que "le complément à 2 fait que l'addition devient
plus simple pour l'ordinateur puisqu'il suffit de faire une addition
classique" me suffit amplement. Une preuve de cela en passant des
explications sur des circuits électroniques peut-être me serait un peu
indigeste.

Bref, j'espère avoir été clair sur cette sorte de compromis que je
recherche (existe-t-il ?). Vous pouvez aller voir cette discussion (où
mon pseudo est sisco)

http://www.siteduzero.com/forum-83-245206-p1-afficher-le-codage-binaire-du-contenu-d-une-variable.html

qui pourra peut-être préciser mes aspirations.

Un livre en français, ça serait le top. Mais en anglais, ça le fera aussi.


Je vous remercie d'avance pour votre aide.



François

10 réponses

Avatar
Marc Boyer
On 2008-03-14, candide wrote:
On 14 mar, 09:45, Marc Boyer
wrote:
On 2008-03-13, candide wrote:
ta part. Mais ce n'est pas forcément grave. Tu ne seras ni
le premier ni le dernier programmeur du dimanche...


Tu viens de descendre bien bas et pas seulement dans mon estime.


Non, c'est un petit coup de provoc assumé.


Je n'en crois pas un mot : ou bien c'est délibéré


Oui, c'est ce que je dis.

C'est d'ailleurs
une technique pédagogique que j'utilise quand la situation
semble bloquée en général, un "ça passe ou ça casse".


technique pédagogique ? ben alors là t'aggraves ton cas.


Oui, j'assume.
Il m'arrive de dire à mes étudiants "si un jour vous
écrivez ça, éviter de dire où vous avez été formé",
ou "vous êtes incompétents en calcul numérique" (ça,
je le dis chaque année).
Après, je ne prétends pas que ça atteigne son but
à chaque fois. Visiblement, avec toi, non. Mais comme
de toute façon c'était un peu la tentative de
la dernière chance.

Dans le genre pédagogue du dimanche t'es assez fort.


Justement, c'est vendredi ;-)

D'ailleurs, c'est toi qui avait commencé en résumant les
longues explications que nous avons pris le temps de présenter
par


Je n'ai jamais placé mes arguments à ce niveau mépris.


Susceptible ?

M'enfin bon, s'il faut le redire, je le redis "un programmeur
qui utilise des variables globales sans voir leur danger,
c'est un programmeur du dimanche, un amateur".
Ceci dit, je suis moi même à les heures jardinier du dimanche,
et je pense que tout horticulteur qui me verrai travailer
refuserait de me confier ses plants.

M'enfin bon, là, on passe du fond à la forme...
Si tu as encore des interrogations sur les variables globales,
tu peux essayer de reformuler tes questions, mettre en
exergue les contradictions que tu as pu voir dans
les réponse. Je veux bien même m'abstenir de répondre
si tu veux. Mais bon, Jean-Marc, Antoine, Marc E., et moi
avons, chacun à sa manière, passé du temps à te présenter
des arguments, que tu juges visiblement non convainquants...

Marc Boyer
--
Si tu peux supporter d'entendre tes paroles
Travesties par des gueux pour exciter des sots
IF -- Rudyard Kipling (Trad. André Maurois)




Avatar
espie
In article ,
Marc Boyer wrote:
si tu veux. Mais bon, Jean-Marc, Antoine, Marc E., et moi
avons, chacun à sa manière, passé du temps à te présenter
des arguments, que tu juges visiblement non convainquants...


Moi j'ai a peu pres laisse tomber. Je ne sais si je dois classer
notre candide en gros lourd ou en troll qui s'assume, mais dans les
deux cas, je ne saurais trop lui conseiller d'aller faire de vraies
experiences, style d'ecrire du code qui sert a quelque chose pendant
quelques mois, et apres de revenir.

Avatar
Francois
Désolé de m'immiscer dans vos conversations techniques, mais je voulais
juste avoir votre avis sur ce livre :

http://www.amazon.fr/gp/product/toc/0131774298/sr=8-1/qid05505930/ref=dp_toc?ie=UTF8&nR042011&qid05505930&sr=8-1

Merci


François
Avatar
Antoine Leca
En news:47d964d6$0$20280$, candide va escriure:
De fil en aiguille il apparait que votre discours, aux uns et aux
autres, sur les variables est de moins clair et de plus en plus à
géométrie variable.


Si tu penses qu'il n'y a qu'un seul discours, tu te trompes : c'est comme la
Cabale, en fait il y a en a plusieurs...

Maintenant, si tu penses que mon discours est à géométrie variable, je
serais heureux de comprendre ce qui te fait penser cela.


Antoine

Avatar
candide
In article ,
Marc Boyer wrote:
si tu veux. Mais bon, Jean-Marc, Antoine, Marc E., et moi
avons, chacun à sa manière, passé du temps à te présenter
des arguments, que tu juges visiblement non convainquants...


Moi j'ai a peu pres laisse tomber. Je ne sais si je dois classer
notre candide en gros lourd ou en troll qui s'assume, mais dans les
deux cas, je ne saurais trop lui conseiller d'aller faire de vraies
experiences, style d'ecrire du code qui sert a quelque chose pendant
quelques mois, et apres de revenir.


Tu viens d'ouvrir le post le plus utile de l'histoire fclc ...


Avatar
Marc Boyer
On 2008-03-14, Marc Espie wrote:
In article ,
Marc Boyer wrote:
si tu veux. Mais bon, Jean-Marc, Antoine, Marc E., et moi
avons, chacun à sa manière, passé du temps à te présenter
des arguments, que tu juges visiblement non convainquants...


Moi j'ai a peu pres laisse tomber.


Je suis pas loin de le faire.

Je ne sais si je dois classer
notre candide en gros lourd ou en troll qui s'assume,


Une sorte de St Thomas plutôt. Sauf que le problème
des variables globales (merci au passage d'avoir changé
le titre) n'est pas aussi simple à voir qu'une plaie
au côté.

Marc Boyer
--
Si tu peux supporter d'entendre tes paroles
Travesties par des gueux pour exciter des sots
IF -- Rudyard Kipling (Trad. André Maurois)


Avatar
espie
In article <47da9ead$0$1092$,
candide wrote:
Tu viens d'ouvrir le post le plus utile de l'histoire fclc ...


Ouaip, mais vu mon historique, je peux me le permettre.

;->

Avatar
candide

Désolé de m'immiscer dans vos conversations techniques, mais je voulais
juste avoir votre avis sur ce livre :

http://www.amazon.fr/gp/product/toc/0131774298/sr=8-1/qid05505930/ref=dp_toc?ie=UTF8&nR042011&qid05505930&sr=8-1




Je l'ai lu en grande partie. Ce livre est encensé dans certains milieux.
Et puis beaucoup le citent ou le recommandent sans l'avoir lu.

Mon avis : c'est le prototype du livre m'as-tu-vu. Le style est assez
insupportable, le sous-titre est déjà tout un programme, tout y est
ampoulé et pompeux, l'auteur est incapable de dire les choses
simplement, les _titres_ de chapitres sont à rallonge (ça se veut être
de l'humour style Woody Hallen), les citations en exergue sont
interminables, c'est verbeux, rempli d'anecdotes "People" pour initiés,
tu vas y retrouver tout le botin mondain du C. Et souvent, c'est la
montagne qui accouche d'une souris ou alors, à moins d'être initié, tu
ne sais même pas où il veut en venir. Je trouve la mise-en-forme du
texte et l'organisation du contenu de l'ouvrage particulièrement peu
soignés pour ne pas dire anarchiques en réalité, il saute du
coq-à-l'âne, il passe sans crier gare du trivial au compliqué, les
informations semblent se suivre sans ordre ni suite, il ouvre sans cesse
des parenthèses, il s'attarde sur des détails, bref il ne sait pas
hiérarchiser l'information. Je ne dis pas qu'il n'y a pas quelques
remarques intéressantes de-ci de-là mais elle sont tellement cachées que
ça en devient décourageant. Si tu rapportes les informations pertinente
sur le C que ce livre contient, tu divises sa taille par 5. Ce n'est
certainement pas avec ce livre que tu vas apprendre le C.

Avatar
candide
On 2008-03-13, candide wrote:

Mon expérience d'enseignement est qu'un groupe de 3-4 étudiants
est capable d'avoir en tête l'organisation d'un code d'environ
5000 lignes, développé sur 2 mois, sans avoir réellement besoin



Parce que le projet a de *multiples* objectifs. C'est d'abord
un projet Java,
Dans ton précédent message, tu parlais d'un projet des étudiants en

............ java ????????


Oui.
Parce que je pense que la question des variables globales
est assez indépendante du langage. Non ?



Ne fais pas semblant de ne pas comprendre le sens de mes points de
suspension et mes points d'interrogation.

1°) Vu le contexte, personne sauf toi ne pouvait comprendre dans ton
propos initial :

------------------------------8<----------------------------
Mon expérience d'enseignement est qu'un groupe de 3-4 étudiants
est capable d'avoir en tête l'organisation d'un code d'environ
5000 lignes, développé sur 2 mois, sans avoir réellement besoin
de conception, méthode, etc.
------------------------------>8----------------------------



que tu pouvais parler d'un projet qui ne soit pas écrit en C,
d'ailleurs, c'est exactement ce qu'Antoine Leca a compris puisqu'il t'a
même suggéré :

---------------8<----------------
Pourquoi ne pas les plonger sur la maintenance d'un petit bout de code
_existant_ (disons, un module de 2000-3000 lignes) inséré dans un
projet de

plusieurs dizaines de milliers ?
Avec le phénomène OpenSource, ce ne devrait pas être mission
impossible de

trouver cela (qui a dit, un driver pour Linux^W MachinBSD ?)
--------------->8-----------------



2°) Et tu crois qu'un étudiant qui devra coder en C l'équivalent de tes
5000 lignes de code en java (donc sans doute BEAUCOUP plus de lignes en
C pour faire la même chose) pourra le faire sans "avoir réellement
besoin de conception, méthode" ? permets-moi d'en douter.

A t'entendre, on pourrait considérer que quelqu'un qui sait programmer
au moyen cours en Java saura le faire en C par simple transposition.


La prochaine veuille faire preuve de plus de précision dans tes propos
et veuille trouver les exemples adéquats.





Avatar
candide
En news:47d964d6$0$20280$, candide va escriure:
De fil en aiguille il apparait que votre discours, aux uns et aux
autres, sur les variables est de moins clair et de plus en plus à
géométrie variable.


Si tu penses qu'il n'y a qu'un seul discours, tu te trompes : c'est comme la
Cabale, en fait il y a en a plusieurs...

Maintenant, si tu penses que mon discours est à géométrie variable, je
serais heureux de comprendre ce qui te fait penser cela.




En ce qui te concerne non car tu as évité pour l'instant de t'exprimer
de manière catégorique, définitive et moralisatrice sur la question des
variables globales, sans doute un des péchés capitaux du programmeur.