OVH Cloud OVH Cloud

[débutant]Quel langage choisir?

38 réponses
Avatar
Stéphane OUTHIER
Bonjour tous le monde,

J'aurai besoin des lumières des âmes charitables.
j'aimerais apprendre un langage de programmation, et en particulier le C++.
Mais je connais très peu de choses en programmation.
Ma question est la suivante:
-Peut on commencer directement par l'apprentissage du C++, ou dois-je passer
par un autre langage avant (tel que le C).
-Est il possible d'apprendre depuis des ouvrages traitant du sujet, de
manière autodidacte? Si oui Quel sont les ouvrages les plus pédagogiques ou
les plus adaptés pour un autodidacte?

Par avance, je vous remercie des vos réponse.

10 réponses

1 2 3 4
Avatar
Fabien LE LEZ
On Tue, 6 Jan 2004 08:56:03 +0100, "Christophe"
wrote:

OK : l'apprentissage d'un premier langage sans possibilités de présentations
écran (sauf séquentielles)
me parait extrèmement décourageant.


Franchement, l'apprentissage du C++ comme premier langage risque
d'être passablement décourageant...

--
;-)

http://www.gotw.ca/gotw/063.htm
http://www.gotw.ca/gotw/067.htm#2

Avatar
kanze
Arnaud ARZUFFI wrote in message
news:<btd2li$3mk$...

[...]
(si quelqu'un pouvait m'expliquer la nécessité d'existence simultanée
des objets "valeurs", des références et des pointeurs sur objets
plutôt que seulement des références ?).


Tu veux dire qu'on aurais pû faire comme Java, avec des pointeurs
uniquement ?

On aurait pû aussi se passer de for, dans la mesure que tout ce qu'on
exprime avec un for pourrait s'exprimer fort bien avec un while.

--
James Kanze GABI Software mailto:
Conseils en informatique orientée objet/ http://www.gabi-soft.fr
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16

Avatar
M. B.
"Stéphane OUTHIER" a écrit dans le message de
news: 3ff9cad0$0$6972$
Bonjour tous le monde,

J'aurai besoin des lumières des âmes charitables.
j'aimerais apprendre un langage de programmation, et en particulier le
C++.

Mais je connais très peu de choses en programmation.
Ma question est la suivante:
-Peut on commencer directement par l'apprentissage du C++, ou dois-je
passer

par un autre langage avant (tel que le C).
-Est il possible d'apprendre depuis des ouvrages traitant du sujet, de
manière autodidacte? Si oui Quel sont les ouvrages les plus pédagogiques
ou

les plus adaptés pour un autodidacte?

Par avance, je vous remercie des vos réponse.



Pourquoi ne pas commencer a faire joujou avec des choses simples
comme le tandem (HTML + javascript).

Ca permet de faire de jolies choses tres rapidement, sans outils
ni compilateurs, avec une litterature tres abondante.

Viendra ensuite la programmation orientee objet, le C++, etc ...

MB

Avatar
Michel Michaud
Dans news:btcpu1$858$, Loïc
Stéphane OUTHIER wrote:
J'aurai besoin des lumières des âmes charitables.
j'aimerais apprendre un langage de programmation, et en
particulier le C++. Mais je connais très peu de choses en
programmation.
Ma question est la suivante:
-Peut on commencer directement par l'apprentissage du C++,
Oui, mais ce n'est peut-être pas le langage idéal pour commencer la

programmation. Un langage de script et peut-être plus immédiat. Les
gens citent souvant python.


Un langage bien typé est d'après moi bien plus important que
« l'immédiat ». D'ailleurs avec un compilateur et une machine
modernes et rapides, et un environnement de développement
intégré, la plupart des langages de programmation seront plus
immédiats à l'utilisation, qu'un langage de script...

--
Michel Michaud
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/


Avatar
Alexandre
a écrit dans le message de
news:
Arnaud ARZUFFI wrote in message
news:<btd2li$3mk$...

[...]
(si quelqu'un pouvait m'expliquer la nécessité d'existence simultanée
des objets "valeurs", des références et des pointeurs sur objets
plutôt que seulement des références ?).


Tu veux dire qu'on aurais pû faire comme Java, avec des pointeurs
uniquement ?

On aurait pû aussi se passer de for, dans la mesure que tout ce qu'on
exprime avec un for pourrait s'exprimer fort bien avec un while.



Oui, et puis aussi quelle idée d'avoir bool puisqu'un "int" convient ?
et puis, pourquoi avoir std::list et std::deque ? etc...


Avatar
Michel Michaud
Dans news:btd2li$3mk$, Arnaud
Les langages "agréables" pour débuter sont, par exemple, Python ou
Java (Je mentionne Java par démagogie, parce que le langage est
assez élégant, mais je trouve l'API épouvantable).


Tu peux me donner un exemple de programme simple, qui pourrait
être fait par un débutant, et qui sera plus élégant en Java
qu'en C++ ? Je manque peut-être d'imagination après plus de
vingt ans d'enseignement de la programmation, mais les premiers
programmes que mes élèves ont toujours faits ressemblaient à
l'équivalent du pseudo-code suivant :

ÉCRIRE "Donnez la largeur et la longueur de votre terrain : "
LIRE largeur, longueur
surface= largeur * longueur
ÉCRIRE "Surface calculée du terrain : ", surface

En C++, c'est assez simple et direct, je dirais même que c'est
quasiment élégant... En Java, hum...

L'apprentissage du langage C++ se révélera plus difficile, parce
que, à cause de son héritage du langage C, sa syntaxe est très
souple, et une grande rigueur est nécessaire pour programmer
"proprement" ; le langage C++ est aussi extrêmement riche, parfois
en choses inutiles ou redondantes (si quelqu'un pouvait m'expliquer


Il ne faut effectivement pas essayer de tout apprendre de C++ en
même temps. Mais ce n'est pas un problème, c'est normal.

--
Michel Michaud
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/

Avatar
Michel Michaud
Dans news:btdq15$mvl$,
Personnellement, j'ai commencé l'apprentissage du C++ cette année.
J'ai fait l'acquisition d'un livre que je trouve très bien fait :
"Programmer en C++" édition Schaum's, auteur JR Hubbard.


Celui dont il est question ici ?

http://www.accu.org/bookreviews/public/reviews/p/p001507.htm

Peut-être y a-t-il une version récente et améliorée, mais d'après
la critique, tu n'auras pas appris exactement ce qu'il faut avec
ce livre...

--
Michel Michaud
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/

Avatar
Alexandre
Les langages "agréables" pour débuter sont, par exemple, Python ou Java
(Je

mentionne Java par démagogie, parce que le langage est assez élégant, mais
je trouve l'API épouvantable).


Oui, et puis si on a du mal à comprendre la POO, c'est pas l'idéal, Java ;-)

(si quelqu'un pouvait m'expliquer la nécessité d'existence simultanée des
objets "valeurs", des références et des pointeurs sur objets plutôt que
seulement des références ?).


Objets valeurs : essentiels pour travailler "bas niveau". Et puis, passer un
bool par référence constante c'est plus lourd ;-)
Objets références : pratiques pour éviter de passer un pointeur sur un
paramètre out, pratique pour éviter des copies, etc...
Objets pointeurs : est-ce utile de préciser l'interet des pointeurs ?

Le langage C++ ne comporte pas d'API standard
pour interface graphique dans sa spécification et les API de collections
comme la STL sont souvent d'une lourdeur syntaxique...
surtout pour un débutant !!! Difficile d'expliquer à qqn que

std::vector<int> V(10);
est bcp mieux que
int V[10];
alors que syntaxiquement c'est pas clair, qu'il faut déjà avoir compris la
notion d'espace de noms, de paramètre de type, de constructeur...


Et maintenant, surprise ! Après l'énumération de tous ces défauts,
j'affirme

que le langage C++ (que je trouve pas parfait, comme tous les langages),
est mon langage de programmation préféré, que j'utilise quotidiennement !
Oui, moi aussi ;-) (normal sur ce forum)


Avatar
Michel Michaud
Dans news:, Fabien LE
On Tue, 6 Jan 2004 08:56:03 +0100, "Christophe"
wrote:

OK : l'apprentissage d'un premier langage sans possibilités de
présentations écran (sauf séquentielles)
me parait extrèmement décourageant.


Franchement, l'apprentissage du C++ comme premier langage risque
d'être passablement décourageant...


Ce n'est pas mon expérience... Il est vrai que j'utilise C++
comme premier VRAI langage, mais que j'utilise du pseudo-code
non compilé pour montrer les bases. Et le passage au C++ est
alors plutôt stimulant...

--
Michel Michaud
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/


Avatar
Michel Michaud
Dans news:3ffb0ff4$0$7160$,
Le langage C++ ne comporte pas d'API standard
pour interface graphique dans sa spécification et les API de
collections comme la STL sont souvent d'une lourdeur syntaxique...
surtout pour un débutant !!! Difficile d'expliquer à qqn que

std::vector<int> V(10);
est bcp mieux que
int V[10];
alors que syntaxiquement c'est pas clair, qu'il faut déjà avoir
compris la notion d'espace de noms, de paramètre de type, de
constructeur...


Très souvent, il ne s'agit pas de faire peu avec presque rien,
mais de faire assez avec un peu :-) Soyons sérieux : dans combien
de programmes réels, as-tu jamais écrit int V[10]; ? Et même là,
je parie que tu avais d'autres variables pour garder le nombre
d'éléments réellement actifs, etc.

Alors je reprends ton argument : difficile à expliquer à quelqu'un
que le passage de paramètre des tableaux (de base) n'est pas comme
les autres paramètres, que la taille du tableau n'est ni variable
ni connue à partir de la variable, qu'on peut utiliser un autre
système si on veut un tableau de taille variable, que les indices
ne sont pas vérifiés, ...

Pour te rassurer, je t'assure que je n'ai pas plus de problèmes
dans l'enseignement des vecteurs, depuis que je montre les vector.
Au contraire, c'est plus simple pour tous les programmes qui sont
faits par la suite. (En plus, en mode DEBUG operator[] fait un
at qui vérifie les indices... fort utile !)

--
Michel Michaud
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/


1 2 3 4