Débutant qui n'en veut a peur de Java

Voila mon cas :

Cumulant le double « handicap » Geek/rôliste ( si France 2 est sur le coup je suis bon pour passer au prochain JT ) j’ai toujours plus ou moins caressé ( tendrement hein ! ) l’idée de me mettre à la prog ( d’oû mon apparation ici ! ).
J’ai essayé d’imaginer un " projet " ( que tout rôliste à du vouloir faire un jour d’ailleurs ) qui est de programmer un petit générateur de dés ( d6.d8.d10.d12.d20.d100 ). Le problème étant que je ne sais pas quels " outils " utiliser ni à plus forte raison comment les utiliser…
A vrai dire je ne sais même pas si Java conviendrait pour ce genre de " projet " :stuck_out_tongue:

en résumé:

  • Java est-il bon pour ce genre d’utilisation ?
  • Si oui ( ou non ) de quoi ai-je besoin pour le faire ?
  • Quelques conseils simple et pratique pour débuter en douceur en évitant de me renvoyer à un tutoriel opaque que j’arrive pas à assimiler.

Si une bonne âme veut bien guider mes premiers pas dans ce monde un peu obscur et répondre à mes questions ?

( Je lui offre ma version collector de WOW :stuck_out_tongue: )

[quote=« NiarkNiark, post:1, topic: 25995 »]- Java est-il bon pour ce genre d’utilisation ?

  • Si oui ( ou non ) de quoi ai-je besoin pour le faire ?
  • Quelques conseils simple et pratique pour débuter en douceur en évitant de me renvoyer à un tutoriel opaque que j’arrive pas à assimiler.[/quote]

Bon, si tu es debutant, autant te dire que commencer par Java est un investissement.
C’est un langage orienté objet , donc c’est un ensemble de concept à saisir, pas forcement evident.
Si tu veux utiliser une petite interface graphique , tu vas taper tout de suite dans un truc un peu difficile pour un débutant.
( Sinon, oui java est tout a fait utilisable pour ce genre de chose )

Si tu veux commencer quand meme par Java, tu as besoin d’un IDE ( un environnement de developpement, là aussi apprentissage du soft ), et tu auras surtout d’un bouquin pour t’apprendre, sans ça , t’es cuit cuit cuit !

Mon conseil, si tu débutes vraiment dans la programmation, commence par Visual Basic. C’est de la programmation evenementielle, tres facile et pas chiante , idéal pour se lancer. Ca te donnera un avant gout et si ça te plait , tu peux te lancer dans le java ou le c# ( ce qui est, au niveau difficulté, exactement la meme chose )

Voilà !
Je veux pas de WoW donc je t’aiderai pas plus :stuck_out_tongue:
( c’est surtout que mes talents pédagogiques sont à chier )

Visual Basic pour commencer me semble un tres mauvais choix.

Le language en lui meme est tres bien et puissant mais le probleme c’est qu’il est un peu trop permissif au niveau de la syntaxe (oui meme avec l’option explicit :stuck_out_tongue: ) vaus mieux pour commencer apprendre avec un language plus « structuré ».

Les bouquins de Bruce Eckel qui sont vraiment pas mal ici

PS : Je n’ai abolument rien contre VB hein juste que je pense , que pour debuter, java est bien mieux. ET il ya moyen de faire des horreurs en java mais moins facilement :stuck_out_tongue:

va faire un tour chez eyrolle pour trouver de la doc,

et comme ide utilise eclipse.

Bussiere

ton machin tessemblerai a (en gros) :

[code]// il faut importer la classe random
import java.util.Random;
// ceci est le programme principal

public class lanceur{

// la methode main ou tout se passe principalement
public static void main(String[] args) {
// on initialise un objet des20 qu’on appel mondes20
des20 mondes20 = new des20();
// on appel la methode lancer de se des20 qu’on met dans resultat
int resultat = mondes20.lancer();

}

}

// la on créé un objet des 20
public class DES20 {
// on crée un objet random cf le import
private static Random generateur = new Random();

// on crée une methode de DES20 aka comportement
public static int lancer() {
// on genere le nombre
int i = generateur.nextInt(20);
}
// et on le retourne
return i;
}[/code]

Oh là là là… vous voulez le faire fuire?

Le qbasic il est plus dans windows de base (tiens non…) ?

Mmmm… moi je te conseille PERL et parce que… (okok).

Bon ok. Alors pour t’éclater vite, ne pas avoir d’ide à installer, de la doc à lire et des classes machins, je serais toi là maintenant j’essayerais « bêtement » en javascript. Pq? Parce que pas de compilation, affichage dans un browser (« hé regarde machin je suis dans l’INTERNET FFS »), résultat visible tout de suite et si ça t’emmerde la prog t’auras au pire perdu une heure de ta vie avec le bloc note plutôt qu’une semaine à lire de la doc java. Ca me parait mieux comme approche pédagogique pour « programmer » (on fait un truc ça marche, on sait si on aime ou pas) (évidemment si dans un an tu ne fais toujours QUE du js on vient te pêter les genoux hein… :stuck_out_tongue: )

