Mraaaah vient d’avoir un compte sur le blog, et peut être aura-t-il le temps de publier les sources de ses solutions. En attendant, voici le code source du jeu.
En général on documente un peu le truc, on met un README, des commentaires, etc. Mais là je vais invoquer le fait que je veux vous montrer ce que ça donne un code à la vite pour justifier ma grosse flemme. Ce code source est intéressant car il montre plusieurs choses :
- On peut coder en très peu de lignes un truc comme ça en Python.
- Nous aussi on fait du code à l’arrache : ici un truc pondu en une après-midi, non commenté, écrit d’une traite.
- Les petites libs comme path.py ou bottle, ça aide bien.
- Quand on fait les trucs trop vites, il y a des coquilles : dans notre cas on a une lib qui sert à rien, le check du mot de passe final sur la mauvaise fonction, etc. Et c’est pas scalable pour deux ronds.
- Même quand on code mal en Python, ça reste assez lisible.
- Python, c’est pas si lent : malgré un code d’init lourd et un serveur en pur Python (cherrypy) qui s’est pris vos essais de bourrins, ça démarre vite et ça a bien tourné.
Vous trouverez dans le répertoire scripts les soluces des énigmes que j’ai utilisé pour vérifier que ça marchait. Vous verrez que là aussi, c’est du vite fait, avec parfois des trucs qui plantent tout simplement par fainéantise.
Pour démarrer le jeu : python site.py
avec du 2.7.
Mraaaah a publié ses solutions.
Il est étonnamment clair ce code. Et plus simple que ce que j’imaginais.
Ah cool! Je vais enfin voir les entrailles de ce jeu! Merci!
P.S: “que j’ai utilise
ré“Fixed.
Au passage, il est évident que l’utilisation de variable globales n’est PAS quelque chose de recommandé. Je répète, ceci n’est pas du code propre.
Ben y’a pu qu’à le commenter ce code (sans rien changer. hein..)
Quand tu aura le temps… of course..
J’ai souvent entendu ça…tu peux m’expliquer pourquoi?
Y’a un risque particulier?
Je vois que vous utilisez CherryPy en plus de bottle.
Qu’est ce que ça apporte en plus ?
@freakzoid
http://sametmax.com/utiliser-cherrypy-serveur-web-leger-avec-bottle-framework-leger/
Merci Max voilà un bon article qui m’avait échappé.
you’re welcome baby. If you happy I happy
@Kad: faire ce qu’on appelle un code “spaguetti”, c’est à dire un code difficile à relire car les effets de bords sont difficiles à prévoirs et les dépendances éparpillés relou à tracer. Les globales, c’est se rajouter des bugs et se compliquer la maintenance.