Heim > Artikel > Web-Frontend > Lehren aus meinem ersten Projekt
Der Übergang von einem Blackjack-Spiel zu einem Pokémon-Daten-Downloader-CLI war eine lohnende (und demütigende) Reise! Hier erfahren Sie, was ich gelernt habe, wo ich steckengeblieben bin und wie jedes Projekt mir geholfen hat, als Entwickler zu wachsen.
Als ich an meinem Blackjack-Spiel arbeitete, beschäftigte ich mich mit Kontrollfluss, bedingter Logik und der Verwaltung von Benutzereingaben. Blackjack war relativ eigenständig, aber es gab mir Sicherheit, mit der Projektstruktur umzugehen und auftretende Probleme zu beheben. Diese Grundlagen wurden im Pokémon-CLI-Projekt unglaublich wertvoll, wo es weniger um Spielregeln als vielmehr um das Abrufen und Verwalten externer Daten ging. Diese Grundlage hat mir geholfen, mich auf die neueren, komplexeren Bereiche wie asynchrone Funktionen und Fehlerbehandlung zu konzentrieren.
In der Pokémon-CLI bestand einer der größten Fortschritte darin, zu lernen, wie man mit asynchronen Funktionen und Fehlerbehandlung in der Praxis arbeitet. Übungen waren hilfreich, aber die Verwendung von async/await in diesem Projekt hat den Umgang mit API-Anfragen gefestigt und sichergestellt, dass mein Programm nicht abstürzt, wenn etwas schief geht. Jedes Mal, wenn ich mit Fehlern umging, lernte ich, sie als Teil des Prozesses zu erwarten, anstatt mich von ihnen besiegt zu fühlen. Ich habe Werte abgemeldet, um Probleme einzugrenzen, insbesondere wenn der Fehler auf etwas Unerwartetes hinzuweisen schien. Beispielsweise erhielt ich einen Verweisfehler, der scheinbar nichts mit meinen Änderungen zu tun hatte, und musste dann feststellen, dass ich die Aktualisierung eines Verweises in einer anderen Datei verpasst hatte. Ich habe festgestellt, dass die Konsolenprotokollierung die Rückverfolgung von Problemen bis zu ihrer Quelle grundlegend verändert hat.
Eine meiner größten Herausforderungen bestand darin, die Dokumentation für Pakete wie „inquirer“ und „path“ lesen zu lernen. Es fühlte sich an, als würde man mir sagen, ich solle ein Fabelwesen in einem Wald finden, ohne zu wissen, wie es aussah. Nach einigem Experimentieren war Inquirer beherrschbar, insbesondere was die Validierungsoptionen betraf. Aber der Weg war eine andere Geschichte – ich hatte zunächst keine Ahnung, wie ich ihn angehen sollte. Letztendlich suchte ich nach weiteren Einführungsressourcen, um einen Eindruck davon zu bekommen, was Path überhaupt bewirkt und warum ich ihn verwenden möchte.
Dieser Prozess hat mich gelehrt, dass es manchmal in Ordnung ist, von der offiziellen Dokumentation Abstand zu nehmen, wenn sie sich überwältigend anfühlt. Ich begann nach Tutorials und Beispielen zu suchen, um den Zweck jedes Pakets zu verstehen, bevor ich mich erneut mit den Dokumenten befasste, um spezifische Funktionen zu finden.
Dieses Pokémon-CLI-Projekt fühlte sich im Vergleich zu meinem Blackjack-Spiel wie eine Steigerung der Komplexität an und brachte mich dazu, mich in den Bereichen Fehlerbehandlung, asynchrone Funktionen und Lesen von Dokumentation weiterzuentwickeln. Ich habe auch etwas über ArrayBuffer und den Umgang mit Binärdaten gelernt, mit denen ich Bilder lokal gespeichert habe, anstatt nur URLs abzurufen. Obwohl ich nicht alle Mechanismen von ArrayBuffer vollständig verstehe, verstehe ich genug, um es in diesem Projekt effektiv zu nutzen.
Rückblickend baut jedes Projekt auf dem letzten auf. Es gibt zwar noch viel zu lernen, aber es ist ermutigend zu sehen, wie sich diese Fähigkeiten weiterentwickeln. Ich freue mich darauf, mein nächstes Projekt mit noch mehr Selbstvertrauen anzugehen (und vielleicht ein paar weniger mythische Kreaturen, die ich in den Dokumenten aufspüren kann)!
Das Projekt findet ihr auf meinem Github!
https://github.com/liamdewitt/pokemon-downloader-cli
Das obige ist der detaillierte Inhalt vonLehren aus meinem ersten Projekt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!