Ⅰ 程序員是不是手藝人的一種
編程不是一種知識,而是一門手藝。
我們從小到大的學習都是學習知識,流程一般是課前看書預習,上課聽講,下課做作業,然後復習考試。但是學手藝可不是這么學的。
我們先拿游泳舉例,游泳不是知識,而是技能,也可以算門手藝吧。
需要預習嗎?需要上課聽講嗎?不需要,因為兩歲小孩都能學會游泳,他們連話都不太會說呢,怎麼可能聽課預習呢。游泳是通過在水裡的練習,教練手把手地傳授動作,一點一點提高熟練度學會的。
我們再來看看彈琴,學鋼琴一定要有鋼琴,音樂基礎知識也是老師在練琴間隙傳授的,並且一定會結合練習,另外練琴時間是很重要的,必須保證一定的練習量,有些理想遠大的琴童練琴時間可以用慘無人道喪心病狂來形容。
千萬別把編程看作知識,計算機科學是知識,但是編程是手藝。
既然是手藝就要用學手藝的思路去學習。
以動手練習為主,看書學習為輔,甚至極端點,初學的時候除了看必要的文檔都可以不看書,等有了一定編程基礎後再去看書,看完書立刻動手編程去驗證書上的理論知識。
練習一定要循序漸進,把手藝分解成幾個簡單的動作,反復練習直到熟練,然後再把基本動作組合起來練習直到熟練。拿C語言舉例,比如從認真寫好一個Hello world開始,然後去熟悉 if for while 等基本關鍵字,然後熟悉字元串操作,內存操作,練習查找 排序 二叉樹等基本演算法數據結構,然後學習一個小型Framework。。。。
找個師傅,手藝的一大特點就是自學是很慢的,而且容易走彎路,而有人手把手教要快得多,手藝有很多細節,實際操作經驗,需要去體會感受的東西,這些細節書上基本不會有。
堅持做大量的練習,以代碼行數為例,每年50000行左右是比較一般的練習量,有毅力的話可以挑戰10萬行。(有人說代碼行數不代表什麼,行數多不見得程序就對,寫得好的程序代碼很少blablabla,滾,去跟朗朗說去,告訴他其實不用練那麼長時間琴。)
回憶下自己當年是怎麼學會騎自行車,學會游泳,學會打籃球的,按照那個思路去學編程,而不是用你學大學課程的思路去學編程。
當你還是一個新手的時候,你需要瘋狂的積累你的代碼量,你可以從基本的問題出發,做一些簡單的問題,怎麼輸入數據,怎麼輸出數據,然後熟悉各種數據結構,各種常見演算法,瘋狂的刷題。
Ⅱ 那些讓孩子學習編程的家長後悔嗎-簡書
少兒編程指針對高中以下的孩子所設計的編程學習類產品。用圖形化編程語言,把原來英語的代碼編程語言轉成圖形模塊化、指令化,以游戲、情景動畫、積木構建的形式呈現。
需要在這里說明的是,讓兒童學習編程,並不是為了讓他們將來都當程序員。少兒編程不同於IT職業教育,它減少了對於編程語言的實際操作的重視,轉而更加關注通過編程教育培養孩子們的計算機思維與創造能力,激發孩子內在學習動力以及發展團隊合作和溝通等全方位能力。
孩子學編程,並不是為了將來要從事專業的編程工作。從教育角度看,少兒編程的核心的理念是把計算機編程看作與閱讀、表達、數學等一樣的,小朋友成長所需的基礎技能來培養。發達國家對推廣編程教育的觀點是:編程技能已不僅是信息行業對人才的需求,而將是所有行業的需求。各行各業需要的也不僅是軟體專業人才,而是掌握編程技能的行業專業人才。