1. 程式人生 > >計算機指令碼語言學習和使用的心路歷程

計算機指令碼語言學習和使用的心路歷程

  很多教訓,都要經歷血和淚的教育才能夠領悟。記得剛入職的時候,一位老員工經常這樣說,凡是能夠用計算機做的事情堅決不用手工,否則就是浪費生命。可是,那時是剛入職的菜鳥,哪懂得什麼指令碼語言啊。甭說什麼使用指令碼去處理日常事務了。
  後來,跟著一位經驗豐富的老員工,才發現指令碼的威力是那麼的大,別人編譯一個版本,需要使用命令列敲好幾個命令,這個仁兄直接輸入一個命令就搞定了。付現一個比較難浮現的問題時候,別人都在瘋狂的用手反覆測試時,他直接一個指令碼就搞定了。後來跟著他仔細研究,才發現這個同事對bat的批處理指令碼使用的非常嫻熟,很多需要人工操作的東西,他總能找到使用指令碼的地方,這樣,他雖然顯得很閒,但是,效率卻出奇的高。部門裡面很多疑難問題就是靠他一個指令碼搞定的。自此以後,我才知道了指令碼的威力有多大,後來的工作中,我才逐漸的接觸指令碼,使用指令碼。從使用指令碼中和學針習指令碼中,我得到了以下啟示:


  關於選擇指令碼語言,語言就如兵器,每種語言使用的場景是不一樣的,它的長處也不一樣,比如,
Swift是有力量的光劍。你現在可以偏轉爆破,移動物件,而不觸控它們,直接嚇唬敵人投降和敬畏。但是額外的力量帶來了黑暗面的誘惑(與Objective-C相比,Swift帶來了更多的自由和能力,但是增加的靈活性有可能導致難以理解和維護的程式碼)
Python是坦克。有著很好的防護,堅實,保證粉碎你的問題。如果你是一個初學者,通常也可以來瞄準和射擊(只要稍微訓練一下)。如果你是一個專家,你就可以有條不紊地部署來征服地形。然而,儘管它是如此有效,但它也是緩慢的。你可以選擇在揮舞武士刀的超級戰士即C-擴充套件的支援下,解決任何潛在的緩慢問題。

  可見,選擇計算機語言,要根據你的使用目的去有目的的學習的。我這裡就針對嵌入式的開發人員推薦一些,批處理指令碼(windows事務),shell(linux事務) 和python(測試和演算法模擬)這三種語言的指令碼能融匯貫通的話,估計工作就能輕鬆很多了。
  關於如何學習指令碼語言:
  這讓我想起來自己學習python的歷程,上學的時候學了幾個月,看著課本,把用例都敲了一遍,感覺自己已經學會python了。
等工作兩年後想使用python時,發現自己連個print都不知道怎麼敲了。一怒之下,又重新來個一遍,並且把hankrank上面的題python相關的都做個一遍,那個時間感覺python是那麼的親切。

等到幾年後,工作需要使用python的時候,發現自己基本上又忘完了。這件事情,讓我好好反思了一番。最後反思的結果是要:知行合一。就是學的東西一定要把它使用起來,在使用過程中有反覆的學習,這樣才能達到格物致知的目的。
  以下是兩種學習的主流方法:
在學校中,我們學習一樣東西通常是這樣的,找一個教材,看書,做題,然後考試是否通過。
工作中,通常是這樣的,隨便瀏覽一下這個語言,直接開始使用,在沒有使用的時候,就乾脆扔掉了。
  其實,這兩種學習方式各有優缺點,假如要想在工作之後把一門語言學的融會貫通,要經過三個階段的,並且這三個階段相互反覆的使用才行:
1 通過工作中去實戰,使用該語言去實現一些功能。
2 找固定的時間去讀該語言的書籍,這樣才能系統的掌握該語言。
3 事後總結和反思,用該語言去實現一些小軟體,該語言的程式碼量沒有敲到一定的程度,是無法熟練應用的。
    簡單的概況為八句話,知行合一,格物致知。