雖然這篇printf補0鄉民發文沒有被收入到精華區:在printf補0這個話題中,我們另外找到其它相關的精選爆讚文章
在 printf補0產品中有2篇Facebook貼文,粉絲數超過2萬的網紅紀老師程式教學網,也在其Facebook貼文中提到, [網友來信] 我開始背誦 C 語言 32 個關鍵字了,為何我還學不會 C 語言? 常常有網友用私訊詢問問題,我通常會抹消個資、稍做修改後,登出來分享給可能有同樣疑惑的人。底下是昨天一位網友問我關於「C 語言學習」的問題,希望我提供給這位網友的解答,也能幫助到有相同困惑的朋友。 :-) 紀老師 -...
printf補0 在 紀老師程式教學網 Facebook 的最佳貼文
[網友來信] 我開始背誦 C 語言 32 個關鍵字了,為何我還學不會 C 語言?
常常有網友用私訊詢問問題,我通常會抹消個資、稍做修改後,登出來分享給可能有同樣疑惑的人。底下是昨天一位網友問我關於「C 語言學習」的問題,希望我提供給這位網友的解答,也能幫助到有相同困惑的朋友。 :-)
紀老師
-------
老師你好!
我最近開始學習C語言,我之前常常看C語言介紹影片,知道 C 語言有 32個關鍵字,9種控制語句,34種運算符號。有人說這些背不起來就不用學C語言了,但我的記憶力不太好,我是否真的只能放棄呢?我非常熱愛軟體類型的事物或資訊,我不想就這樣算了。
我有在網路上找到一本C語言教學書本:(URL 恕略)可是我真的不了解,簡單說有看沒有懂。我開始覺得我到底適不適合學習C語言?我常在想那麼多的中文字我都記的起來,為什麼我卻背不起來C語言的所有關鍵字?目前我在背32個關鍵字中的15個。我洗澡背、吃飯背、上網也在背、看影片也一直背。起床第一時間就重頭背一次,就怕我忘記。
我不知道有什麼好的管道可以吸收學習?也不知道我的方法對不對,我僅僅只靠網路上的資源收集資料。原本我想購買書籍可是不知道該買哪本。就在網路上找到上面網址的那一本,可是我卻看不懂、不了解,我真的不知道該從哪開始了。
[紀老師回答]
您好:
您的學習方法錯了!
「程式語言」不是一種「知識(Knowledge)」,是一種「技能(Skill)」。所謂的知識,是只要「記下來」,就能使用了。例如歷史、地理等課程。所謂的「技能」,是要透過「實戰」學會的,像是游泳、騎腳踏車。
您的作法,有點像是「我已經把一本游泳入門背得滾瓜爛熟了,我洗澡背、吃飯背、上網也在背,為什麼我下水後還是不會游泳?」或者像是「我已經把九陰真經背得滾瓜爛熟了,為什麼我還是學不會絕世武功?」所以,你去背誦 32 個關鍵字,希望透過這種方法學會程式語言,並非一個很正確的作法。
很多人都誤會程式語言是一種「知識」,以為用力背就會了。事實上它是一種「技能」。凡是技能類的東西,除非你天縱英才,否則初學者都得找「教練」來學比較好。第一次學游泳,你會買一本游泳入門,然後看著書自己學嗎?不會吧?你會找個會游泳的人教。但是一旦學會「蛙式」或是「自由式」,您接下來就會自學「仰式」或「蝶式」了。所以(重點!),看書自學,比較適合有程式設計經驗的人,不太適合完全沒有程式設計經驗的人。
當然我沒有說,所有人一定沒辦法靠著自學學會程式設計。但是,如果您已經嘗試自學,效果不好,您是否考慮去補習班找個老師好好教您一次呢?所以,不要因為你背完「游泳入門」,下水嗆水,就篤定自己「不適合學游泳」。那只不過你學習方法不對而已。去補習班學一次很值得的,因為當你有了基礎,接下來其它語言,就有很高的機率看書自學、並且精通了!
此外,雖然程式設計是用英文呈現,但是跟英文程度好壞沒有太大的關係。因為它們用的「字彙」(如:printf(), scanf()...之類的),根本不是日常英文。語法也非英文文法。最有力的證據是,你叫一個以英語為母語、沒學過程式的外國人來看程式碼,保證 100% 看不懂!程式設計只是一種假借 26 個英文字母,拼寫出來的另一國度的語言而已。人人只要花時間、付出努力(約 6 ~ 9 個月,每週花 6~8 小時左右),都一定學得會。
所以,根據您的情況,我對於您「不知道如何開始」的建議是:去補習班找個老師,好好學一次。然後,老師教的東西,一定要回家「傻傻地」遮起答案,再練一次。這個步驟猶如游泳教練教完後,您自行練習的過程。這是把「程式設計」這個技術,固定在你身體裡的重要步驟,請千萬一定要「傻傻地」、「私下另外找時間」照做。不要有「為什麼教練教完,我也跟著教練練過一遍了,為什麼我還不會游泳?」這種不切實際的想法。
如果您真的還是想要找一本入門書的話,我可以推薦這一本,還不錯:
http://www.books.com.tw/products/0010360466
希望這樣的回答能對您有幫助!
printf補0 在 紀老師程式教學網 Facebook 的最讚貼文
Sublime Text 2 -- 程式師最佳文字編輯器
說起寫程式,最重要的就是要有個好的「文字編輯器」。因為寫程式需要大量地輸入文字,如果您的文字編輯器不夠好,寫起程式來總是事倍功半。
有人說:「文字編輯器?Windows 裡的 Notepad 不就好了?」那個是給一般人的文字編輯器。我認為,程式師的文字編輯器,最低門檻至少要有「關鍵字色彩標示」(如:C 語言的 printf() 指令要用不同顏色標示),與「自動完成」(如:打 prin,就自動下拉一個選單,給你選 printf、fprintf...)。前者可以在你指令打錯字沒變色時,即時提醒你你打的字不是該語言指令。後者可以讓你面對又臭又長的指令時,打四、五個字就由系統幫你「補完」。
但今天要介紹的 Sublime Text 2,能力絕對不只「關鍵字色彩標示」與「指令自動補完」兩項。它被喻為「有史以來最棒的程式師專用文字編輯器」。今天提供給各位一個兩小時半的影片,完整介紹 Sublime Text 2。看完你也一定會愛上它。我個人覺得它最棒的功能在於:
1. 多重游標:在一份文件中,所有同名關鍵字後方,都出現一個游標。當你修改一份,其它份都會跟著修改。變數更名時特別有用。
2. 直向選取:當你用滑鼠刷過一段文字時,該文字會被「橫向選取」。Sublime Text 允許你「直向選取」。你可以選中連續十行的「開頭」,然後加上或刪除「註解符號(如://)」。這對想把某段文字註解掉非常有用。
3. 程式模版(Snippet):選擇 for 模版,自動幫你完成「for(...;...;...) { ... }」整個結構。讓你寫程式輕鬆不少。
其它細節請看影片囉:
http://youtu.be/TZ-bgcJ6fQo