-
Tutoriel VB6/VBA
Explications claires pour bien apprendre les bases et les astuces pour la création d'un vrai programme VB avec interface, objets, événements, .... Ainsi que de nombreux code sources !
-
Supermarchés américains
la mode outre-atlantique
-
Une découverte
Mode de démarrage 'Mappemonde' découvert par hasard
-
Code Erreur 0
Des difficultés pour copier un gros fichier vers votre disque dur externe ?
Got some difficulties copying big files to an external hard drive ?
-
L'avenir du thon rouge
Vote aujourd'hui à Doha...
-
Mes iPhone App
Le célèbre 'JapanEasy' ainsi que Wormwar un jeu de stratégie de serpents, et BrainGame, un jeu de mémoire très sympa. The famous 'JapanEasy' and other games I developed
-
Url propres avec .htaccess
Url propre, sans slash final
Clean url with no trailing slash
-
Hawaï
Une perle verte sur l'océan
-
Soirée au café-théâtre
Le Matana (Paris 5ème), un café à découvrir ?
-
Le Japonais
Retour sur une expérience peu commune
-
Road trip au Danemark
Une semaine sur la terre des vikings
-
Accident
Scoop ! Verglaplanning sous mes fenêtres en photo !
-
Maï nitchi no seikatsu (毎日の生活)
Ma vie de tous les jours
-
Réveillon du 1er de l'an
VDM
-
iPhone App
La solution au problème de la Code Signing Provisioning Profil vide
How to solve the empty Code Signing Provisioning Profile List
-
Tutoriel CamL
Explications détaillées sur les bases et les objets, les astuces, la structure des programmes CamL. Ainsi que de nombreux codes sources !
-
Poupée Vaudou
Suite et fin !
-
Astrologie
Je n'y crois pas...
-
Eglise aux US
Alléluia
-
Tutoriel AppleScript
Les bases, et la création d'un vrai programme AppleScript avec interface. Ainsi que de nombreux codes sources !
-
Mamp - Mac OS Lion
Avoir ou réparer un environnement php/mysql/phpmyadmin sur Mac OS 10.7
Use or fix your php/mysql/phpmyadmin config on Mac OS 10.7
-
Tokyo is magic
Une soirée pas comme les autres
-
Tutoriel Java
Explications claires pour bien apprendre les bases, et la création d'un vrai programme Java avec interface. Nombreux code sources
Programmation
Sans le savoir, ma vie a pris un nouveau virage il y a 8 ans en me lançant dans la programmation. Cela aura été un travail personnel de longue haleine, mais je ne le regrette pas.
Ça s'est même révélé payant pour faire la différence devant des recruteurs ! (à condition de ne pas lâcher le reste non plus !)
J'espère vous faire découvrir / partager ma passion en écrivant ce site, et peut-être faire naître une vocation chez vous !
Si vous ne vous êtes pas encore trouvés de passe-temps intelligent, c'est peut-être ce qu'il vous fallait, qui sait...
Ci contre 2 livres pour apprendre les principes de la programmation et de l'algorithmique. Les 2 vont de paire mais sont très
différents. La programmation c'est l'art de faire fonctionner quelque chose sur l'ordinateur. L'algorithmique sera au contraire
appréciée des gens qui aiment les maths : par quelle technique trier des nombres le plus rapidement possible, chercher le plus court
chemin dans un graphe, ...
Suivant où vous vous situez, "Introduction à l'algorithmique" est conseillé aux titulaires d'un bac S, tandis que "S'initier à la
programmation" est plus du genre "Programmer pour les nuls", mais qui sait ! :D
Les grandes étapes
- Si vous n'avez jamais programmé : commencez par un langage simple (basic, qbasic), avant de vous attaquez aux autres.
C'est très formateur.
- Faites vous pleins de petits programmes "pourris" pour assimiler un langage. Soyez inventifs, et allez du plus simple au plus
compliqué : Il n'y a encore pas longtemps, j'ai conseillé à un cousin qui a 11 ans de se mettre à la programmation. Il a dit "super,
je vais refaire le jeu de foot PES en mieux". Euh... comment dire...
- Maîtrisez chaque élément au fur et à mesure. Commencez par faire un programme qui dit bonjour, puis un autre qui demande
2 nombres à l'utilisateur et qui calcule la somme, puis le pgcd (par exemple) et qui les affiche. Implémentez le type "liste" quand
vous travaillez avec les langages objets.
- Ensuite apprenez à maîtriser l'interface graphique (quand il y en a une) : les contrôles, les événements, puis les graphiques
proprement dit :
essayez d'abord de tracer une ligne en plein milieu de l'écran, puis faites la déplacer pour lui donner du mouvement, faites vous ensuite
un petit serpent (ça vous apprendra à maîtriser l'appui sur les touches), faites vous un puissance 4, un jeu de jackpot ou blackjack,
imitez un jeu de téléphone portable, ...
- Après cela, apprenez à maîtriser les fichiers : recherche d'un fichier sur l'ordinateur, faites vous un petit agenda,
quelque chose qui gère votre argent, vos numéros de téléphone, ...
- l'essentiel est de ne pas avoir peur de créer un programme inutile. Je suis bien d'accord, l'agenda que vous ferez sera plus moche
que celui que vous avez déjà sur votre ordinateur, votre serpent sera beaucoup moins amusant que de jouer au dernier Warcraft, ...
Mais c'est normal. Ce qu'on aime, ce n'est pas se servir de ce que l'on a fait, mais créer quelque chose de nouveau encore et encore.
- Enfin, contrôlez votre machine depuis vos programmes : tentez de faire disparaître le curseur de la souris, de le déplacer,
d'ouvrir une page web depuis votre programme, ... : intéressez vous de fait aux API, au registre si vous êtes sous Windows, ...
- Bref, n'ayez pas peur d'essayer : c'est gratuit, alors profitez-en.
- Ah j'oubliais : codez proprement ! (indentation du code, ...) Tout le monde le dit, mais c'est vraiment une bonne idée, ça permet d'éviter
de perdre du temps en débogage (et d'ailleurs la plupart des éditeurs le font automatiquement).
Avertissement
Bien des fois vous en aurez très très marre et aurez envie de balancer votre ordi par la fenêtre. Tout le monde est passé par là
et y repassera ! Mais c'est en s'accrochant que l'on y arrive. Etre seul face à sa machine, ça c'est un défi. Au début, c'est dur.
Mais quand ça marche cela apporte tellement de joie... qu'on aurait tort de s'en priver ! Bon courage, vous ne le regretterez pas.
Conseils (d'un vieux loup de mer)
Si vous n'avez pas trop d'idées pour des petits exercices, allez voir Prologin : il y en a
une multitude, des plus simples aux plus complexes, avec même un correcteur automatique.
Essayez-les tous pour chaque nouveau langage que vous ambitionnez d'apprendre.
Faites un tour du côté de ma page de codes sources, où je mets pas mal de codes sources (souvent simples)
en ligne, ce qui est même plus rapide que de lire des tutoriels longs et ennuyeux comme les miens :), ou pour
avoir un point de vue global sur la physionomie des codes d'un langage.
Inscrivez vous aussi à des sites comme codes-sources.com (www.vbfrance.fr, www.cppfrance.fr, ...) ; des dizaines de "open-sources" sont
postées chaque jour, et vous y trouverez certainement votre bonheur (si vous n'en êtes pas à votre premier programme)
Pour qui, pourquoi ?
Il y a déjà beaucoup de sites sur le sujet, alors pourquoi en faire un ?
Parce que tous les tutoriels sur le net commencent en expliquant que
‘+’ désigne l’opérateur d’addition, ‘-’ la soustraction, ... et ça étouffe.
Ce site se veut sans blabla.
Les pages que vous allez lire n'en restent pas moins le nectar du fruit arrivé à maturation de 8 longues années de dur labeur
dans l'univers du développement (Rien que ça ! ^^). Et tout ça rien que pour vous (et moi qui disait "pas de blabla"...)
Les débutants
Il y a une présentation de divers langages,
avec leurs caractéristiques (points forts, points faibles) et la manière de les utiliser, c.a.d quel éditeur avoir, où trouver le compilateur,
... ainsi que des conseils. Bref : comment bien débuter, et le cas échéant dans quel langage.
Sinon, mes tutoriels ne sont destinés qu'à ceux qui ont déjà programmé dans un langage, n'importe lequel
(ils sont tous plus ou moins équivalents). Si vous arrivez quand même à suivre, tant mieux pour vous : téléphonez à Paris Match
pour qu'ils viennent prendre des photos du mozart de l'informatique que vous êtes.
J'ai quand même pris le soin de vous donner des redirections vers de bons sites proposant des tutoriels débutants.
Les pas débutants
Si vous cherchez plutôt à maîtriser rapidement un nouveau langage à peu de frais vous êtes au bon endroit.
Ou en tout cas, c'est fait pour ! En gros, vous avez déjà pas mal de pratique dans un langage particulier, et pour une raison ou pour une
autre vous devez apprendre un nouveau langage, i.e quelle est la syntaxe pour déclarer une variable, faire une boucle, déclarer une fonction,
faire un graphique, ...
Ne snobez pas la section codes sources qui vous offre ses codes sources sur un plateau.
C'est sans nul doute le meilleur moyen de comprendre d'un coup d'oeil l'architecture d'un programme et l'utilisation des mots clés
dans un nouveau langage (déclaration des fonctions, variables, ...).
Les spécialistes
Ce site ne s'adresse pas non plus aux spécialistes : il ne cherche pas à constituer un répertoire des API les
plus secrètes de Windows, par exemple.
Et d'une parce que ce site fait déjà autre chose et on ne peut pas tout faire. Et de deux parce que je ne les connais pas : j'ai appris tout
tout seul (ou presque), par internet ou grâce à des livres et j'ai encore beaucoup à apprendre. Vous trouverez cependant un document
très bien fait concernant les API justement, dans la section codes sources.
Présentation de différents langages
- QBasic
- Mon premier langage sur ordinateur (mon premier est le Basic sur TI-82, quasi équivalent).
Ça aura l'air un peu pourri au premier abord, mais l'avantage d'être un langage limité, c'est que justement il est limité,
donc parfait pour apprendre : peu de mots clés, l'essentiel pour vous faire même des petits jeux (serpents, Mario, ... !),
et même un accès à la lecture / enregistrement des fichiers. Et l'avantage, c'est que vous tapez votre code, vous cliquez sur un bouton
et hop ! c'est parti, pas besoin de s'embêter avec la console / les compilateurs et les trucs comme ça. !
Bref, à faire absolument avant de s'attaquer à un autre langage. Excellent pour le cerveau !
- Visual Basic
- Un très bon langage, pas forcément très agréable pour l'algorithmique pure, mais très bien pour développer de véritables applications
professionnelles sous Windows, sans mentir ; vous serez étonnés du résultat. Vous pouvez vous créer une interface en quelques clics et
l'environnement de développement contient un débugger très bien fait.
Ce langage tire toute sa puissance de sa capacité à utiliser les API Windows ou d'autres applications (ex : OpenGL, DirectX, Excel, ...).
Et il faut bien avouer que lorsque l'on programme, en général c'est plus une question de gestion d'événements et de design que de
l'algorithmique pure, sauf si on fait un GPS par exemple (algo de plus courts chemins, optimisation, ...). Et à ce sens, VB excelle.
- CamL
- Un langage fonctionnel, incroyablement agréable. C'est tout le contraire de Visual Basic : de l'algorithmique pure, mais aucun design /
interface. A dire vrai il ne sert à rien dans la pratique car faire des programmes console n'intéresse personne (enfin... je pense).
Mais c'est vraiment une bonne idée de l'apprendre, surtout qu'il n'y a que très peu de mots-clés, et vous découvrirez une nouvelle
dimension de la programmation, j'en suis sûr. CamL représente le nec plus ultra à mon avis pour tout ce qui est arbres, graphes, ...
Difficile pour un débutant.
- Java
- Un excellent langage pour apprendre la programmation objet. Java dispose d'une bibliothèque
très fournie disponible ici. L'avantage du java c'est que les programmes tourneront
indifféremment sous Mac ou PC, et qu'apprendre le Java revient quasiment à apprendre le C++, son concurrent.
Difficile pour un débutant, mais à connaître absolument.
- C++
- Le langage de programmation objet par excellence, très prisé (comme le Java) si vous comptez être développeur de métier.
Difficile pour un débutant, mais à connaître absolument.
- PHP/Javascript
- Ça ne sert que si vous avez un site internet. Leur syntaxe / mots clés ressemblent au Java/C++, mais ils sont moins puissants. Je ne
m'aventurerais pas à faire de "vrais" programmes" avec, je ne les utilise que par nécessité, 10 lignes par-ci par-là.
- AppleScript :
- Le langage de base sous Mac. On peut coder avec l'Editeur de scripts (pas d'interface) ou avec Xcode (une interface est réalisable).
Il est assez simple, et assez intuitif. Par contre il existe peu de tutoriels sur le Web,
donc une communauté peu développée où il n'est pas simple de trouver des exemples. (sauf sur mon site, bien entendu ! ^^)
Conclusion
Si vous êtes sous Windows, commencez par QBasic si vous n'avez jamais rien fait. Dominez le (en 2-3 mois) puis passez à autre chose.
Quels outils utiliser ?
Pour programmer, tapez simplement votre code en .txt, enregistrez, remplacez '.txt' par .java pour du Java,
'.cpp' pour du C++, '.html' pour du Web... et le compilateur transforme ce code en programme .exe. C'est tout !
J'explique plus loin comment avec un bon éditeur gratuit on peut lui demander de faire ça à notre place.
Les *** indiquent que le compilateur est intégré à l'éditeur.
Une description plus précise de certains outils est faite dans les pages tutoriels correspondant aux langages associés.
Les compilateurs
- **** QBasic
- Le langage que je préconise pour débuter. L'éditeur n'est pas ultra agréable (ressemble au DOS), mais on s'y fait vite, et il
n'y a que peu d'instructions. Telechargez
- **** Visual Basic
- Normalement, ça coute cher, très cher. Mais depuis 2005, Microsoft a sorti les versions "Express Edition" de Visual Studio (gratuites).
Il y a maintenant la 2008. L'environnement semble assez complexe à maîtriser au début, mais c'est un leurre :
il se révèle très pratique d'utilisation.
Il y a d'un coté la partie "graphique" où l'on crée l'interface (les boutons, cases à cocher, ...), et de l'autre la partie code, où l'on
gère les événements associés aux contrôles de l'interface. Télécharger
- **** AppleScript
- "Editeur de Scripts" est gratuit sur Mac (déjà installé il me semble). Pour faire du Applescript Studio (= AppleScript + une interface
digne de ce nom), utilisez XCode, lui aussi sur le DVD de Léopard (c'est le dossier "Developer", mais il n'est pas installé d'office).
Bref, tout est gratuit !
- CamL
- Le compilateur est disponible gratuitement sur le site de l'Inria, pour PC et Mac.
(Préférez OCamL à CamL)
- Java
- Normalement java est intégré à toute machine, de base. Sinon (en cas de force majeur), il est disponible sur internet, gratuitement (c'est
dingue, mais plus j'écris plus je me rends compte que tout à l'air gratuit !).
Lignes de commande pour compiler :
javac nomfichier.java pour compiler
java nomdelaclasse (sans extension) pour exécuter.
- HTML
- Il n'y a pas de compilateur, ou enfin si, mais alors on ne s'en rend pas compte. Ouvrez tout simplement votre fichier avec votre navigateur
web préféré (sauf internet explorer).
- N'importe quel langage
Téléchargez le compilateur associé, tapez votre code dans un éditeur de texte basique (typiquement le bloc-notes Windows) et
lancez le compilateur par ligne de commande.
Bien choisir son éditeur
Vous l'avez bien compris maintenant, programmer ce n'est rien d'autre que d'utiliser un compilateur sur du code.
Et ce code source vous pouvez le taper n'importe où. Vous aurez donc juste besoin de votre bite et de votre couteau.
Et du bloc-notes Windows, c'est tout. (sans rire !!!)
Je rigole un petit peu quand même, mais pas tant que ça. Le seul défaut du bloc-notes Windows, c'est qu'il manque la
coloration syntaxique (mots clés d'une certaine couleur, commentaires d'une autre, ...), et que passer par la ligne de commande pour
exécuter son programme c'est pas rigolo. Utilisez Notepad++ (Windows) ou XCode (Mac), gratuits.
Ceci est valable pour tous les langages !!! Sur internet, on va vous dire "Prenez DevC++ pour le C++, FrontPage pour un site
web, Eclipse pour Java", ... mais il ne faut pas écouter ceux qui disent ça. Dites leurs de venir me voir s'ils ne sont pas contents,
je vais les recevoir :D. Ça ne va que vous encombrer, vous changerez sans cesse d'environnement et donc mettrez du temps à retrouver
vos petites habitudes et à configurer vos éditeurs à chaque fois.
Bref, prenez 1 seul bon éditeur, et autant de compilateurs que de langages. Après, "reliez" votre éditeur aux compilateurs.
Mon environnement de programmation :
Comme vous pouvez le constater je ne raconte pas de blabla et mes conseils s'appliquent aussi à moi-même ! :).
J'ai un poil plus que le bloc note, avec les fichiers du projet accessibles en 1 seul clic, et l'éditeur avec coloration automatique.
Et la touche "build and Go" pour compiler/exécuter.
Configurer la compilation
Le plus dur est de configurer la compilation (i.e d'entrer la ligne de commande que l'on souhaite que l'éditeur exécute à notre place, pour
chaque langage) mais une fois que c'est fait... c'est fait. Et après ça marche tout seul (Latex, CamL, java, ...).
Exemple avec EditPlus et Java (mais c'est assez universel)
- Pour compiler
Command="C:\Program Files\Java\bin\javac.exe"
Argument="$(FilePath)"
- Pour exécuter
Command="C:\Program Files\Java\bin\java.exe"
Argument="$(FileNameNoExt) (il ne faut pas l'extension !!)
Exemple avec EditPlus et OCamL
- Pour compiler
Command="C:\Program Files\Objective Caml\Bin\ocamlc.exe"
Argument=-I "c:\program files\objective caml\lib" -o output.exe $(FileName)
- Pour exécuter
Command="c:\program files\objective caml\bin\ocamlrun.exe"
Argument="$(FileDir)\output.exe"
Je dis juste d'en utiliser UNE, toujours la même, pour tous les languages (quand c'est possible), et plus elle sera simple et "lightweight" mieux ce sera je pense.
Je pense surtout à ceux qui vont utiliser Frontpage pour faire un site web, XXX pour faire du C++, YYY pour faire du CamL, ...
Si ce n'est pas clair dans le texte merci de me dire où pour que je change :)
Je pense que j'ajouterai un mot sur le Python / Perl un jour prochain et une page complète sur Python.
Bravo pour ce site que je viens de découvrir.
Je suis débutant sur Mac OS X Lion.
J'ai téléchargé Xcode 4, car je viens d'acheter le livre Cocoa, programmation sous Mac OS X; malheureusement, le livre développe les exemples avec la version Xcode 3; qui est bien différente de Xcode 4! Comment puis-je m'en sortir, merci d'avance pour les conseils;
je commence également avec AplleScript et aimerai n'utiliser qu'une seule IDE.
J'ai plus d'expérience en VB Express 2008 et 2010.
J'apprends également Python, très bon langage.
A quand un Tuto sur Python 3.2.
Bonne continuation et félicitations.
mais je pense que c'est pas suffisant, n'est-pas?
Ben... Canseillez-moi svp.
Merci beaucoup.
Roja
je pense qu'Applescript n'est pas idéal pour apprendre à programmer. Je conseille le python, j'écrirai bientôt une page dessus, sinon avec AppleScript tu peux quand même te faire des petits programmes avec une interface
Pour les langages recentes, J'ai eu plaisir de programmer avec Hypercard (sur Macintosh) pendant plusieurs années, mais il n'existe plus. Maintenant j'utilise Revolution LiveCode (mais il faut payer pour le privilège). Je le conseil vivement !
Cependant, je ne mettrais JAMAIS AppleScript entre les mains d'un débutant. Autant demander à un bébé d'atterir un LEM sur la lune !