Tiens d’ailleurs: http://www.toutjavascript.com/savoir/savoir08.php3 (y a un exemple de générateur de dés en bas).

Après si t’accroches → visual express la version que tu veux ou java ou cobol.

edit: et fais comme tout le monde hein… tu pêtes le champagne quand ton « hello world » s’affiche ^^

io ca roxe aussi tant qu’on y est
juste pour dire que perl, tu as besoin de 4 modules
or sur ces 4 modules trois ont besoins de modules pour marcher dont deux ou il leur faut deux modules chacun.
Puis tu te retrouve a installer 26 modules a la fin.
3615 mylife inside plus jamais le perl.

Bussiere

D’après moi, il n’a aucun besoin d’une interface graphique pour programmer, et n’a aucun besoin d’un affichage graphique non plus.

Exit l’ide
Exit Visual Basic

Du bon vieux langage C.
C’est le langage que j’ai appris en premier en arrivant à l’IUT informatique.
Il est très documenté, il est relativement portable, il introduit bien aux notions de programmation.

Il te suffit de télécharger DJGPP ici
http://www.delorie.com/djgpp/

De te trouver un bon éditeur de texte, zou, en route vers l’aventure

Question débile : sous quel systeme ?
Si c’est pour du windows, te fais pas chier avec java… prends plutot .net.
Pour un débutant… bah, c’est plus ou moins pareil, sauf que tu sera beaucoup plus aidé, que ca soit par la doc ou par la communauté.

Pour commencer, tu peux télécharger Visual C# Express, gratuitement sur le site MSDN.

[quote=“etherealwtf, post:7, topic: 25995”]Il te suffit de télécharger DJGPP ici
http://www.delorie.com/djgpp/

De te trouver un bon éditeur de texte, zou, en route vers l’aventure[/quote]
Si c’est pour faire du C/C++ faut pas forcément utiliser des outils aussi “roots”. Y’a Visual C++ 2005 express qui est tout aussi gratuit et tellement convivial. Faut pas se priver des bonnes choses.

edit : et là je me rends compte que je viens de dire plus ou moins la même chose que Tzim, on va dire +1 donc. Par contre je ne sais rien dire sur C# je ne m’y suis pas encore mis sérieusement.

Pour commencer le java VRAIMENT sans douleur, tu le fait avec beanshell. C’est du java interprété, c’est facile tout plein et ça t’évitera de prendre de salle habitudes (die VB, die perl !).

Et pourquoi pas tenter Python ?
J’ai acheté le livre “Appre,dre à Programmer avec Python” d’O’reilly France et c’est SUPER simple à piger et la méthode est telle que dès les premières pages on s’amuse à créer ses trucs perso (et en ligne de commande ce que tu veux ça se fait dès ces premières pages… j’exagère un peu ok)

[quote=« etherealwtf, post:7, topic: 25995 »]D’après moi, il n’a aucun besoin d’une interface graphique pour programmer, et n’a aucun besoin d’un affichage graphique non plus.

Exit l’ide
Exit Visual Basic

Du bon vieux langage C.
C’est le langage que j’ai appris en premier en arrivant à l’IUT informatique.
Il est très documenté, il est relativement portable, il introduit bien aux notions de programmation.[/quote]
Bah je vais ajouter mon grain de sel dans l’histoire (même si je doute un peu que le petit tas de sel que forme déjà ce thread aide NiarkNiark) en me joignant à l’avis de monsieur : on en est pas à de la prog orientée objet, on en est pas à faire de l’affichage. NiarkNiark ne veut finalement faire que de l’algo.

Donc clairement, on se prend pas la tête : le vénérable C ou alors, aussi didactique (si ce n’est plus), PASCAL. :stuck_out_tongue:
La POO, c’est suffisament complexe comme ça, alors si on commence par brûler les étapes…

C’est clair que le VB pour apprendre c’est à éviter car beaucoup trop permissif. Il doit bien exister des applications bien écrites mais à cause de sa facilité je pense qu’il en existe beaucoup plus de très mal écrites.

Le C et le C++ sont à mon avis de trop bas niveau. A moins de vouloir programmer niveau système pourquoi s’emmerder avec des pointeurs de pointeurs pour appeler une fonction.

Moi le langage que je prefères c’est le Pascal ou plus précisemment Delphi. J’ai réussi à convertir des professionnels comme des non-professionnels à Delphi. L’interêt de Delphi c’est que c’est moins dur que C ou C++ tout en étant propre et pas permissif comme le VB.

Sans tomber dans les extrêmes comme VB (permissifs) ou C (pointu) l’idéal pour apprendre est un langage intérmédiaire comme Delphi ou effectivement C# ou Java qui ont la côte.

Quoi ? On dit du mal du C++ ? Mise à mort ! :stuck_out_tongue: Non sans déconner, c’est pas à recommander pour débuter, mais le C++ c’est beau. Eh oui.

Bon, ceci dit, n’oublions pas un point important sur l’aspect didactique. Un langage prope c’est bien, mais faut aussi avoir connu un langage caca pour bien en réaliser la valeur… Je suggère une mini-initiation cobol ou fortran pour comprendre.

