Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
964 connectés 

  FORUM HardWare.fr
  Programmation
  Divers

  [Tout]Par où commencer ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Tout]Par où commencer ?

n°1444285
4cv
Posté le 18-09-2006 à 18:04:15  profilanswer
 

Bonjour, je me présente.
Je m'apelle David, actuellement en première scientifique et agé de 15 ans.
J'ai toujours eu l'envie de programmer des trucs depuis que j'ai touché a un ordi mais je n'ai pas vraiment pu
par manque de motivation, j'ai un peu touché a tout mais pas en profondeur et j'ai tout oublié.
L'année derniere un pote (nommé Colas agé lui de 16 ans et qui était dans ma classe l'année dernière et cette année aussi) a amené au lycée la calculette graphique (Casio graph 35) de sa soeur car il avait malencontreusement (orthographe ?) cassé la sienne.
J'y ai un peu touché et je me suis dis en le regardant : "On peux programmer la dessus non ?".
Depuis on s'est mis a toucher a divers fonctions sans tutoriels ni aide mais avec une seule calculatrice.
Cette année j'ai acheté la mienne (Casio graph 100+) et je touche un peu aussi au langage de programmation qu'elle contient, teste divers fonctions, et chaque jour avec mon ami nous nous concertons afin de nous raconter nos découvertes, etc.
Nous ne maîtrisons pas encore le langage qu'offrent les calculatrices que nous possedons mais nous avons pu rapidement constater les limites de ce langages nottement le manque flagrant de variables et un mode graphique très fastidieux (pixel par pixel quasiment).
Nous nous sommes donc dis que d'apprendre ce langage à fond serait une perte de temps car il y a bien d'autres langages qui pourraient faire des merveilles avec le même temps d'apprentissage.
Nous nous sommes donc motivés, nous voulons vraiment nous mettre à apprendre un langage surtout que mon optique professionnelle serait dans la programmation et lui voudrais être ingénieur informatitien.
Peut-être que nous sommes un peu en retard, mais nous voulons rattraper ce retard en apprenant un langage et nous entrainer à la programmation, nous sommes prêts à suivre divers tutoriels et à acheter des bouquins.
 
Mais ce que nous nous demandons c'est par quel langage commencer étant donné que nous n'avons quasiment aucunes bases.
C'est pour cela que je vous demande à tous un conseil.
Merci de me (nous) répondre.

mood
Publicité
Posté le 18-09-2006 à 18:04:15  profilanswer
 

n°1444290
chani_t
From Dune
Posté le 18-09-2006 à 18:09:50  profilanswer
 

De nombreux topics en parlent déjà...
 
Pour moi le C, puis le C++ est un language à connaitre, tout du moins à apprendre.
Il est actuellement impératif de se focaliser sur la programmation orienté objet, chose que le C++ permet (à son niveau).
 
une fois ce langage découvert, de nombreux autres sont disponibles, tout aussi varié que les langues... à choisir quand vous aurez des besoins plus marqué.

n°1444291
Sebou77
French Tech powaa :-)
Posté le 18-09-2006 à 18:11:15  profilanswer
 

ça va partir en troll :whistle:
 
C pour commencer :o

n°1444292
Joel F
Real men use unique_ptr
Posté le 18-09-2006 à 18:13:35  profilanswer
 

algorithmie, puis C. Ensuite au choix : C++,JAVA,C#
Commencer par un langage sans avori fait d'algorithmie c'ets se tirer une balle dans les corones :o

n°1444296
4cv
Posté le 18-09-2006 à 18:17:49  profilanswer
 

Merci de vos réponses mais l'algorithmie c'est quoi ce truc ? J'ai deja entendu le mot algorithme mais je sais pas a quoi ça correspond, je regarde sur le dico :p

n°1444297
gooopil
pfiew
Posté le 18-09-2006 à 18:18:10  profilanswer
 

Joel F a écrit :

