從 Blackjack 遊戲過渡到 Pokémon 數據下載器 CLI 是一次有益(且令人謙卑)的旅程!以下是我學到的知識、遇到困難的地方,以及每個專案如何幫助我成長為開發人員。
當我開發二十一點遊戲時,我必須掌握控制流程、條件邏輯和管理使用者輸入。 Blackjack 相對獨立,但它讓我有信心處理專案結構並調試出現的問題。這些基礎知識在 Pokémon CLI 專案中變得非常有價值,其中的內容較少涉及遊戲規則,而更多涉及獲取和管理外部資料。有了這個基礎幫助我專注於更新、更複雜的領域,例如非同步函數和錯誤處理。
在 Pokémon CLI 中,最大的飛躍之一是學習以現實世界的方式使用非同步函數和錯誤處理。練習很有幫助,但在這個專案中使用 async/await 鞏固瞭如何處理 API 請求,確保我的程式在出現問題時不會崩潰。每次我處理錯誤時,我都會學會將它們視為過程的一部分,而不是感覺被它們打敗。我會註銷值以縮小問題範圍,尤其是當錯誤似乎指向意外的地方時。例如,我收到了一個似乎與我的更改無關的引用錯誤,但發現我錯過了更新另一個文件中的引用。我發現控制台日誌記錄可以改變遊戲規則,幫助追蹤問題的根源。
我最艱鉅的挑戰之一是學習閱讀詢問器和路徑等套件的文檔。感覺就像有人告訴我要在森林裡尋找神話生物,但我卻不知道它是什麼樣子。經過一些實驗後,詢問者是可以管理的,特別是在驗證選項方面。但路徑是另一回事——一開始我不知道如何處理它。我最終尋找更多的介紹資源來了解路徑的作用以及為什麼要使用它。
這個過程告訴我,有時當官方文件讓人感到不知所措時,放棄它也是可以的。我開始尋找教學和範例來了解每個套件的用途,然後再深入文件以了解特定功能。
這個 Pokémon CLI 專案感覺就像是我的 Blackjack 遊戲的複雜性提高了一步,推動我在錯誤處理、非同步函數和閱讀文件方面不斷進步。我還了解了 ArrayBuffer 和處理二進位數據,我用它來在本地儲存圖像,而不僅僅是獲取 URL。雖然我不完全理解 ArrayBuffer 的所有機制,但我已經足夠了解,可以在這個專案中有效地使用它。
回顧過去,每個專案都建立在上一個專案的基礎上。雖然還有很多東西需要學習,但看到這些技能的發展令人鼓舞。我很高興能夠更有信心地處理我的下一個專案(也許還可以在文件中追蹤一些不那麼神秘的生物)!
你可以在我的github上找到該專案!
https://github.com/liamdewitt/pokemon-downloader-cli
以上是我的第一個專案的經驗教訓的詳細內容。更多資訊請關注PHP中文網其他相關文章!