Heim >Backend-Entwicklung >Python-Tutorial >Du weißt, wann du verbal gesprochen wurdest ...
Haben Sie zu Beginn eines Projekts jemals gedacht: „Wie schwer könnte es sein?“ - nur um Monate später herauszufinden, dass die Antwort lautet: „Viel schwieriger, für den Moment definitiv überfordert.“ Nun, das fasst das Projekt, an dem ich schon seit einiger Zeit arbeite, ungefähr zusammen. Hier ist die Geschichte.
Ich interessiere mich schon seit Jahren für Computer. Ich baute meinen ersten PC, als ich Teenager war, im Jahr 2008, und damals schien Software eine Art mysteriöse Zauberei zu sein, die ich nicht verstehen konnte. Spulen wir vor etwa einem Jahr vor, als ich mich für die Codecademy anmeldete. Teilweise wollte ich versuchen, eine neue Fähigkeit zu erlernen, falls ich mich in Zukunft für einen Jobwechsel entscheiden sollte oder muss. Meistens war es jedoch nur Spaß und persönliche Befriedigung – vielleicht könnte ich endlich etwas mehr darüber verstehen, wie diese mysteriöse Software funktioniert?
Mein erster Halt war der kostenlose C#-Kurs, der mich so neugierig machte, dass ich mich für ein Jahresabonnement anmeldete. Ein paar Monate später entschloss ich mich, einen großen Schritt zu machen und den Informatik-Karriereweg zu beginnen. Obwohl ich mich für etwas wie Webentwicklung hätte entscheiden können, dachte ich, dass Informatik eher zu meinen ursprünglichen Interessen passte, als ich mich zum ersten Mal mit Computern beschäftigte – nicht nur zu lernen, wie man programmiert, sondern auch, wie alles unter der Haube funktioniert.
Der Kurs begann damit, mir eine neue Sprache beizubringen – Python. Ich hatte gehört, dass diese Sprache eine der beliebtesten Sprachen für Anfänger ist, und ich konnte verstehen, warum. Nachdem ich mich zuvor mit C# beschäftigt hatte, was ganz einfach schien, aber mit einigen seltsamen Macken behaftet war, die mir über den Kopf gingen, habe ich mich für Python wie eine Ente im Wasser entschieden.
Dann kam jedoch der Teil des Kurses, in dem ich mein erstes Portfolio-Projekt erstellen musste. Die Aufgabe bestand darin, ein Terminalspiel in Python zu erstellen und es auf GitHub und einer Blogging-Plattform zu veröffentlichen. Nun, anfangs war es der Teil der Aufgabe, der mich sträubte, mein Projekt mit anderen zu teilen. Ich scheue davor zurück, Dinge öffentlich zu veröffentlichen, vor allem, wenn ich das Gefühl habe, nicht richtig zu wissen, was ich tue. Eine in der Vergangenheit gescheiterte Karriere als Karikaturist lehrte mich, wie gefährlich es ist, zu prahlen – und den Eindruck zu erwecken, dass ich kompetenter und vielleicht erfahrener sei, als ich tatsächlich war, um möglicherweise Kunden zu gewinnen. Das ist jedoch eine andere Geschichte.
Im Grunde ist die Kurzfassung dieser langen Präambel, dass ich diesen Beitrag schreibe, weil Codecademy mich dazu gezwungen hat. Ich mache mir keine Illusionen darüber, dass ich ein großartiger Programmierer bin – ich bin nur ein neugieriger Nerd, der es gerne bis zum Ende dieses Kurses schaffen und dabei ein paar coole Dinge lernen möchte. Und wissen Sie was, ich bin damit zufrieden, und wenn Sie im selben Boot wie ich sitzen, sollten Sie es auch sein.
Was ist also mit dem Spiel, das ich erstellen sollte? Ich hatte ein paar Startvorschläge von Codecademy, wie Blackjack, Tic-Tac-Toe und Minesweeper, aber ich wollte etwas anderes ausprobieren. Ein Spiel, das ich jeden Tag gerne spiele, ist „Wordle“, das jetzt der New York Times gehört und von ihr gehostet wird. Anscheinend begann dieses Spiel als kleines persönliches Projekt, das ein Mann für seine Freundin machte, und ich war fasziniert von der scheinbaren Einfachheit der Spielregeln und der Art und Weise, wie es zu funktionieren schien. Also machte ich mich daran, meine eigene Version von „Wordle“ zu erstellen, um zu sehen, ob ich es selbst herausfinden könnte. Denn wie schwer könnte es sein?...
Die kurze Antwort – etwas schwieriger als ich dachte, wenn man bedenkt, dass ich lediglich ein Anfänger bin. Ich bin mir sicher, dass ein Experte in ein paar Stunden einen Wordle-Klon erstellen könnte, aber für mich war das ein monatelanges Projekt. Ich habe hauptsächlich abends vor dem Schlafengehen daran gearbeitet und es war eine sehr angenehme Erfahrung. Es hat mich überrascht, wie viele bewegliche Teile es in einem scheinbar einfachen Terminalspiel gibt.
Meinen Code finden Sie hier auf GitHub.
Das Projekt ist noch in Arbeit und ich beabsichtige, im Laufe der Zeit weiterhin Fehler zu beheben und Funktionen hinzuzufügen. Kurz gesagt, hier ist, wie das Spiel funktioniert:
Beim Start wird dem Benutzer ein Begrüßungsbildschirm angezeigt und er wird aufgefordert, seinen Namen einzugeben. Als nächstes wählt das Spiel im Hintergrund ein geheimes Wort aus, derzeit aus einer Testliste mit zehn Wörtern mit sechs Buchstaben. In einer späteren Version habe ich vor, diese Liste zu erweitern, sodass viele weitere mögliche Wörter verfügbar sind. Das Programm zeigt dann eine Tastatur und ein Raster mit den aktuellen Schätzungen an. Es werden nur Schätzungen mit 6 Buchstaben und nur alphanumerischen Zeichen akzeptiert. Jedes Mal, wenn ein Tipp abgegeben wird, analysiert das Programm den Tipp und vergleicht ihn mit dem geheimen Wort. Wenn der Spieler einen richtigen Buchstaben an der richtigen Stelle ausgewählt hat, wird dieser grün gedruckt und der entsprechende Buchstabe wird auf der Tastatur grün. Wenn der Buchstabe richtig, aber falsch platziert ist, wird er gelb gedruckt. Wenn ein Buchstabe falsch ist, wird er grau gedruckt. Dieser Prozess ahmt die Logik des Originalspiels sehr gut nach, obwohl ich ein paar Randfehler entdeckt habe, die zum Absturz führen können. Wenn der Spieler das Wort innerhalb von sechs Versuchen richtig errät, gewinnt er. Wenn mehr als sechs Versuche unternommen werden, endet das Spiel mit einem Misserfolg.
Es klingt also einfach, aber es hat tatsächlich ein paar Monate gedauert, bis ich dieses Stadium erreicht habe. Ich war überrascht, wie kompliziert mein Code wurde, und habe vor, ihn zu einem späteren Zeitpunkt nach Möglichkeit zu vereinfachen. Gleichzeitig war es eine wirklich schöne Herausforderung für mich und ich bin froh, dass ich es so weit geschafft habe. Ich möchte jetzt mit dem Kurs fortfahren, habe aber die feste Absicht, regelmäßig darauf zurückzukommen, um einige Aktualisierungen vorzunehmen. Wenn Sie Vorschläge zum Code oder zu möglichen neuen Funktionen haben, lassen Sie es mich bitte wissen.
Das obige ist der detaillierte Inhalt vonDu weißt, wann du verbal gesprochen wurdest .... Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!