昨天主要描述在心理層面應該要注意的事情,今天則是從實際層面上細數在自學並準備 APCS 時會碰到什麼東西及要怎麼克服。以下列出五點:
在 APCS 中實作題是大家最需要準備的部分,但在練習寫程式的路上其實會忽略很多在這其中學不到的電腦基礎知識。可以參考大一的計算機概論等書籍即可,因為實際上並不會考很深的知識,因此建議只要認真翻過一兩遍就足夠了,同時也可以很快速地架構出從資工到電機的各種領域藍圖。
在 APCS 考試時間使用的作業系統,不是常見的 Windows 或是 Mac,而是一種名為 Linux 的作業系統。這是一種自由且開放原始碼的類 UNIX 作業系統,同時也是不用購買就可以使用的作業系統。若是熟悉 UNIX 指令集在檔案管理上一定會比其他方式方便許多。若是沒有用過 Linux 作業系統,在考試的當下可能沒辦法順暢的使用電腦,甚至不知道該怎麼操作。若是想要體驗或是使用,可以試試看將 Linux 裝在虛擬作業系統上。
每個人習慣的學習方式不盡相同,大多數人都習慣藉由聽課(+筆記)的方式學習東西,而有些人也習慣用閱讀文章或課本的方式學習。而在現在 2021 年,各種地方都有不同的優質學習資源可以選擇。不管是影片還是文章,在學習語法的範圍都可以照自己習慣的方式學習。但在學習的後期(也就是學習演算法)會比較推薦用像是讀教科書的方式認真讀文章。
在後期為了要測試自己是不是真的學會,我們會利用線上評測系統 (Online Judge. OJ) 來測試自己寫的程式是否正確。目前在台灣最大宗的 OJ 是 高中生程式解題系統(zerojudge.tw),若沒有其他推薦可以優先考慮試試看,在上面同時也有學長姐合力完成的 APCS 實作考古題可以練習。
當遇到大大小小的問題時,我們總是會利用各種搜尋引擎尋找解答,因此非常建議學會進階搜尋語法。事實上在寫程式的時候,若不是在寫程式,大部分的時間都會在網路上遊走,能夠提高不少效率。此外英文的資源也遠比中文資源豐富,習慣閱讀英文也是很重要的。
自學程式在現今變得越來越簡單,但學習動機總是太容易失去而發散。或許除了上面的五點外,也可以適時設大小里程碑給自己會更容易學習。根據 emanlaicepsa 的文章內所述,要從頭到 APCS 實作五級分只需要花費 125 小時即可,或許你學習的時間能夠比我短上許多喔。