當前位置:編程學習大全網 - 編程語言 - 怎麽學習計算機編程

怎麽學習計算機編程

普通人如何學習編程

Acherie

現在,計算機已經融入到了我們生活的方方面面,手機、電腦、智能家居等。在計算機變得如此普遍的今天,是不是每個人都應該學習壹點編程呢?

2013年,非營利性組織?Code.org?發起了“Hour of Code”的倡議,得到了很多著名人物和企業的支持(Is Computer Programming Hard to Learn ?),其中包括紮克伯格、比爾蓋茨、蘋果、谷歌,就連美國總統奧巴馬都發布視頻呼籲每個美國公民都學習編程。

李笑來老師建議必備的兩個技能——英語和編程。“改變自己”的輝哥(張輝)也在文章中提到過自己利用 python 寫了壹個群發郵件的腳本。

所以,這麽多名人,牛人都呼籲大家學習編程,那麽普通人學習編程到底有什麽用?

普通人學編程有什麽用?

主要有如下理由:

教會我們思考

提高效率,使生活、工作變得簡單

生活基本技能

編程教會如何思考

喬布斯在壹次采訪中說過:

Everyone should know how to program a computer, because it teaches you how to think.

因為程序就是對現實事物的抽象,而且,按照寫好的邏輯運行。所以,編程能夠鍛煉我們的抽象思維能力和邏輯思維能力。

編程能提升效率

李笑來老師在《把時間當做朋友》中提到過:

學習班之後的歲月裏,擺弄計算機給我帶來了無數心靈愉悅,這些暫 且不論,只說壹件事——在編寫《TOEFL核心詞匯21天突破》的過程中,倘若我沒有稍多於常人的那點計算機知識,能自己編寫壹些批處理腳本,就不可能在那麽短的時間裏完成那樣海量的工作。而且,如果沒有這些技能,就算再花幾倍的時間,也很難拿出具有與《TOEFL核心詞匯21天突破》同樣的質量的作品。而最終,質量保證了銷量。

通過編程,我們能夠很容易的處理大量重復性、低效率的工作,從而節省時間。而工作中很多地方都用到了編程來提高生產力,比如 Excel 中的宏,很多 Adobe 的產品(如 Photoshop, Illustrator, After Effects)都能使用 JavaScrpt 來自動化工作。如果妳學習編程,就能使妳的工作做的又快又好。

編程是基本技能

正如 Quora 問題?Should most young people learn to code?中回答的那樣:

妳會做飯,但妳不是廚師

妳會開車,但妳不是司機

妳會清理屋子,但妳不是保潔阿姨

妳會疏通馬桶,但妳不是水管工人

所以說,不壹定妳非要是程序員,妳才會編程。在計算機使用越來越廣泛的今天,編程已經成為了壹項基本技能。

如果妳不會編程,妳就只能使用別人提供的功能。就好像妳不會做飯,就只能下館子壹樣,但是這樣就不能很好的滿足妳對於健康、熱量、營養的要求。

所以,學習編程更多的是滿足我們私人訂制化的需求。比如,今天我遇到壹個使用 Excel 處理大量數據的需求。但是,我不會編程,可能就只能買別人開發好的腳本,或者自己花大量時間做大量重復性的工作。但是,如果妳會編程,妳就可以自己寫壹個腳本,最後可能快速、優雅的解決了問題。

而且,可以預見的是:在將來,計算機肯定會運用的越來越廣泛,對我們生活的侵入越來越深。而會編程的人只是壹小部分,那麽我們的生活就完全掌握在了那壹小部分會編程的人手中了。所以,學習編程,能夠讓我感到自由。

普通人如何學習編程

現在,如果妳覺得有必要學習壹下編程,那麽,我們就來討論下——普通人如何學習編程?

為了解決具體問題而編程

最重要的壹點:為了解決具體問題而編程。很多人會在學了幾個月編程後,感覺並沒有學到什麽,這就是因為妳並沒有從中找到成就感。當妳通過學習編程解決了自己具體的問題後就會感到巨大的成就感,比如我為了解決每天部署繁瑣的過程,學習了 shell 腳本,只需要壹個腳本就能部署了,這就給了我很大的正向反饋。而且當妳為了某個具體問題而學習編程的時候,妳就會知道,那些知識對我解決問題有用,那些可以暫時不學。編程需要學習的東西很多,所以必須做出取舍。

