Vous savez, quand vous avez été Wordled...
Est-ce qu'il vous est déjà arrivé de commencer un projet en pensant : "À quel point cela pourrait-il être difficile ?" - pour découvrir des mois plus tard que la réponse est "Beaucoup plus difficile, définitivement hors de ma portée pour l'instant." Eh bien, cela résume à peu près ce projet sur lequel je travaille depuis un moment. Voici l'histoire.
Je m'intéresse aux ordinateurs depuis des années. J'ai construit mon premier PC quand j'étais adolescent, en 2008, et à cette époque, les logiciels semblaient être une sorte de sorcellerie mystérieuse que je n'arrivais pas à comprendre. Avance rapide jusqu’à il y a environ un an et je me suis retrouvé à m’inscrire à Codecademy. C'était en partie pour essayer d'acquérir une nouvelle compétence, si je décidais ou si je devais changer d'emploi à l'avenir. Cependant, c'était surtout juste pour le plaisir et la satisfaction personnelle - peut-être pourrais-je enfin comprendre un peu plus le fonctionnement de ce mystérieux logiciel ?
Mon premier arrêt a été le cours gratuit C#, qui m'a suffisamment intrigué pour souscrire à un abonnement annuel. Quelques mois plus tard, j'ai décidé de me lancer dans une carrière en informatique. Même si j'aurais pu opter pour quelque chose comme le développement Web, j'ai pensé que l'informatique correspondait davantage à mes intérêts d'origine lorsque je me suis lancé dans l'informatique - pas seulement apprendre à coder, mais aussi comment tout cela fonctionne sous le capot.
Le cours a commencé par m'apprendre un nouveau langage - Python. J'avais entendu dire que cette langue était l'une des plus populaires auprès des débutants, et je comprenais pourquoi. Après avoir essayé C#, ce qui semblait assez simple mais avec quelques bizarreries qui me passaient au-dessus de la tête, je me suis mis à Python comme un canard dans l'eau.
Cependant, il est ensuite arrivé à la partie du cours où je devais réaliser mon premier projet de portfolio. Le brief était de créer un jeu de terminal en Python, et de le publier sur GitHub et une plateforme de blogs. Eh bien, au début, la partie de la mission qui m'a fait hérisser était de partager mon projet avec d'autres. J'ai tendance à éviter de publier des choses ouvertement, surtout quand j'ai l'impression de ne pas bien savoir ce que je fais. Une carrière ratée de caricaturiste m'a appris les dangers du « blagging » - donnant l'impression que j'étais plus compétent et peut-être plus expérimenté que je ne l'étais en réalité afin de potentiellement gagner des clients. Cependant, c'est une autre histoire.
En gros, la version condensée de ce long préambule, c'est que j'écris ce post parce que Codecademy m'a obligé à le faire. Je ne me fais aucune illusion/illusion selon laquelle je suis un codeur incroyable - je suis juste un nerd curieux qui aimerait arriver à la fin de ce cours et apprendre des choses intéressantes en cours de route. Et tu sais quoi, j'en suis content, et si tu es dans le même bateau que moi, tu devrais l'être aussi.
Et alors, qu’en est-il du jeu que je devais créer ? J'avais quelques suggestions de départ de Codecademy, comme le Blackjack, le Tic-Tac-Toe et le Démineur, mais je voulais essayer quelque chose de différent. Un jeu auquel j'aime jouer tous les jours est "Wordle", désormais détenu et hébergé par le New York Times. Apparemment, ce jeu a commencé comme un petit projet personnel qu'un gars a réalisé pour sa petite amie, et j'ai été intrigué par l'apparente simplicité des règles du jeu et par la façon dont cela semblait fonctionner. J'ai donc décidé de créer ma propre version de "Wordle", pour voir si je pouvais la découvrir par moi-même. Après tout, à quel point cela pourrait-il être difficile ?...
La réponse courte – un peu plus difficile que je ne le pensais, étant donné que je ne suis qu'un débutant. Je suis sûr qu'un expert pourrait dénicher un clone de Wordle en quelques heures, mais pour moi, cela a été un projet de plusieurs mois. J'y ai surtout travaillé le soir avant de me coucher, et cela a été une expérience très agréable. Cela m'a surpris du nombre de pièces mobiles qu'il y a dans un jeu de terminal apparemment simple.
Vous pouvez trouver mon code sur GitHub ici.
Le projet est toujours en cours de développement et j'ai l'intention de continuer à corriger les bugs et à ajouter des fonctionnalités au fil du temps. En un mot, voici comment fonctionne le jeu :
Au lancement, l'utilisateur voit un écran de démarrage et est invité à saisir son nom. Ensuite, le jeu sélectionne un mot secret en arrière-plan, actuellement parmi une liste test de dix mots de 6 lettres. Dans une version ultérieure, je prévois d'étendre cette liste afin que beaucoup plus de mots possibles soient disponibles. Le programme affiche alors un clavier et une grille des suppositions en cours. Seules les suppositions de 6 lettres sont acceptées, avec uniquement des caractères alphanumériques. Chaque fois qu'une proposition est soumise, le programme l'analyse et la compare au mot secret. Si le joueur a sélectionné une lettre correcte au bon endroit, elle est imprimée en vert et la lettre correspondante devient verte sur le clavier. Si la lettre est correcte mais mal placée, elle est imprimée en jaune. Si une lettre est incorrecte, elle est imprimée en gris. Ce processus imite fidèlement la logique du jeu original, même si j'ai découvert quelques bugs extrêmes qui peuvent provoquer son crash. Si le joueur devine le mot correctement en six tentatives, il gagne. S'ils font plus de six tentatives, le jeu se termine par un échec.
Ça paraît simple, mais en réalité, il m'a fallu quelques mois pour en arriver là. J'ai été surpris par la complexité de mon code et, plus tard, je prévois de le simplifier si possible. En même temps, c'était un défi vraiment agréable pour moi et je suis heureux d'avoir pu aller jusqu'ici. Je souhaite continuer le cours maintenant, mais j'ai bien l'intention d'y revenir régulièrement pour faire quelques mises à jour. Si vous avez des suggestions sur le code ou de nouvelles fonctionnalités possibles, n'hésitez pas à me le faire savoir.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds











