許多JavaScript初學者都會得到一個看似簡單的建議:“多做項目”。
誠然,項目通常是學習任何編程語言的有效途徑。然而,問題在於,許多人在掌握足夠的基礎知識之前就嘗試複雜的項目,從而導致判斷失誤。
這非常重要,因為過早地嘗試大型項目是許多人放棄學習JavaScript的主要原因之一。
為了避免這種情況,本文將涵蓋以下內容:
本文旨在幫助您增強信心,無論您學習的是JavaScript還是其他語言。
本文由Tim Severien和Chris Perry審核。感謝所有SitePoint的同行評審員,他們讓SitePoint的內容達到最佳狀態!
我經常聽到想學習JavaScript的人說:“我做一個簡單的幻燈片就好了。”
他們嘗試製作幻燈片,通常會發生以下兩種情況之一:
為什麼會這樣?
JavaScript初學者通常選擇幻燈片作為他們的第一個項目,因為它聽起來很簡單。
但嘗試之後,他們發現比想像的要難得多。製作幻燈片可能涉及數組、函數、循環、動畫、計時、事件監聽器、DOM操作等等。對於初學者來說,這可能是壓倒性的新概念數量。
突然間,這個原本應該簡單的項目變得太難了。這種與最初預期的差異會產生負面的心理影響。 “如果我連這個簡單的東西都做不了,”學習者會告訴自己,“那我可能不適合學習JavaScript。”
或者,有些人會成功地創建一個幻燈片,但它會通過大量的教程幫助拼湊而成,對實際發生的事情知之甚少。在這種情況下,你經常會聽到這樣的說法:“我可以按照教程操作,但我無法自己應用它。”
無論哪種方式,最終結果通常都是一種沮喪感,這可能會阻止人們學習JavaScript。
這些情況不僅發生在幻燈片上,也發生在學習者過早嘗試的其他項目上。例如,待辦事項清單聽起來很簡單,但如果數據需要保存在瀏覽器的本地存儲或cookie之外,那可能是一個完整的全棧項目。
當有人開始學習JavaScript時,很難預先判斷項目的難度級別,這就是問題的根源。
為了使討論更具體,以下是一些人們經常過早嘗試的看似簡單的項目,以及實際涉及的概念。
項目
涉及的概念
本節的重點不是嚇唬你,讓你不敢嘗試新事物。只要你不從一開始就嘗試這些項目,你就能比你預期的更快地完成一些項目。
你只需要一個更好的方法。
以下是一些避免過早進行項目相關陷阱的策略:
不要直接跳入大型項目,嘗試先學習最小的功能塊。這樣,你將從更強大的知識基礎開始,並更容易地編寫代碼。
例如,使用innerHTML在div中顯示文本。更改段落文本的顏色。將兩個數字相加。編寫你的第一個函數。熟悉變量。將一系列內容存儲在數組或對像中。在按鈕被點擊時觸發某些事件。使用if和else學習邏輯。嘗試一些循環。
嘗試這些概念並熟悉它們。你很快就會發現自己能夠創建很多東西。此外,你新獲得的經驗將使你更好地決定要進行哪些項目。隨著你看到自己取得的成功越來越多,你的信心也會增強,這種動力將比一開始就衝進大型項目更快地推動你前進。
需要明確的是,挑戰很重要,因為它們能幫助你成長。突破舒適區是很好的,但不要超出你進步的範圍。
在學習過程中,確保花一些時間在真實條件下練習。這意味著使用你自己的文本編輯器和瀏覽器,在不依賴教程的情況下編寫一些代碼。
你越是在真實條件下練習編碼,在創建真實項目時就越不容易感到卡住。
這是避免能夠使用教程完成某些操作但無法自己應用它的好方法。
一旦你開始學習JavaScript的基礎知識,你就會開始了解哪些項目是觸手可及的。
雖然挑戰自己很重要,但例如,在你不知道如何在屏幕上顯示一行文本之前,你不會嘗試構建一個端到端的數字銀行應用程序。
讓我們來看一些你可以學習的概念和你可以完成的小型項目的具體示例。表中的示例是有序的——每個項目都建立在之前的知識之上。
學習的新概念
可能的小型項目
請注意,這次我們做了不同的順序。我們不是從一個項目開始,然後試圖追趕所需的概念,而是從概念開始,並基於這些概念構建項目。
這對你學習的方式產生了深遠的影響,因為你不再跳得太遠而感到落後,而是學習了讓你在每一步都能自信前進的基礎知識。你學習的小事情會相互建立,很快你就會到達你一開始就想做的更大的項目。
假設你已經學習了一些概念,並且你開始嘗試項目。
你如何考慮使用哪些概念以及避免哪些概念?
為了使用非編碼的類比,假設你正在製作一把椅子,並且你想用螺絲將兩塊木頭固定在一起。你可以用手,它會起作用,但這會很痛苦和乏味。既然你知道螺絲刀,你就知道它們會更好。電動螺絲刀會更好得多。
在這個例子中,你掌握的工具越多,你就越能看到問題並知道選擇哪個工具。
為了將這個例子帶回到編碼,每個概念都像一個工具。你學習的概念越多,你的編碼工具箱就越大,你就會越覺得知道該用什麼。
有了這個背景,以下是一些思考項目的一些實用方法:
當你用越來越多的項目採取這些步驟時,你將開始對選擇適合工作的正確概念感到更舒服。
剩下的只是練習。
項目可能是學習JavaScript最好和最壞的方式。區別在於時機。
最後,應該說每個人學習的方式都不同。本文中的任何想法都不意味著是硬性規定。相反,它們是我希望能夠幫助你或你認識的人避免我看到太多人陷入的陷阱的一些友好建議。
既然你來了,你對這一切有什麼看法?你有什麼問題、故事或經驗想分享關於學習編碼的?
請隨時在評論中告訴我。
雖然項目可以提供實踐經驗和實踐知識,但它們可能並不總是學習JavaScript的最佳方式。這是因為項目通常需要一定程度的語言理解,而初學者可能沒有這種理解。此外,項目有時可能會讓人不知所措且複雜,導致混淆和沮喪。在深入研究項目之前,擁有紮實的基礎知識非常重要。
在開始JavaScript項目之前,掌握JavaScript的基礎知識至關重要,包括變量、數據類型、函數、循環和條件語句。 HTML和CSS的知識也很有益,因為它們經常與JavaScript結合用於Web開發項目。
有幾種方法可以有效地學習JavaScript,而不僅僅依賴於項目。這些方法包括在線教程、編碼訓練營和教科書。此外,在LeetCode和HackerRank等平台上練習編碼問題可以幫助強化概念並提高解決問題的能力。
一些適合初學者的簡單JavaScript項目包括創建計算器、待辦事項列表、天氣應用程序或井字棋之類的簡單遊戲。這些項目可以幫助初學者以實踐的方式應用他們學到的概念。
在處理JavaScript項目時遇到挑戰時,務必將問題分解成更小、更易於管理的部分。使用調試工具來識別和修復錯誤。不要猶豫向StackOverflow或GitHub等在線社區尋求幫助。
了解React、Angular或Vue.js等JavaScript框架對項目非常有益。這些框架可以簡化開發過程並提供有用的功能。但是,在深入研究這些框架之前,掌握JavaScript基礎知識非常重要。
雖然做項目可以提供實踐經驗,但僅僅依靠項目來學習JavaScript是不明智的。為了全面理解,還必須學習該語言的理論和基礎知識。
在選擇JavaScript項目時,請考慮您目前的技能水平和興趣。選擇一個具有挑戰性但不至於讓人不知所措的項目。選擇與您的職業目標或興趣相符的項目也很有幫助。
為了保持動力,為每個項目設定明確、可實現的目標。慶祝沿途取得的小胜利。加入編碼社區或找到導師來提供支持和鼓勵。
網上有很多資源可以幫助完成JavaScript項目。這些資源包括在線教程、編碼訓練營、StackOverflow等論壇以及JavaScript官方網站上的文檔。
以上是有時項目可能是學習JavaScript的最糟糕方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!