如果你對創建計算機程序、移動應用程序、網站、游戲或任何其他軟件感興趣,你都需要學習如何編程。程序都是通過使用編程語言來創建的。在計算機科學迅猛發展的今天,coding能力也顯得愈發重要。如果你從未編程過,那也不要慌。今天就跟大家談談,作為新手,該如何學習編程?
注:本文只是提供一個學習的思路,并不是具體的手把手解決方案哦。
1、選擇一門語言
1)確定你感興趣的領域。
你可以開始學習任何編程語言(盡管有些語言絕對比其他語言“容易”),所以你首先要問自己,你想通過學習編程語言來達到什么目的?這將幫助你確定應該從事哪種類型的編程,并為你提供一個良好的起點。
2)考慮從“更簡單”的語言開始。
不管你的決定如何,你都可以考慮從一種高級的、更簡單的語言開始。這些語言對初學者特別有用,因為它們的基本概念和思維過程幾乎可以適用于任何語言。
- 這一類中最流行的兩種語言是Python和Ruby。這兩種語言都是面向對象的web應用程序語言,使用了非常易讀的語法。
- “面向對象”意味著語言是圍繞“對象”的概念構建的,即數據集合及其操作。這一概念應用于許多高級編程語言,如C++、java、Objtovi-C和PHP。
3)通讀各種語言的基本教程。
如果你還不確定應該開始學習哪種語言,請閱讀一些不同語言的教程。如果一種語言比其他語言更有意義,那就試一下,看看它是否合拍。網上相關的教程有很多。
- Python——一種很好的入門語言,當你熟悉它時會感受到它的強大。用于許多web應用程序和許多游戲領域。
- Java——用于無數種程序中,從游戲到web應用程序再到ATM軟件。
- HTML——任何web開發人員的基本起點。在進行任何其他類型的web開發之前,掌握HTML是至關重要的。
- C語言——是一種較古老的語言,C仍然是一個強大的工具,是C++、Objtovi-C的基礎。
2、從小處開始
1)學習語言的核心概念。
雖然這一步驟的應用部分會因你選擇的語言而有所不同,但所有編程語言都有一些基本概念,這些概念對于構建程序至關重要。盡早學習和掌握這些概念將使解決問題和創建強大而高效的代碼變得更容易。以下是一些不同語言中的一些核心概念:
- 變量——變量是一種存儲和引用不斷變化的數據的方法。變量可以被操作,并且通常具有定義的類型,例如“整數”、“字符”和其他類型,這些類型決定了可以存儲的數據的類型。在編碼時,變量通常有一些名稱,可以讓讀者在某種程度上識別它們。這樣就更容易理解變量如何與其余代碼交互。
- 條件語句——條件語句是根據語句是否為真而執行的操作。條件語句最常見的形式是“If-else”語句。如果這個陳述是真的(例如x=1),那么就會發生一件事。如果陳述是錯誤的(例如x!=1),然后發生其他事情。
- 函數或子例程——根據語言的不同,這個概念有不同的說法。它也可以是“過程”、“方法”或“可調用單元”。這本質上是一個大程序中的一個小程序。一個函數可以被程序多次“調用”,這樣程序員就可以高效地創建復雜的程序。
- 數據輸入——這是一個廣泛的概念,幾乎在每種語言中都有使用。它包括處理用戶的輸入以及存儲這些數據。如何收集這些數據取決于程序的類型和用戶可用的輸入(鍵盤、文件等)。這與輸出密切相關,輸出是將結果返回給用戶的方式,無論是在屏幕上顯示還是在文件中傳遞。
2)安裝任何必要的軟件。
許多編程語言都需要編譯器,編譯器是用來將代碼翻譯成機器可以理解的語言的程序。其他語言(例如Python)使用解釋器,該解釋器無需編譯即可立即執行程序。
某些語言具有IDE(集成開發環境),通常包含代碼編輯器,編譯器和或解釋器以及調試器。這使程序員可以在一處執行任何必要的功能。IDE也可能包含對象層次結構和目錄的直觀表示。
- 網上有各種代碼編輯器。這些程序提供了突出顯示語法的不同方法,并提供了其他對開發人員友好的工具。
3、創建你的第一個程序
1)一次只關注一個概念。
任何語言最開始都是教大家“Hello World”。這是一個非常簡單的程序,它在屏幕上顯示文本“Hello,World”(或其他變體)。這個程序是教給第一次編程的程序員如何創建一個基本的、功能性程序,以及如何處理顯示輸出。通過更改文本,可以了解程序如何處理基本數據。
2)通過解構網上的例子學習。
幾乎每種編程語言都有成千上萬的代碼示例。用這些例子來檢查語言的各個方面是如何工作的,以及不同部分是如何相互作用的。從不同的例子中獲取一些零碎的東西來創建你自己的程序。
3)檢查語法。
語法是編寫語言的方式,以便編譯器或解釋器能夠理解它。每種語言都有一個獨特的語法,盡管有些元素可以跨多種語言共享。學習語法對于學習如何用語言編程是必不可少的。
4)嘗試改變。
對示例程序進行更改,然后測試結果。通過實驗,你可以比閱讀一本書更快地了解什么是有效的,什么是無效的。不要害怕破壞你的程序;學習修復錯誤是任何開發過程中的一個主要部分,任何新事物幾乎永遠不會在第一次就能正確工作。所以別怕犯錯!
5)開始練習調試。
當你在編程時,你總是會遇到bug。這些都是程序中的錯誤,幾乎可以在任何地方出現。bug可以是程序中無害的異常,也可以是阻止程序編譯或運行的主要錯誤。找出并修復這些錯誤是軟件開發周期中的一個主要過程,所以要盡早習慣這樣做。
6)注釋代碼。
幾乎所有的編程語言都有一個“comment”函數,允許你包含未經解釋器或編譯器處理的文本。這允許您對代碼的作用留下簡短但清晰的語言解釋。這不僅有助于您記住代碼在大型程序中所做的工作,而且是協作環境中的基本實踐,因為它能幫助其他人理解你的代碼干嘛的。
4、經常練習
1)每天敲代碼。
掌握一門編程語言首先需要時間。即使是像Python這樣的簡單語言,可能只需要一兩天就能理解基本語法,也需要花費大量時間才能真正精通。和其他技能一樣,練習是變得更熟練的關鍵。試著每天至少花一些時間來編寫代碼,即使只是工作和晚餐之間的一個小時。
2)為你的計劃設定目標。
通過設定挑戰性的目標和解決方案,你可以開始解決問題。試著想想一個基本的應用程序,比如一個計算器,并開發出一種方法來實現它。使用你所學的語法和概念,并將它們應用到實際應用中。
3)與他人交談。
有很多編程社區致力于特定的語言。找到并參與一個社區可以為你的學習提供幫助??梢宰屇阍趯W習過程中獲得各種樣本和工具。閱讀其他程序員的代碼可也以啟發你,幫助你掌握你還沒有掌握的概念。
4)挑戰你自己讓它變得有趣。
試著做一些你還不知道該怎么做的事情。研究完成任務的方法,然后嘗試在自己的程序中實現。盡量避免滿足于一個“基本”工作的程序。盡你所能確保每一個方面都能完美地工作。
5、參加一些培訓課程擴大你的知識面
網上現在有很多有針對性的精品課程,可以提升我們的編程能力。這些對新程序員來說非常好,因為你可以從有經驗的程序員那里獲得實際幫助,也可以與其他學習的程序員建立聯系。下面這個C語言小課也是專為0基礎小白設計的系統小課,課程總共三節視頻,包含軟件、源碼。交互式課堂,邊玩邊實操,生動有趣,并且有老師答疑輔導,不怕學不會。同時可以參與學習社群交流,收獲志同道合小伙伴:
實話說,網上現在的編程課程真的太多太多,有針對性的精品課程,可以提升我們的編程能力,讓我們更快的掌握相關技能。不過選擇是門藝術,面對琳瑯滿目、種類繁雜的編程課程,我們該如何選擇呢?以時間為代價去盲目的學習這些良莠不齊的的資源,就是一種浪費。
6、運用你的技能
1)參加一些培訓計劃。
雖然不是絕對必要的,但誠如上文介紹到的一些課程可以讓你接觸到各種不同的語言,可以在老師的帶領下進行實操演練,方向更明確也更有針對性,也可以幫助你與專業人士和其他學生建立聯系。
2)創建文件夾。
當你創建程序和擴展你的知識時,確保你所有最好的工作都保存在一個文件夾中。你可以向招聘人員和面試官展示你所做的工作。
3)做一些自由職業工作。
程序員,特別是移動應用程序開發人員有非常大的自由職業市場。做一些小的自由職業,了解商業編程是如何工作的。
4)開發你自己的軟件。
你不必為公司打工。如果你有這個技能,你可以自己開發軟件,然后發布。準備好為你發布的任何軟件提供技術支持,因為客戶希望他們買到的是真正有用的東西。
評論列表(1條)
多敲代碼,不要強記函數,做好標記后期索引使用感覺樓主說的挺好我現在就在學C#語言,在培訓班里 老師敲代碼,一使用委托,事件多線程使用時就頭疼 寫法每次都有變化 靠死記硬背根本不可能,同時還影響自己的學習進度和效率 還有就是做筆記,老想著把知識點串聯起來,其實對于初學者肯定是零散的,隨便看一段代可能有新的知識,千萬不能盲人摸象,摸到哪兒就認定這個知識就是這么一回事,要保持隨時接收新事物的心態。還有就是日常遇問題,如果不能解決就先放開,等個過幾天可能就清楚了。我一般對一個陌生的問題會給自己一段時間,比如20min,還是沒有進展就先保留,繼續干其他事情,耗時太長,會讓自己變得疲憊 并且最后還是沒有答案,時間上也是浪費。還有就是最重的“堅持”以興趣為導向的學習是沒有壓力的,但當你是以職業發展去學習的話情況就完全不一樣了,日常中難免會出現想中途放棄的,或破例偷懶的情況,尤其是在晚上更容易沉迷于手機放棄學業,但你一定要堅持下來,勞逸結合肯定要有,但該堅持的時候千萬不能掉鏈子否則事后一定會后悔。天平相對而言永遠是平衡的,你走的每一步對你之后發生的事件都是有關聯的,不同階段都有該階段需要完成的使命,剛開始讀書可能看不出來什么,到大學倒也還可以,每天都是一起上課,吃飯,睡覺,吃路邊攤,看著好像一模一樣,但其實差距已經在慢慢拉開了,學習能力的鍛煉和提升遠比你會死解幾道復合函數重要的多。之前落下的,之后要想補上來你就需要花比別人更多的時間精力和財力才能補回來,這是你欠下的,么有辦法。不管干什么事情,心態很重要,切莫急功近利,有詳細的目標規劃當然最好。想說的很多,光“想”“說”遠不如“行動”來的更實在些,我一直都在提醒自己,多做少想,大體方向確定后行動就可以了,路途中肯定會有疑惑和絆腳石,沒辦法這就是生活呀!能從苦中嘗出甜來可能也是人生的一種境界吧?。?!