Précédent   Forum du club des développeurs et IT Pro > Général Développement > Langages de programmation > Débuter
Débuter Forum d'entraide : Comment débuter en programmation ?
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 13/06/2009, 01h49   #141
Garulfo
Inactif
 
Inscription : juillet 2005
Messages : 1 958
Détails du profil
Informations personnelles :
Âge : 48

Informations forums :
Inscription : juillet 2005
Messages : 1 958
Points : 2 209
Points : 2 209
Citation:
Envoyé par Davidbrcz Voir le message
[...]
On a pas attendu la termodynamique pour faire des machines à vapeur.
En faite, si. Les deux origines coïncident à peu près. Les premiers travaux nommés « thermodynamique » datent du XVIIe siècle. Les premières réelles avancées des machines à vapeur datent du XVIIIe siècle.

Bon maintenant on peut même considérer que ceux qui inventait des machines à vapeur dans l'antiquité avait un raisonnement de thermodynamique. Ce n'est pas parce qu'on appelait pas ça ainsi que ça n'existait pas en germe. De toute façon ceci pourrait aussi servir de justification au fait que la thermodynamique n'est donc pas naturel. L'argument n'est utilisable ni dans un sens ni dans l'autre.

Encore une fois, il n'y a aucun rapport avec le côté naturel de la thermo dans ce que tu avances. Ça montre juste que quand on a eu un paradigme et une théorie savamment pensés, la thermo donc, alors on a eu des avancées pertinentes. La conceptualisation, l'abstraction et la capacité de modélisation de la théorie de la thermo ont donc été démontrée par cette succession. Par contre, rien ne montre que la Nature des choses suivent ces lois — note le grand N.
Garulfo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2009, 08h59   #142
Neolander
Membre du Club
 
Avatar de Neolander
 
Étudiant
Inscription : avril 2007
Messages : 88
Détails du profil
Informations personnelles :
Âge : 22

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2007
Messages : 88
Points : 62
Points : 62
Bon, ben on m'a posé une question alors je vais essayer d'y répondre, même si la discussion qu'elle a déclenchée ensuite fait peur ^^' (c'est comme si je me mettais à expliquer que la langue française est bien plus orientée objet que le japonais - ce que je crois XD)

Citation:
Envoyé par Hephaistos007 Voir le message
Selon toi, comment se fait-il que les étudiants en informatique (ayant 20 ans en moyenne) n'assimilent pas aussi l'objet vite que les gosses de 10 ans ?
Je dirais qu'à 10 ans, on assimile de nouveaux concepts beaucoup plus facilement. Un exemple très connu est celui des langues. A 20 ans, on a déjà des habitudes, et c'est difficile de changer de mode de pensée pour un autre auquel on n'est pas habitué.

Alors après, pourquoi on est plus habitué par notre éducation aux concepts de la programmation procédurale... Vaste débat. Peut-être que l'on est plus habitué à donner des ordres à la machine depuis qu'on nous donne des calculatrices dont la finalité est toujours la touche entrée/exécuter. Dans ces conditions, faut bien reconnaître que la programmation procédurale suit une approche plus proche de la suite d'instructions brute que l'approche orientée objet.
Neolander est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2009, 09h18   #143
millie
Rédacteur/Modérateur

 
Avatar de millie
 
Inscription : juin 2006
Messages : 6 934
Détails du profil
Informations personnelles :
Localisation : Luxembourg

Informations forums :
Inscription : juin 2006
Messages : 6 934
Points : 9 152
Points : 9 152
Citation:
Envoyé par Davidbrcz Voir le message
C'est la plus naturelle car dans la nature, tu as des objets, qui ont des méthodes. Tu interagis avec ces objets via ces dites méthodes sans de soucier de l'intérieur de l'objet.
Bah, je sais pas, quand j'ai appris vaguement la programmation (en seconde, donc dans les années 2000, jamais eu d'ordi avant, donc difficile pour tester avant), on m'avait parlé de la POO, bah autant te dire que j'avais rien callé et je voyais pas l'intérêt pour mes petits programmes de 100 lignes.

A l'époque, j'avais pas le net, ça n'aidait pas.
__________________
Je ne répondrai à aucune question technique en privé
millie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2009, 17h45   #144
arcanis
Nouveau Membre du Club
 
Inscription : octobre 2006
Messages : 54
Détails du profil
Informations personnelles :
Âge : 21
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : octobre 2006
Messages : 54
Points : 27
Points : 27
Un objet c'est juste une grosse machine sur laquelle on a disposé des petits boutons.