algorithmie, puis C. Ensuite au choix : C++,JAVA,C#
Commencer par un langage sans avori fait d'algorithmie c'ets se tirer une balle dans les corones :o


 
Algorithmie je suis d'accord, y'a des méthodes à apprendre. Mais tu le fais au fur et à mesure de la découverte de ton langage. Après le C, je suis pas forcément d'accord :/ Le débutant n'a pas forcément d'intérêt à découvrir les joies des allocations mémoires et autres subtilités du C...M'enfin c'est que mon avis...

n°1444298
4cv
Posté le 18-09-2006 à 18:19:52  profilanswer
 

Algorithme : nm, Procédé de calcul constitué d'une suite d'opérations.
 
J'ai peur :(

n°1444301
gooopil
pfiew
Posté le 18-09-2006 à 18:29:35  profilanswer
 

4cv a écrit :

Algorithme : nm, Procédé de calcul constitué d'une suite d'opérations.
 
J'ai peur :(


 
Un exemple d'algo : le tri à bulle  
 
http://www-ipst.u-strasbg.fr/ipst/ [...] ibulle.htm

n°1444304
4cv
Posté le 18-09-2006 à 18:34:04  profilanswer
 

Enfait c'est comme un plan alors ?
Car des plans sur papier j'en faisait avant de me lancer dans l'écriture du programme.

n°1444305
gooopil
pfiew
Posté le 18-09-2006 à 18:43:32  profilanswer
 

Plus ou moins c'est ça. Ca permet d'éviter de se lancer tête baissée dans quelque chose avant de s'appercevoir que la méthode n'est pas bonne.  
Après y'a des algo connus qu'il ne sert à rien de réinventer, mais qu'il est extrêment utile de comprendre, ne serait-ce que pour les appliquer ou en créer de nouveaux pour son propre usage.


Message édité par gooopil le 18-09-2006 à 18:43:51
mood
Publicité
Posté le 18-09-2006 à 18:43:32  profilanswer
 

n°1444314
MagicBuzz
Posté le 18-09-2006 à 19:00:45  profilanswer
 

En gros, l'algo se fait sur deux niveaux :
Un premier où tu décris ce que fait "en général" le programme, et en n'allant pas plus loin que l'isolation des "objets métiers".
 
Genre, ton programme permet de représenter graphiquement un polynome
=> Tu vas avoir un objet métier de sasie des informations de la forumule
=> Tu vas avoir un objet métier de calcul des valeurs du polynome
=> Et un autre objet métier d'affichage du repère puis des points (peut être coupé en 2 objets pour plus de clareté d'ailleurs)
 
A ce niveau, tu vas te contenter de décrire ce qu'ils font, sans entrer dans le détail àl'intérieur : tu te concentre sur leurs inter-actions, afin d'isoler quelles fonctionalités ils doivent proposer.
 
=> Genre "Calculer" doit avoir une méthode "CalculerPoint"
=> "Afficher" doit avoir une méthode "afficher point"
Et l'interaction entre les deux, c'est :

pour chaque point x des abscices
  Afficher.AfficherPoint(Calculer.CalculerPoint(x))
fun pour


 
Une fois ce niveau de détail débroussaillé, tu sais pas où commencer, et surtout, tu peux commencer à écrire l'objet Calculer alors que ton ami peut écrire de son côté l'objet Afficher.
 
Ensuite, le second niveau, c'est de décrire l'algorythmie de chaque objet métier. Ainsi, tu vas décrire comment "CalculerPoint(int x)" doit se débrouiller pour te rammener une valeur qui correspond à ta formule.
 
Une fois que tout ça est fait, tu n'as plus qu'à transcrire dans le langage de ton choix. L'algorythmie est par définition indépendante du langage. C'est vrai jusqu'à un certain point (genre l'algo que je te propose ne sera pas forcément très adaptée au C, qui ne gère pas les objets)
 
Sinon, je ne suis pas un fervant défenseur du C pour apprendre. Ca me semble bien obscure pour débuter. Par contre, si tu commences par un autre langage, tu risques de ne jamais vouloir t'y mettre par la suite (trop "chiant" à programmer).


Message édité par MagicBuzz le 18-09-2006 à 19:03:05
n°1444344
CNeo
Posté le 18-09-2006 à 20:06:18  profilanswer
 