當並無具體的需求時,如果有興趣,那也行。如果沒有興趣,只是覺得應該學習編程而編程的話。我建議妳在學習了基本的知識以後(比如了解了這門語言能實現什麽功能),給自己找壹個目標(比如搭建壹個個人網站,抓取某個頁面的圖片),然後實現它。有了目標再學習,效果會好很多。

使用Google和英文

為什麽這兩個東西如此重要呢?

第壹、技術很多都起源於美國和歐洲,所以幾乎所有技術的官方網站都是英文的。而學技術要學會使用官方文檔,當然也是英文的。當然妳也可以看翻譯過來的資料,但是畢竟是翻譯過壹次的,所以很依賴於譯者翻譯水平的高低,而且這是已經被人理解過的二手的資料了。

第二、學會使用 Google 為什麽也成為了必要。在妳學習,開發的過程中會遇到很多的問題,這個時候會經常用到搜索工具。在編程領域,英文資源比中文資源多了不是壹星半點。比如 stackoverflow(壹個編程的問答網站)幾乎包括了妳學習編程時會遇到的各種問題的答案,以為這些問題很早以前就有人遇到過了。所以,遇到編程問題時,記得使用英文在 Google 上搜索答案。

第三、學會如何提問,必看的文章是:《提問的智慧》。建議把這篇長文看完再提問。

找到合適的學習資源

編程可能是最適合自學的科目了,因為有大量的資源(書籍、視頻、教程)可以選擇。那麽如何在海量的資源中選擇適合自己的呢?

首先,我認為資源分為兩類——書籍和視頻。如果妳喜歡看書,那就找壹本好書,如果喜歡視頻,那就找好視頻。那麽如何區分好書和好視頻呢——提問,妳可以使用搜索引擎,詢問身邊的朋友。而且,壹定要找與自己當前階段契合的書籍和視頻教程,並不是所有的書籍都適合初學者,所以壹定要註意選擇。最後,壹定要看該語言最權威的書籍,肯定不會讓妳失望。

再者,要學會看官方文檔,學會查官方手冊。教程和手冊的區別在於:

教程:教妳如何使用這門語言,可能很多東西不會提及

手冊:提供完整、全面的有關這門語言的信息(很多時候就是 API 手冊)

學習的時候我們看教程,但是有了壹定基礎只有,要學會看官方的手冊。因為手冊包含了這門技術的方方面面,有壹個完整的知識體系。它包含對這門語言原理的介紹,官方推薦的用法,API文檔等,所以壹定要學會看官方文檔。

多練習,多討論

古典老師提到學習的721法則,我覺得就很適合編程的學習:

10%的時間自己學習

20%的時間與人溝通討論

70%的時間去練習實踐

編程是很需要練習的科目,看再多的書還不如在電腦上運行壹次來的實在。學習編程要做到每天寫代碼,代碼運行起來之後,可以極大的加深妳對知識的理解。

還有就是要多討論,多看別人的代碼。討論能夠讓人的思想碰撞,產生意想不到的火花。比如妳思考壹個問題的解決方案很久了,但是還是沒有頭緒,但是可能別人的壹句話可能就會點醒妳,這在編程上很常見。而且,通過看別人的代碼我們可以學習更好的實現方法,更優的解決問題的邏輯,特別是牛人的代碼。

編程語言的選擇

雖然最終都是在計算機上運行的指令,但是還是有很多語言我們可以選擇,不同的語言可以實現不同的功能,那麽普通人如何選擇語言呢?

選擇什麽語言還是需要看妳具體的需求是什麽。如果妳平時使用 office 比較多,那麽可以學習?VBA。如果妳需要自動化很多重復的工作,那麽妳可以學習?Python。如果妳想要建造自己的個人網站,那麽妳需要學習?Javascript、Html?和?Css。如果妳沒有具體的需求,那麽我建議妳學習?Python,因為它很容易讓妳感到提高了生產力。

  • 上一篇:數控技術專業詳細介紹
  • 下一篇:Ij編程軟件使用步驟
  • copyright 2024編程學習大全網