Python convient à la science des données, au développement Web et aux tâches d'automatisation, tandis que C convient à la programmation système, au développement de jeux et aux systèmes intégrés. Python est connu pour sa simplicité et son écosystème puissant, tandis que C est connu pour ses capacités de contrôle élevées et sous-jacentes.

Vous pouvez apprendre les concepts de programmation de base et les compétences de Python dans les 2 heures. 1. Apprenez les variables et les types de données, 2. Flux de contrôle maître (instructions et boucles conditionnelles), 3. Comprenez la définition et l'utilisation des fonctions, 4. Démarrez rapidement avec la programmation Python via des exemples simples et des extraits de code.

Python excelle dans les jeux et le développement de l'interface graphique. 1) Le développement de jeux utilise Pygame, fournissant des fonctions de dessin, audio et d'autres fonctions, qui conviennent à la création de jeux 2D. 2) Le développement de l'interface graphique peut choisir Tkinter ou Pyqt. Tkinter est simple et facile à utiliser, PYQT a des fonctions riches et convient au développement professionnel.

Vous pouvez apprendre les bases de Python dans les deux heures. 1. Apprenez les variables et les types de données, 2. Structures de contrôle maître telles que si les instructions et les boucles, 3. Comprenez la définition et l'utilisation des fonctions. Ceux-ci vous aideront à commencer à écrire des programmes Python simples.

Python est plus facile à apprendre et à utiliser, tandis que C est plus puissant mais complexe. 1. La syntaxe Python est concise et adaptée aux débutants. Le typage dynamique et la gestion automatique de la mémoire le rendent facile à utiliser, mais peuvent entraîner des erreurs d'exécution. 2.C fournit des fonctionnalités de contrôle de bas niveau et avancées, adaptées aux applications haute performance, mais a un seuil d'apprentissage élevé et nécessite une gestion manuelle de la mémoire et de la sécurité.

Pour maximiser l'efficacité de l'apprentissage de Python dans un temps limité, vous pouvez utiliser les modules DateTime, Time et Schedule de Python. 1. Le module DateTime est utilisé pour enregistrer et planifier le temps d'apprentissage. 2. Le module de temps aide à définir l'étude et le temps de repos. 3. Le module de planification organise automatiquement des tâches d'apprentissage hebdomadaires.

Python est largement utilisé dans les domaines du développement Web, de la science des données, de l'apprentissage automatique, de l'automatisation et des scripts. 1) Dans le développement Web, les cadres Django et Flask simplifient le processus de développement. 2) Dans les domaines de la science des données et de l'apprentissage automatique, les bibliothèques Numpy, Pandas, Scikit-Learn et Tensorflow fournissent un fort soutien. 3) En termes d'automatisation et de script, Python convient aux tâches telles que les tests automatisés et la gestion du système.

Python excelle dans l'automatisation, les scripts et la gestion des tâches. 1) Automatisation: La sauvegarde du fichier est réalisée via des bibliothèques standard telles que le système d'exploitation et la fermeture. 2) Écriture de script: utilisez la bibliothèque PSUTIL pour surveiller les ressources système. 3) Gestion des tâches: utilisez la bibliothèque de planification pour planifier les tâches. La facilité d'utilisation de Python et la prise en charge de la bibliothèque riche en font l'outil préféré dans ces domaines.
