Le blog d'Arcade Village

Programmer un jeu en javascript

Objectif de ce cours


A l'issue de ce cours, vous serez capable de créer à partir de rien un jeu en javascript. Je n'utiliserai pas de librairies open-source ou payantes. Je ne prétends pas que vos jeux seront les plus performants, mais vous aurez compris tous les mécanismes permettant de créer votre propre jeu.

Les prérequis


Vous devez connaître les bases de la programmation (types de variables, fonctions...) et surtout de la programmation objet. Même si javascript n'est pas un langage objet à proprement parler, je l'utiliserai comme tel afin que le code soit réutilisable dans d'autres langages.

Pourquoi javascript ?


Je crois que la réponse se trouve tout simplement dans mon histoire. J'ai toujours programmé mes jeux seul et pour le plaisir. Il me faut donc utiliser un langage de programmation gratuit et qui puisse être porté sur toutes les plates-formes. Auparavant, j'utilisais java pour programmer mes jeux. J'aime l'idée de ne pas être dépendant de bibliothèques extérieures ou liées à un système d'exploitation. Mais le danger que fait peser Oracle et ses avocats sur ce langage me dérange. Si ce dernier point vous intéresse, n'hésitez pas à creuser par vous même sur Internet. J'ai été aussi touché par la disparition des applets, même si j'ai pu récupérer tous mes jeux dans le jukebox d'Arcade Village. J'aime mes programmes et savoir qu'ils ne sont plus utilisés me fait de la peine. J'ai eu la malchance de voir le film Tron lorsque je débutais la programmation et cela a marqué à vie ma vision de ce que représente un programme.
J'arrête mes discours d'alcoolique racontant la guerre au comptoir d'un bar et je passe maintenant à la liste des avantages et inconvénients de Javascript.

Quels sont les inconvénients de javascript


- Javascript est un langage très permissif. Il permet de déclarer des variables n'importe où, de ne pas les typer et ne grogne pas si vous oubliez un point-virgule. Cela engendre des erreurs très longues à corriger et une perte de temps inutile.
- Javascript n'est pas un langage objet mais un langage de prototype. C'est à dire que vous ne déclarez pas vos classes mais des objets dont vous pouvez modifier le comportement pendant le déroulement d'un programme. Cette clause est pénible si l'on modifie le code de quelqu'un d'autre, mais nous verrons comment se rapprocher le plus du langage objet.
- Javascript utilise un ramasse-miette. Or, je vous le rappelle, ce langage n'est pas typé et chaque objet est modifiable à n'importe quel moment. La gestion de la mémoire est donc très complexe et aucun navigateur n'arrive à s'en sortir dignement. Utilisez gmail ou facebook sur n'importe quel navigateur et vous le verrez s'effondrer au bout de quelques temps. Dans le cas d'un jeu, cela n'est évidemment pas acceptable. Facebook et google se passent d'ailleurs de plus en plus de javascript pour leurs sites web.

Quels sont LE avantage de javascript


- Javascript tourne sur tous les navigateurs et donc sur tous les systèmes qui existent. Il est même possible de simuler une application pour téléphone portable avec lui. De plus, ce langage étant directement interprété, nous pouvons voir instantanément le résultat de nos modifications (une fois les bugs supprimés) et c'est très agréable.

A suivre....
ArcadeVillage.com 1999 - 2024