[edit] A partir de là, ça n'a plus de rapport avec la POO
Pour des enfants tu peux aussi essayer le Basic ... il prendra plein de mauvaises habitudes, probablement, mais il pourra aussi rapidement faire des trucs marrants, et au niveau de la motivation c'est important aussi.
Si on doit s'amuser à calculer la suite de fibonacci "pour s'entrainer" lorsqu'on touche pour la première fois à la programmation, c'est clair qu'on part sur de mauvaises bases. Le fun caybien.
arcanis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2009, 20h00   #145
Jedai
Expert Confirmé Sénior
 
Avatar de Jedai
 
Étudiant
Inscription : avril 2003
Messages : 6 068
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2003
Messages : 6 068
Points : 8 163
Points : 8 163
Envoyer un message via Yahoo à Jedai
Citation:
Envoyé par arcanis Voir le message
Un objet c'est juste une grosse machine sur laquelle on a disposé des petits boutons.
Si on s'en tient là il n'y a aucune différence entre les objets et les ADT (type de données abstrait)...

Citation:
Envoyé par arcanis Voir le message
Si on doit s'amuser à calculer la suite de fibonacci "pour s'entrainer" lorsqu'on touche pour la première fois à la programmation, c'est clair qu'on part sur de mauvaises bases. Le fun caybien.
Si cette pique s'adresse aux langages procéduraux et fonctionnels, elle a besoin d'être affutée : ça fait bien longtemps que ces langages sont présentés aux enfants avec des résultats graphiques mis en avant.

--
Jedaï
Jedai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2009, 21h12   #146
arcanis
Nouveau Membre du Club
 
Inscription : octobre 2006
Messages : 54
Détails du profil
Informations personnelles :
Âge : 21
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : octobre 2006
Messages : 54
Points : 27
Points : 27
Citation:
Si cette pique s'adresse aux langages procéduraux et fonctionnels, elle a besoin d'être affutée : ça fait bien longtemps que ces langages sont présentés aux enfants avec des résultats graphiques mis en avant.
Euh ... non ? Je part juste de mes expériences avec des "jeunes" (mouarf, ce terme fait bizarre ^^): ceux qui ont appris à faire des trucs avec des résultats modestes n'ont pas vraiment accroché de prime, tandis que ceux qui faisait des trucs bien moche niveau code mais dont ils pouvaient se vanter avaient plus envie d'explorer. Il est possible que des études contredise ceci, mais c'est en tout cas ce que j'ai constaté sur un petit groupe (dix personnes ...).

Citation:
Si on s'en tient là il n'y a aucune différence entre les objets et les ADT (type de données abstrait)...
J'avoue ne pas avoir encore étudié ce terme, donc il est possible que je n'en ai encore jamais fait. Il s'agit evidement d'un représentation simplifiée, mais elle permet à mon sens de saisir rapidement le principe général des objets.
Ou pas, visiblement ^^
arcanis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2009, 21h29   #147
Davidbrcz
Rédacteur

 
Avatar de Davidbrcz
 
Homme
2A Supaéro
Inscription : juin 2006
Messages : 2 124
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 21

Informations professionnelles :
Activité : 2A Supaéro

Informations forums :
Inscription : juin 2006
Messages : 2 124
Points : 3 497
Points : 3 497
Envoyer un message via MSN à Davidbrcz
Citation:
Si on s'en tient là il n'y a aucune différence entre les objets et les ADT (type de données abstrait)...
Un objet, c'est une entité qui résulte de l'instanciation d'une classe. Aucune commune mesure avec une classe ou un ADT.

Par contre, une classe par contre est un ensemble cohérente au quel on peut envoyer des messages via une interface tout en ignorant les détails d'implémentations.

Un ADT, c'est un type qui est défini par les opérations qu'on peut faire dessus.

Donc non, il n'y a pas de différences entre ADT et classe (c'est comme ca qu'on peut faire de la POO en C).

PS/ Je n'ai pas le livre de B. Meyer sous la main, je regarderai vendredi
__________________
"Never use brute force in fighting an exponential." (Andrei Alexandrescu)

Mes articles dont Conseils divers sur le C++
Une très bonne doc sur le C++ (en) Why linux is better (fr)
Davidbrcz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2009, 23h34   #148
Jedai
Expert Confirmé Sénior
 
Avatar de Jedai
 
Étudiant
Inscription : avril 2003
Messages : 6 068
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2003
Messages : 6 068
Points : 8 163
Points : 8 163
Envoyer un message via Yahoo à Jedai
Citation:
Envoyé par arcanis Voir le message
Euh ... non ? Je part juste de mes expériences avec des "jeunes" (mouarf, ce terme fait bizarre ^^): ceux qui ont appris à faire des trucs avec des résultats modestes n'ont pas vraiment accroché de prime, tandis que ceux qui faisait des trucs bien moche niveau code mais dont ils pouvaient se vanter avaient plus envie d'explorer. Il est possible que des études contredise ceci, mais c'est en tout cas ce que j'ai constaté sur un petit groupe (dix personnes ...).
Je doute fort que les études contredisent cette évidence... Dans tout domaine, il est plus satisfaisant d'obtenir des résultats impressionnant que d'apprendre tout un tas de règles stricte dont on ne se servira pas tout de suite, surtout pour des jeunes.
Ta remarque était juste, mais venant sur les talons d'une affirmation de la "simplicité" du concept d'objet, tu m'accorderas qu'il était aisé de la prendre comme une affirmation que pour obtenir ces résultats il faut enseigner la POO (associé au fait qu'une caricature répandue de la programmation fonctionnelle l'associe à la suite de Fibonacci calculée de dix-huit manières et ta remarque sur Fibonacci...).

Citation:
Envoyé par arcanis Voir le message
J'avoue ne pas avoir encore étudié ce terme [ADT], donc il est possible que je n'en ai encore jamais fait. Il s'agit evidement d'un représentation simplifiée, mais elle permet à mon sens de saisir rapidement le principe général des objets.
Ta description touche l'un des aspect de l'OO : l'encapsulation. Mais tous les paradigmes savent faire ça à leur façon, pour vraiment parler d'OO, il faut au moins rajouter un ordre sur les types et du polymorphisme d'inclusion, à mon sens.

Citation:
Envoyé par Davidbrcz Voir le message
Un objet, c'est une entité qui résulte de l'instanciation d'une classe. Aucune commune mesure avec une classe ou un ADT.
Ta définition d'un objet n'est pas universelle, il y a bien des langages dont la nature objet n'est pas contestée qui n'utilisent pas les classes, ou pas toujours (langages à prototypes).

Par ailleurs, bien qu'un ADT en lui-même n'ait pas grand chose à voir avec un objet, une valeur dans un ADT remplit exactement les conditions pour être un objet selon la vision simpliste du premier message d'arcanis.

Citation:
Envoyé par Davidbrcz Voir le message
Par contre, une classe par contre est un ensemble cohérente au quel on peut envoyer des messages via une interface tout en ignorant les détails d'implémentations.
Drôle de définition d'une classe : stricto sensu, on ne peut pas envoyer de messages à une classe, on ne les envoie qu'aux objets instances de cette classe. Evidemment tout ceci peut-être brouillé par l'existence d'un métamodèle dans lequel les classes sont elle-même des objets, et par les "méthodes" statiques.

Citation:
Envoyé par Davidbrcz Voir le message
Un ADT, c'est un type qui est défini par les opérations qu'on peut faire dessus.

Donc non, il n'y a pas de différences entre ADT et classe (c'est comme ca qu'on peut faire de la POO en C).
Je dirais qu'il y a pas mal de différence entre un ADT et une classe pour ma part, l'ADT ne recouvre que l'aspect "encapsulation" de la classe, il lui manque toute la hiérarchie et le sous-typage, ainsi que l'extensibilité des valeurs (du moins si on omet les types existentiels).

--
Jedaï
Jedai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/08/2009, 17h15   #149
Mloody2000
Invité régulier
 
Inscription : août 2007
Messages : 40
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 40
Points : 8
Points : 8
Je conseillerai de regarder du côté du projet Alice (www.alice.org) - il y a de fortes chances que cela vous intéressera.
Mloody2000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2009, 17h20   #150
flo44
Invité de passage
 
Inscription : novembre 2008
Messages : 3
Détails du profil
Informations forums :
Inscription : novembre 2008
Messages : 3
Points : 2
Points : 2
Voilà que ma fille demande à apprendre à programmer. Elle n'a que 7 ans… (elle est en CE2).
Je ne pense pas qu'elle puisse apprendre grand-chose à cet âge (certains problèmes avec des soustractions sont encore difficiles pour elle, ce qui semble être très courant)
À mon avis, c'est plutôt juste histoire de faire un ou 2 trucs sympa, et de comprendre les principes de base : on écrit un programme, il y a un autre programme qui le lit et l'exécute...
Je suis tout de même un peu perplexe, bien qu'il me semble avoir vu le site d'un instituteur qui faisait faire du logo à des enfants encore plus jeunes. (je ne le retrouve plus)
flo44 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2009, 20h12   #151
Jedai
Expert Confirmé Sénior
 
Avatar de Jedai
 
Étudiant
Inscription : avril 2003
Messages : 6 068
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2003
Messages : 6 068
Points : 8 163
Points : 8 163
Envoyer un message via Yahoo à Jedai
Pour cet âge, un environnement simple et un langage de programmation le plus visuel possible me semble obligatoire, je te recommanderais donc chaudement Scratch comme un autre posteur à la page précédente dont le fils de 8 ans aime beaucoup ce langage/environnement.

(page officielle)

--
Jedaï
Jedai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2010, 11h17   #152
jpouly
Membre du Club
 
Inscription : février 2008
Messages : 39
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : février 2008
Messages : 39
Points : 45
Points : 45
Il me semble que l'on parle d'un enfant de 10 ans, et il ne faut pas l'oublier.

Je pense que le basic est un bon départ pour la programmation (voir le language des calculatrices scientifiques). C'est simple, on fait des calcules, on désine des trucs à l'écran, et on commence à comprendre que pour faire des programmes, c'est pas si simple et il faut bien réfléchir avant.

De plus, on peux faire de l'algo en se forçant à pas faire de "goto" par exemple. Ca peut être un challange, s'il maitrise assez rapidement le language.

Par la suite, un fois qu'il a muri, on peut passer à plus hard. Et là, je pense que le pascal et le C sont incontournables. Le pascal, fortement typé, oblige a une certaine rigueur. le C, à l'inverse, nécéssite de la vigilance.

Après, on peut passer au php, python, java, c# et autres joyeusetés.
jpouly est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2010, 09h05   #153
scriptiz
Invité régulier
 
Inscription : avril 2009
Messages : 13
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 13
Points : 6
Points : 6
Et l'enfant il en pense quoi? Il a envie d'apprendre à programmer?

Car bon parfois la meilleur façon pour dégouter son enfant, c'est d'essayer de lui faire passer ses passions.

Après je ne dit pas qu'on ne peut pas guider (genre laisser trainer un livre sur tel ou tel langage, ou mettre une grosse icône sur le bureau vers un IDE comme KPL par exemple), mais surtout ne pas le forcer s'il n'aime pas.
scriptiz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2010, 18h47   #154
Neuromancien2
Membre confirmé
 
Inscription : mai 2002
Messages : 565
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 565
Points : 279
Points : 279
Je conseillerais Python dans un premier temps, éventuellement Pascal par la suite. Avec Lazarus, on peut apprendre la programmation visuelle...
Neuromancien2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2010, 13h23   #155
Ficare
Membre à l'essai
 
Inscription : juillet 2006
Messages : 17
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 17
Points : 21
Points : 21
bonjour,

plusieurs messages citent KPL, je suis donc allé voir leur site. Il apparait que KPL n'est plus distribué depuis 2008, et a été remplacé par une version commerciale (et payante) qui s'appelle Phrogram.
Ficare est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/03/2010, 09h15   #156
TropMDR
Membre chevronné
 
Inscription : mars 2010
Messages : 281
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 281
Points : 756
Points : 756
Bonjour à tous.

Je n'ai pas lu l'intégralité de la discussion (j'avoue que quand je vois qu'on dit que la programmation objet est évidement la représentation la plus naturelle du monde, je me mets à chercher le sous-typage structurel, l'héritage, les interface, l'encapsulation et les champs privé dans les "objets" qui m'entoure, et après ça me fait mal au crâne...). Toujours est-il que je n'ai pas l'impression que ce petit jeu ai été cité : http://www.pps.jussieu.fr/~gimenez/laby/

Alors ce n'est pas un langage à proprement parler (on peut "programmer" dans plusieurs langage avec), mais c'est un très bon moyen pour intéresser un enfant jeune ou moins jeune à la programmation, et lui faire comprendre les principes sous-jacent : par exemple ne pas faire une chose 15 fois mais dire à l'ordinateur de le faire à sa place.

Lors de la fête de la science, j'ai testé ça (en mode OCaml) avec des enfants de 6/8 ans, et jusqu'à 18 ans (primaire à la terminale), et ça a réussi à tous les intéresser !
TropMDR est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/05/2012, 08h50   #157
nicos08
Invité régulier
 
Inscription : avril 2010
Messages : 13
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 13
Points : 7
Points : 7
Bonjour,
A cette âge, j'avais un Amiga 500, j'ai commencé avec un Basic de base, puis mon oncle m'a acheté AMOS (programmation de jeux)...
J'ai bien accroché, appris beaucoup car Basic est facilement appréhendable et le fait de toucher un peu à la programmation de jeux est ludique.
Mais je ne sais pas si un tel langage (et son IDE, banques de sprites intégrée !) existe sur PC...
nicos08 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 03h27.


 
 
 
 
Partenaires

Hébergement Web