Spoiler :

[HS]Ah, ca me rappelle moi il y a un an. :D
Avec choubi ( que je garde dans un coin de ma tête ).[/HS]


Message édité par CNeo le 18-09-2006 à 20:06:23
n°1444371
gizmo
Posté le 18-09-2006 à 20:22:00  profilanswer
 

Oz/Mozart, si tu n'as pas peur de l'anglais.  
Le bouquin officiel est un gros pavé (je pense qu'il existe en français, mais au double du prix anglais) qui parcourt quasiment tous les paradigmes de la programmation.  
C'est vraiment pas mal pour avoir un bon aperçu de ce qu'est la programmation, mais faut pas être pressé.

n°1444375
CNeo
Posté le 18-09-2006 à 20:26:04  profilanswer
 

gizmo a écrit :

Oz/Mozart, si tu n'as pas peur de l'anglais.  
Le bouquin officiel est un gros pavé (je pense qu'il existe en français, mais au double du prix anglais) qui parcourt quasiment tous les paradigmes de la programmation.  
C'est vraiment pas mal pour avoir un bon aperçu de ce qu'est la programmation, mais faut pas être pressé.


Perso j'avais lu Débuter en programmation au tout début et il était très bien.

n°1444388
MagicBuzz
Posté le 18-09-2006 à 20:42:51  profilanswer
 

Moi j'avais "Le Basic" sur mon Commodore 64 [:ddr555]

n°1444389
CNeo
Posté le 18-09-2006 à 20:43:16  profilanswer
 

MagicBuzz a écrit :

Moi j'avais "Le Basic" sur mon Commodore 64 [:ddr555]


 :??:

n°1444391
MagicBuzz
Posté le 18-09-2006 à 20:45:42  profilanswer
 

ben moi je suis un vieux de la veille, à l'époque Basic était livré de base sur les ordinateurs (pas des PC) et c'était à peu près le seul langage utilisable sur ce type de machines.
J'avais aussi logo [:veryfree]

n°1444394
CNeo
Posté le 18-09-2006 à 20:51:19  profilanswer
 

MagicBuzz a écrit :

ben moi je suis un vieux de la veille, à l'époque Basic était livré de base sur les ordinateurs (pas des PC) et c'était à peu près le seul langage utilisable sur ce type de machines.
J'avais aussi logo [:veryfree]


En fait dans ce livre on commence par la programmation non graphique pour bien comprendre tous les principes.

n°1444427
Joel F
Real men use unique_ptr
Posté le 18-09-2006 à 22:36:53  profilanswer
 

gooopil a écrit :

Le débutant n'a pas forcément d'intérêt à découvrir les joies des allocations mémoires et autres subtilités du C


bah faudra bien s'y frotter un jour ou l'autre. Bien expliqué ca passe totu seul

n°1444437
gizmo
Posté le 18-09-2006 à 23:37:51  profilanswer
 

Joel F a écrit :

bah faudra bien s'y frotter un jour ou l'autre. Bien expliqué ca passe totu seul


Euh... je ne vois vraiment pas en quoi ce serait un passage obligé. Mis à part si tu cherches à faire de la gestion de matos ou des traitements qui nécessitent une manipulation au bas niveau, tu peux très bien t'en passer toute ta vie de programmeur sans que cela ne soit handicapant.

n°1444448
masklinn
í dag viðrar vel til loftárása
Posté le 19-09-2006 à 00:49:27  profilanswer
 

Joel F a écrit :

bah faudra bien s'y frotter un jour ou l'autre.


Pas d'accord, il n'y a aucune raison de jamais s'y frotter, sauf à vouloir se lancer dans la programmation de drivers, le hacking de kernel ou l'embedded [:spamafote]
 
Et quand bien même, ça peut parfaitement être appris par la suite [:spamafote]


Message édité par masklinn le 19-09-2006 à 00:49:49

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1444468
chani_t
From Dune
Posté le 19-09-2006 à 08:36:50  profilanswer
 

gooopil a écrit :

Algorithmie je suis d'accord, y'a des méthodes à apprendre. Mais tu le fais au fur et à mesure de la découverte de ton langage.


 
+1.
Il est vrai qu'il est bon de savoir structurer ses programmes, cependant, ça peut s'apprendre sur le fil. (et puis je trouve que c'est plus facile d'appliquer un algo, que de faire de l'algo pour le théorie.. :o)
 

gooopil a écrit :

.. Après le C, je suis pas forcément d'accord :/ Le débutant n'a pas forcément d'intérêt à découvrir les joies des allocations mémoires et autres subtilités du C...M'enfin c'est que mon avis...


 
Hum... et bien justement tous les langages devraient EDIT : demander avoir la "rigueur" du C, avec les déclaration et tout et tout... (Avis persos hein)
 
Mais le fait que ce soit un langage complet est interessant car avec un langage tu peux toucher à tout ce que tu peux découvrir comme subtilité dans la prog.
 
Persos j'ais commencé par du basic (lynx 64ko de RAM :D), puis QWbasic/Qbasic, puis Turbo pascal (sympa pour apprendre, mais trés limité), C/C++ (trés complet, mais certe pas évident de prime abord), etc..

Message cité 1 fois
Message édité par chani_t le 19-09-2006 à 08:50:26
n°1444470
masklinn
í dag viðrar vel til loftárása
Posté le 19-09-2006 à 08:44:19  profilanswer
 

chani_t a écrit :

Hum... et bien justement tous les langages devraient avoir la "rigueur" du C, avec les déclaration et tout et tout...


La rigueur? [:mlc]
 
Le C? [:mlc]
 
C'est une blague? [:mlc]
 
Le C est à la rigueur ce q'une motte de beurre fondu est au blindage anti-tank [:mlc]
 
Le C demande de la rigueur pour que tout ne parte pas horriblement en couille, mais le langage n'a aucune rigueur [:mlc]

chani_t a écrit :

Mais le fait que ce soit un langage complet est interessant car avec un langage tu peux toucher à tout ce que tu peux découvrir comme subtilité dans la prog.


Complet mon cul oui, le seul langage "complet" qui existe c'est Mozart/Oz, et uniquement parce que les mecs qui l'ont créé sont des malades, déjà que faire quelque chose qui ressemble à de la POO c'est la croix et la bannière en C, mais même pas en rêve il est possible de faire de la programmation fonctionnelle ou logique, ou de l'Aspect-Oriented Programming, ou du DBC proprement [:mlc]

Message cité 1 fois
Message édité par masklinn le 19-09-2006 à 08:49:29

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1444471
chani_t
From Dune
Posté le 19-09-2006 à 08:48:23  profilanswer
 

masklinn a écrit :

...
Le C demande de la rigueur pour que tout ne parte pas horriblement en couille, mais le langage n'a aucune rigueur [:mlc]


 
C'est bien la ou je voulais en venir o: :D
 
(HS... d'ailleurs, je ne vois pas pourquoi on utilise pas le beurre comme blindage :D / HS)
 
EDIT : Juste pour préciser avant de me retirer de ce débat, qui n'a pas pour but de justifier mon avis
 
Pour moi le C/C++, est un bon langage, car justement si tu fais n'importe quoi, tu obtiendras n'importe quoi, donc pour apprendre à programmer correctement, c'est bien (à mon sens). De plus tu parle de POO, C++ le gére peut être pas de façon parfaite, mais aborde le sujet plutôt bien....
Encore une fois, on ne parle ici que d'un langage pour commencer, apprendre. Aprés chacun pourra voir dans chaque langage des avantages/inconvénients... (comme si un langage étais parfait   :sarcastic: ).

Message cité 1 fois
Message édité par chani_t le 19-09-2006 à 09:02:54
n°1444475
masklinn
í dag viðrar vel til loftárása
Posté le 19-09-2006 à 08:51:49  profilanswer
 

J'vois pas en quoi le fait que tout parte en couille si on est pas assez rigoureux est une bonne chose, à ce moment là autant faire du VB ou du PHP, c'est pareil [:mlc]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1444480
gizmo
Posté le 19-09-2006 à 09:09:59  profilanswer
 

chani_t a écrit :


Pour moi le C/C++, est un bon langage, car justement si tu fais n'importe quoi, tu obtiendras n'importe quoi, donc pour apprendre à programmer correctement, c'est bien (à mon sens). De plus tu parle de POO, C++ le gére peut être pas de façon parfaite, mais aborde le sujet plutôt bien....
Encore une fois, on ne parle ici que d'un langage pour commencer, apprendre. Aprés chacun pourra voir dans chaque langage des avantages/inconvénients... (comme si un langage étais parfait   :sarcastic: ).


 
Un langage qui te force à te concentrer sur la taille mémoire d'un vecteur quand tu veux apprendre un algorithme de tri est un mauvais langage, pédagogiquement parlant. Il rajoute du bruit inutil autour du véritable problème algorithmique.

n°1444622
MagicBuzz
Posté le 19-09-2006 à 14:20:22  profilanswer
 

gizmo a écrit :

Euh... je ne vois vraiment pas en quoi ce serait un passage obligé. Mis à part si tu cherches à faire de la gestion de matos ou des traitements qui nécessitent une manipulation au bas niveau, tu peux très bien t'en passer toute ta vie de programmeur sans que cela ne soit handicapant.


++ pour pouvoir s'en passer toute sa vie
 
pour l'éventuel handicap, je peux pas dire. jamais eu fondamentalement besoin en tout cas

n°1444626
MagicBuzz
Posté le 19-09-2006 à 14:27:16  profilanswer
 

Moi je dis vive l'Ada :o
 
C'est vrai d'abors.
 
Au moins, en Ada :
- Tu mélanges un long avec un int : proutch, sa compile pas car il faut lui expliquer comment faire. Ca évite de faire comme en C, de multiplier un char par un *int.
- Tu fais un traîtement succeptible de planter sans gérer l'exception, ça plante. Ca t'évite de faire un programme qui marche bien pendant 20 ans et crash en flamme sans raison apparente.
- Il fait le tour de la plus part des fonctionnalités de la majorité des langages, et va très souvent plus loin dans chacun de ces points que la majorité des langages (tu fais de l'ADA, tu sais réellement ce que c'est un prototype ou une surcharge d'oppérateur)
- Le langage est tellement verbeux et strict d'un point de vue syntaxe que pour apprendre à coder proprement, aucun ne lui arrive à la cheville (moi les déclarations de fonction dans la déclaration d'un for en C, ça me laissera toujours rêveur)

n°1444666
masklinn
í dag viðrar vel til loftárása
Posté le 19-09-2006 à 15:17:44  profilanswer
 

Ouais enfin à part le fait de planter si tu ne gères pas une exception tu peux avoir tout ça en Haskell et en largement moins verbeux :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1444672
MagicBuzz
Posté le 19-09-2006 à 15:24:39  profilanswer
 

Le verbeux moi je trouve ça bien.
Ca pousse à la réutilisabilité du code (marre de devoir réécrire 200 lignes pour faire une addition à chaque fois... du coup on se force à faire du modulable :D)

n°1444714
masklinn
í dag viðrar vel til loftárása
Posté le 19-09-2006 à 16:29:39  profilanswer
 

MagicBuzz a écrit :

Ca pousse à la réutilisabilité du code (marre de devoir réécrire 200 lignes pour faire une addition à chaque fois... du coup on se force à faire du modulable :D)


Non, ça pousse juste à avoir mal aux doigts et à devoir passer plus de temps à penser aux trucs qu'on est obligé de taper qu'aux trucs qu'on veut solutionner


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1444739
MagicBuzz
Posté le 19-09-2006 à 16:48:39  profilanswer
 

au contraire, ça oblige à réfléchir à la solution plutôt qu'à trouver une solution : t'as pas envie de réécrire 4 fois le même code, donc tu te lance dans le code qu'une fois que ton algo est infaillible.

n°1444788
4cv
Posté le 19-09-2006 à 17:33:01  profilanswer
 

Houla, beaucoup de réponses :p
Je pense que nous allons nous mettre au langage C mais nous aimerions savoir si vous avez un livre à nous recommander et un compilateur ?
Car il y a le choix et nous ne savons pas quoi prendre.
Merci.

n°1444799
_darkalt3_
Proctopathe
Posté le 19-09-2006 à 17:43:19  profilanswer
 

environnement de développement: code::blocks (http://www.codeblocks.org/)
livre: "Le langage C Ansi", Kernighan & richie
http://images-eu.amazon.com/images/P/2100051164.08.LZZZZZZZ.jpg


Message édité par _darkalt3_ le 19-09-2006 à 17:45:48

---------------
Töp of the plöp
n°1444825
4cv
Posté le 19-09-2006 à 18:20:23  profilanswer
 

Peut importe l'édition ou alors juste cette édition ?
Car j'ai cherché sur internet, je l'ai trouvé en plusieurs éditions differentes mais sous cette édition le livre était en rupture de stock.

n°1445204
big_dadi_f​at
Posté le 20-09-2006 à 12:35:41  profilanswer
 

4cv a écrit :


C'est pour cela que je vous demande à tous un conseil.


Pour ma part, je te conseille de commencer par:
 
ca: http://www.pise.info/algo/introduction.htm => Exélant lien pour débuté en algo...
 
ensuite: http://www.siteduzero.com/tuto-3-8 [...] -en-c.html
et: http://www.ltam.lu/cours-c/
 
ensuite: http://www.linux-kheops.com/doc/ansi-c/   et le livre de K&R.
 
ensuite: Le C++ (et la POO), et-puis d'autre langage...

Message cité 1 fois
Message édité par big_dadi_fat le 20-09-2006 à 12:42:07
n°1445211
masklinn
í dag viðrar vel til loftárása
Posté le 20-09-2006 à 12:41:46  profilanswer
 

big_dadi_fat a écrit :

ensuite: Le C++ (et la POO), et-puis d'autre langage...


Lol [:petrus75]

Citation :

"I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." -- Alan Kay


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1445218
souk
Tourist
Posté le 20-09-2006 à 12:59:35  profilanswer
 

http://pragmaticprogrammer.com/images/fr_ltp_medium.jpg
 
?
 
[:dawa]
je sais pas ce qu'il vaut, mais ca m'interesse de savoir [:dawa]

n°1445245
_darkalt3_
Proctopathe
Posté le 20-09-2006 à 13:16:23  profilanswer
 

4cv a écrit :

Peut importe l'édition ou alors juste cette édition ?
Car j'ai cherché sur internet, je l'ai trouvé en plusieurs éditions differentes mais sous cette édition le livre était en rupture de stock.


peu importe l'édition; à priori la dernière est la bonne


Message édité par _darkalt3_ le 20-09-2006 à 13:16:43

---------------
Töp of the plöp
n°1445592
MagicBuzz
Posté le 21-09-2006 à 09:21:46  profilanswer
 

souk a écrit :

http://pragmaticprogrammer.com/ima [...] medium.jpg
[:dawa]
je sais pas ce qu'il vaut, mais ca m'interesse de savoir [:dawa]


très mauvais bouquin :o
 
Je m'auto cite :
http://www.manga-torii.com/files/sgbd.pdf  
 
"Je rappelle toutefois que l’analyse et la conception du modèle des données sont deux choses qui se font avec un crayon et un cahier, assis à l’ombre d’un arbre (qui n’a pas de fruits si possible afin d’éviter les migraines)."
 
Il ne respecte même pas les recommandations les plus simples :o


Message édité par MagicBuzz le 21-09-2006 à 09:22:07
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Divers

  [Tout]Par où commencer ?

 

Sujets relatifs
graphique : Courbes qui ne devraient pas commencer au point d'originesql server 2000, d'où commencer?????!!!!!!
Commencer un site "pour les nuls"Comment avez-vous commencer de programmer en C ?
Par quoi commencer?Commencer a programmer à 13ans.
Cherche Bon livre pour commencer JAVApar où commencer son site
Comment bien commencer en actionscript/flash ?Je vais commencer un site
Plus de sujets relatifs à : [Tout]Par où commencer ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR