Snow Tiger :
KK >
, encore un troll anti-C++ ? Quelle surprise...
Ce n'est pas un troll anti-C++, mais un troll anti-objet en général.
Pour l'histoire des modèles d'objet excessivement complexes, le Java est l'exemple n°1. Les modèles d'objets du VB et de Qt (C++) sont plus raisonnables, par exemple.
Clad2 > Dev-C++, et si tu peux te le trouver (essaye VRAIMENT), Visual Studio.
Ce dimanche j'ai galéré avec LouisXIV sur Dev-C++ rien que pour faire un listing assembleur,
aucun dialogue ne le permet, il faut savoir que c'est la switch -S. Il y a 3 endroits différents où
on peut ajouter des switch à GCC, et aucun ne marche . J'ai donc compilé en ligne
de commande pour avoir mon listing...
Si tu veux avoir un truc hors du commun comme un listing assembleur, c'est normal de devoir passer par la ligne de commande.
Visual Studio est vraiment parfait. Sans doute le meilleur débogueur Windows en mode protégé,
http://sources.redhat.com/insight/ n'est pas mal.
une compilation puissante,
Rien ne vaut GCC!
le DirectX SDK qui ne marche quasiment qu'avec VC++,
DirectX marche très bien avec MinGW.
SDL qui colle parfaitement avec...
Il colle très bien avec MinGW aussi. Et c'est normal, ils sont un peu obligés de supporter GCC pour leur librairie portable.
Pour faire des trucs graphiques, utilise soit QBasic avec des graphismes DOS,
soit Visual Studio + SDL pour faire ça sous Windows (et c'est très portable)
MinGW+SDL plutôt.
NilEdeserte
:
Pour faire des trucs graphiques, utilise soit QBasic avec des graphismes DOS, --> C'est *presque* ce qu'il y a de plus basique, et ça permet de faire les choses les plus crades en prog
Selon mon expérience personnelle, le C permet beaucoup plus de choses "crades" que le QBASIC. Tout ce qu'on peut faire comme saletés en QBASIC (code spaghetti par exemple), on peut aussi le faire en C, et plus (pointeurs etc.).
NilEdeserte
:
Tu ne connais que les etrêmes, j'ai l'impression... QBasic est vraiment ce qu'il y a de pire pour commencer (je sais, j'ai commencé par là).
Personnellement, j'ai commencé par là et j'ai bien aimé!
A choisir, il vaut mieux qu'il fasse du Pascal (cf. encore les raisons invoquées plus haut, mais bon, il faudrait que tu commences à lire les topics avant de poster, j'en ai marre de me répéter) : c'est simple, ça oblige à travailler proprement.
Très mauvaise idée. C'est le genre de langage exotique pour lequel il n'y a pas de compilateur vraiment portable (il y a juste GNU Pascal qui est maintenu en-dehors du répositoire GCC (donc pas toujours à jour avec les portages de GCC) et qui ne comprend pas toutes les extensions de Borland communément utilisées). Le seul compilateur Pascal qui a eu un succès est Delphi, et c'est à cause du RAD, pas du langage (qu'ils ont d'ailleurs dû étendre pour rajouter tous les features du C++ qui manquaient dans l'Object Pascal de base). Et en plus c'est (dans sa seule application pratique) de l'objet, et tu as dit toi-même que tu n'aimais pas.

Le Pascal non-objet a fait la fin des dinosaures.
Par contre, quand on passe au C, on a des problèmes (notamment par rapport à la gestion de la mémoire et des pointeurs, AMHA).
En plus.
Sally :
Bon là je ne peux plus me retenir... très sincèrement, si tu veux quelque chose de simple, qui encourage (pour ne pas dire force) la programmation propre, qui a une interface avec un interpréteur méga-pratique pour apprendre et tester, bref parfaitement adapté aux débutants (c'est d'ailleurs avec que j'ai débuté en programmation sérieuse, j'avais fait quelques vagues trucs en basic dix ans avant mais bon) et malgré tout puissant, le meilleur choix est je pense ocaml. D'autant que, pour commencer, tu n'es pas du tout obligé de connaître tous les aspects du langage (par exemple il y a des objets mais on peut ne pas les utiliser).
Tu n'as pas encore plus compliqué pour débuter?
Les fonctions qui retournent des fonctions...
Oui, on peut faire de l'impératif en O'Caml (et heureusement!), mais ce n'est pas vraiment un langage standard pour faire de l'impératif.
Snow Tiger :
"Quant à ta tirade sur l'IDE, il peut très bien utiliser un IDE gratuit et très simple (surtout s'il travaille en mode DOS/Console, comme c'est conseillé quand on commence), il y en a de nombreux."
Bien sûr. Mais c'est juste que si des IDE sont payants, c'est pas pour rien
.
Si.
"A choisir, il vaut mieux qu'il fasse du Pascal"
Naaaan. Encore une fois, comme je ne connaît que les extrêmes,
il vaut mieux qu'il fasse soit du Basic, ce sera simple, soit du C parceque
c'est le langage de référence qui lui servira bien plus que le Pascal.
Clair.
"c'est simple, ça oblige à travailler proprement"
Mais il a le temps pour ça. Avant je ne programmais qu'en spaghetti
quand j'ai débuté. Quand j'ai découvert les blocs je m'y suis mis tout
seul, naturellement.
Oui, c'est nul, les langages qui limitent l'expressivité avec des excuses du style "ce n'est pas propre"!
Et d'ailleurs, on peut très bien programmer spaghetti en Pascal,
goto existe en Pascal, et on peut même sauter d'une fonction à une autre (!) en Pascal ISO (pas Borland). Et les labels sont numériques seulement, donc si on utilise
goto, c'est nettement plus illisible qu'en C ou en BASIC moderne (l'ancien BASIC (encore plus ancien que QBASIC) utilisait aussi les numéros seulement).
mais en C aussi il y a une zone car on ne peut pas déclarer
n'importe où
Pour la n
ème fois:
En C99 (et aussi dans le mode gnu89 qui est le standard de GCC 3)
, on peut déclarer ses variables locales où on veut!!!
Il faudra peut-être se mettre à jour avec le standard d'il y a 5 ans (et pas celui d'il y a 14-15 ans)!
Hippohmu :
A propos de caml, je dirais que les avantages en sont :
- apprendre à programmer proprement, le langage étant absolument intraitable envers les cochonneries qu'on peut trouver dans d'autres langages comme le C.
Tu présentes un gros défaut comme un avantage.
- apprendre de la programmation fonctionnelle. Il me semble que toute expérience qui s'écarte de la sempiternelle programmation impérative basique est une excellente chose.
Mais il vaut mieux commencer par l'impératif, c'est ce qu'il y a de plus simple à comprendre, et ce qui est le plus utile en pratique.