2012/07/31

李家同,《人人都能學會寫程式:李家同教你用邏輯思考學程式設計》

唸博士時,我曾在一所私立的工專教C語言,也翻譯和寫過幾本C語言的教科書。後來,我總結自己學習的經驗以及學生的學習情形,寫了一本《10小時學會C語言》,重點在於只要會流程圖,並不需全部了解C語言的所有功能便能寫一份不太差的程式。例如,只要會用for迴圈,C語言的其它迴圈指令其實都可以不用學。當時主要的感覺是大部分的教科書都在嚇唬人。例如,考你++a和a++的異同,真正寫程式時,你不會自己這樣找麻煩。



看了李教授的這本書,和我想的相去不遠:運用流程圖理清程式要做的事情(以及如何做),再加上大量的範例、習題,在做中學。據李教授在序中所說的,似乎成效不錯。

我不想說洩氣話,任何一樣東西,只要有心學,沒有學不起來的,許多學生會叫著C語言太難,學不會,問他一週花多少時間在上面?往往只有課堂時坐在那邊的時間,更何況有的還蹺課,課本都不買。可見是心態問題。這個心態沒有改變之前,學什麼恐怕都難有成效。因此作者所稱的「很多文學院和管理學院的學生都很輕鬆的學會了寫程式」,實在很令人好奇這些學生本身的學習動機是否早已俱足,而不需外來的督促,只需導引即可?

寫的程式會動和寫出好程式往往有很大的差別。我寫的程式可以完全滿足可拿到的測試個案,可是交給自動評分系統卻不見得過得了關,很多嚴謹的要求我們都有意無意的加以忽略了。每次在「猜猜看」評分系統到底對程式的那一點有意見時,確實令人沮喪。簡化的教材應該在留住人不要被嚇跑這項工作上有所效益。
【出版資訊與其他書評】