Mais surtout, le point important d’après moi, c’est la motivation. Faut commencer avec un langage qui permet de réaliser quelque chose, de voir un résultat, et de jouer avec. Bien sûr avec le temps et l’expérience on se met à aimer quand c’est bien propre et bien structuré. Cependant, pour vous je ne sais pas, mais pour moi ce qui m’a scotché à la programmation c’est les premiers trucs que j’ai torché n’importe comment en gw-basic. C’était mal écrit, ça marchait approximativement, et j’en comprenais pas le quart, mais j’avais l’impression de jouer avec la machine, pas de faire une interro de math.

Donc en gros, prends n’importe quoi pour commencer, l’essentiel c’est d’y prendre plaisir. Si tu t’y accroches, tu ressentiras de toi-même le besoin d’orienter tes choix vers un autre environnement.

Bof, le C me parait pas mal quand même : c’est sûr que tu faire des trucs tordus et bien crade mais bon, il n’en est pas encore là notre ami NiarkNiark. Tu peux déjà faire pas mal de trucs simplement, sans pour autant aller titiller le pointeur.

Ouhla bonne chance NiarkNiark… chacun vient prêcher pour sa paroisse et je note au passage quelques trolls savoureux (sisi, rien que juste au-dessus, Drealmer et ses exemples de « langages caca » :stuck_out_tongue: )

Visiblement il va d’abord falloir que tu détermine quelles sont tes motivations en programmation d’une manière plus générale, sous quel OS etc… afin de fixer un langage en particulier avant de revenir demander quoi que ce soit ici. :stuck_out_tongue:

Bon bah comme plusieurs personnes avant moi, je te conseillerais le C…
Le parce que :
-j’ai commencé avec, tout seul, et je me suis plutôt bien débrouillé.
-Il y a des bouquins bien faits, connus et reconnus (“Le C norme ANSI, 2nde édition”, de Kernighan et Ritchie, dont l’un est créateur du C, pour te donner le niveau des mecs) qui te permettront de te faire a la syntaxe du langage et aux fonctions de base.
-C’est aujourd’hui (je pense) un le langage incontournable si tu veux apprendre la programmation
-il te permet de TOUT faire, a peu de choses près (il doit y avoir des choses qu’on peut pas faire en C, mais je les connais pas), de la programmation très bas niveau (comme un driver) ou très haut niveau (comme de la gestion de BDD)
-Si après tu veux aller vers le C++ (qui est beau, c’est vrai), le C# ou encore le java, bah t’as deja toute la syntaxe de base… il te restera quasiment que les classes a apprendre (plus les templates, d’accord…)
-sur le net, tu trouveras tout ce que tu veux sur ce langage
-j’allais oublier que c’est un langage ultra portable…

Et pour répondre à phili_b, c’est bas niveau et s’emmerder avec des pointeurs de pointeurs, c’est peut-être s’emmerder, mais si t’as jamais vu ca, bah t’es comme un con quand on t’en met un devant le nez…

On voit que vous faites pas de cours de prog, les mecs.

La premiere chose a apprendre, c’est l’algorythmique. Je sais, c’est chiant, c’est pas utilisable pour faire un soft a la cool, mais c’est comme ca qu’on prend de bonnes habitude (enfin pas trop mauvaise).

Ensuite, et meme si j’adore le C, je trouve que c’est clairement pas le meilleur langage a apprendre en premier sans un vrai prof (comprendre: en autodidacte, c’est juste no way). C++, meme combat.

Concernant Java, il faut quand meme des bonnes notions d’objet. Delphi me semble plus abordable, de meme que C#, mais bon, je connais pas trop ces langages.

Enfin, on a deja eu cette discussion ici, un coup de search serait sympa (enfin moi j’ai la flemme :P)

LoneWolf
Ne pas confondre « son langage prefere » avec « le langage facile a apprendre » :stuck_out_tongue:

[quote=« molyss, post:17, topic: 25995 »]-Si après tu veux aller vers le C++ (qui est beau, c’est vrai), le C# ou encore le java, bah t’as deja toute la syntaxe de base… il te restera quasiment que les classes a apprendre (plus les templates, d’accord…)[/quote]Quand j’ai vu ceci, j’ai fait un léger bond sur ma chaise… :stuck_out_tongue:

… pourquoi je traîne encore là moi. C’est un coup à tomber dans un débat pas possible encore. Je me fais du mal…

Apprendre est une chose, comprendre en est une autre. C’est en faisant ses propres expériences qu’on réalise toute l’utilité de la théorie. Alors je répète : faut mettre les mains à la pâte et essayer tout ce qui passe par la tête et en tirer des conclusions. Et surtout faut pas que ce soit contraignant, faut s’amuser.

J’ai appris les deux en autodidacte, et maintenant c’est devenu mon métier. Faut pas généraliser, à chacun sa façon d’apprendre.

Tout à fait d’accord, tout ce qui permet de se familiariser avec la programmation est bon à prendre. Quand on conseille un langage c’est en fonction de son expérience, mais c’est justement les langages à l’origine de cette expérience qui sont nécessaires, pas ceux qui en résultent :stuck_out_tongue: