加拿大2+3 — Camosun College 資訊電腦系統科技都在學什麼?

Hazel
9 min readMay 20, 2022
Photo by Iewek Gnos on Unsplash

不知不覺就過完第一學年了!明年就要畢業了,兩年真的不長。先分享下加拿大的學期制吧!

基本上,一年分為 3 個學期。

1. Fall Semester(秋學期): 9~12 月

2. Winter Semester(冬學期): 1~4 月

3. Summer Semester(夏學期): 5~8 月

大部分課程從秋學期開始,但也有可能冬學期或夏學期開始,要看各學校各系別的課程安排。夏學期不一定會有課程安排,學生可以自主安排要打工、做義工、實習或各種其他活動。另外,若是有選課,夏學期也有特別分是 7 週課程或 14 週課程,如果只選了 7 週課程,代表課程 6 月就會結束,7、8 月則是暑假。

資訊電腦系統科技(Information Computer System Technology)的第一年

Fall Semester

ICS 110 — Computer Technology Essentials

這門課沒什麼好說的,就是很無聊的基本中的基本。電腦科學發展的歷史、硬體軟體的一些基礎概念、網路及作業系統的發展、隱私權及電腦安全、解決問題及除錯的思考步驟等等。

使用線上教科書 zybook,每週讀一個章節。實驗課,主要是 Word, Power Point, Excel 這 3 個最主要的 office 軟體的基礎操作。應該跟台灣的電腦通識課蠻像的。我是覺得超級簡單,但也真的有學生完全沒用過這些軟體。之前才看到一則報導,在說日本企業有個新難題是新進的新鮮人不會使用電腦,因為一切作業報告論文都能用手機完成。看完這篇報導,突然理解這門課的重要性了 😂

ICS 113 — Operating Systems and Architecture

安裝設定作業系統,學習由終端機命令電腦,架設虛擬系統,設定防火牆,遠端操作另一個作業系統等等。

一開始可能會蠻恐慌的,但會越來越上手的,實驗課最好把所有覺得自己會忘記的部分都筆記下來,因為下學期的課會建立在這個基礎上繼續深入,一些指令會持續使用。

需要自備一個至少容量 16G 的 microSD 卡,作為 pi(樹莓派)的硬體。實驗課會需要用 python 寫一些小程式控制 pi,感應溫度或按按鈕,使不同顏色的 LED 燈亮暗等等,很有意思。

樹莓派 — 微型單板電腦

ICS 114 — Algorithms and Programming

使用線上教科書 zybook,以及老師先行錄製的教學影片。會先學演算法,然後學習 JAVA。如果過去沒有學習程式的經驗,一定要多練習,不然下學期很有可能跟不太上。

寫程式的基礎,基本會是由這堂課建立起來。包括資料類型、條件式、迴圈等等。程式碼的撰寫風格,如何查找文件,也會在這堂課受到訓練。

ICS 118 — Web Fundamentals

就是教 HTML 跟 CSS,如果以前沒學過的,建議各種語法要多多練習與嘗試。我自己是上過 Alpha Camp 才來的,所以這門課跟下學期接續的 ICS128 完全是一塊蛋糕。期中是做一個一頁式的 Responsive 網頁(支援不同螢幕尺寸顯示),期末是用 Wordpress 建自己的網站。有聽說下學年會更新教材,所以以上參考就好。

MATH 156 — Math and Stats for Computing

這個對台灣學生來講應該蠻簡單的,等差等比無窮數列與級數,邏輯概念與文氏圖,基礎統計概念等等。比較不一樣的是會學不同進位間的轉換,例如:十進位轉二進位、十六進位轉十進位等等。

CDEV WPS — Workplace Preparation Skills

這個兩年文憑提供了有薪實習(co-op or internship)的選項,但要參與有薪實習,必須先通過這堂課。

- 怎麼研究公司及職缺

- 如何擴展人脈

- 怎麼寫求職信(Cover Letter)

- 怎麼寫履歷(Resume)

- 準備面試的常見問題

課程最後會有個模擬面試,還蠻有趣的!記得面試是 interview,也就是互相認識彼此,不是考試,不用過度緊張。

LRNS 102 — Learning Skills for Technology

怎麼達到有效率的學習,也就是說「學習如何學習」是一個重要議題。這堂課會教各種學習技巧,如何設定可以衡量的明確目標,如何檢視有沒有達成,怎麼對付拖延症等等。

我會覺得這門學習技巧跟 CDEV 職場預備,是非常有價值的兩門課。但如果我還是高中生或大學生可能不會有這種感覺,這需要經歷求職跟有持續學習或說自學的需要才能更深刻的感覺到這些技巧的重要。

— -

Winter Semester

ICS 120 — Database Concepts

學習資料庫語言 SQL 的一門課。覺得課程安排非常系統化,進度節奏很不錯。考試都是 OPEN BOOK,但就算 OPEN BOOK 也可能死很慘,因為考試時間有限,沒時間讓你慢慢查。只能說同時學的語言實在不少,要把所有語法記熟,真的不太可能,因此 OPEN BOOK 有跡可循。然而,該做的練習還是要做,基本概念要有才能有效率地進行查詢。

ICS 124 — Algorithms & Data Structure Programming

會進一步學到更多資料結構及演算法運用,並且了解怎麼看演算法的運行效率(Big O, Time Complexity)。

- ADT(Abstract Data Type), Interface, Abstract Class 是什麼?有什麼不同?

- Search 的演算法(線性或二分)

- Sorting 的演算法(如何排序,方法超多種)

- Recursion 遞迴

- List 結構(Array, Linked)

- Stack & Queue & Deque

- Binary Search Tree

- Heap

- Hash Table

整體比 ICS114 複雜許多,但懂了就會突然通了,然後就是要能更熟悉的去運用。

考試的時候,解不出來也不用過度緊張,老師基本上會部分給分。但真的是會讓人感受到不是 1 就是 0 呢! 😅 (不是成功運行就是失敗,當然成功運行後,還會再進一步考慮效率,不過新手就是先求有)

ICS 125 — Software Engineering Process

主要學習軟體開發生命週期的各階段分別有什麼方法或工具能幫助開發或專案管理更順利。從較廣的整體軟體架構設計到更細微的各功能設計,使用 UML (Unified Modeling Language)圖表去呈現軟體功能,也會提到 XML 跟 JSON。

Lab 會簡單提到如何使用 git 進行版本控制,主要使用 Netbean 進行簡單的 JAVA 程式開發練習。會學到 Model-View-Controller 這個軟體架構模式,按照 Lab 步驟練習完後,要有能舉一反三的能力,不然期末的實機考試 8 成會失敗,我也只是弱弱低空飛過而已(不過好像就個位數的人有過…),JAVA 實在不簡單。

ICS 126 — Systems Administration

會學習到更多的終端機指令、架設伺服器(Docker, DNS)、運用虛擬機器在 Windows 安裝 Ubuntu 系統、由終端機遠端連進其他系統、bash 及 PowerShell Script、新增管理使用者等等。

在進行 Lab 的過程,會持續訓練解決問題的能力,許多指引沒有 ICS113 時詳細,要想辦法自己找答案或 ICS113 做過的,就不會特別寫出詳細步驟,所以先前的筆記很重要。

由Windows電腦上的Ubuntu虛擬系統進到pi

ICS 128 — Web Scripting

接續 ICS118 學到的 HTML 跟 CSS,在 ICS128 會教 JavaScript、Bootstrap 跟 jQuery,學習如何操作 DOM、設置監聽器、使用 API 發出 request 取得資料等等,能做出更具功能性的網頁。期末專案是做出一個小的購物網站,呈現商品及價格、可以加入購物車、從購物車刪除、變換不同幣別、結帳驗證信用卡和電話地址等等。

期末專案 — 沒有要當網頁設計師就不講究畫面設計了,運用Boostrap能快速清楚呈現就好

*我其實還將第二年 Fall Semester 的一門必修移到這學期上,想說到時要學 C++比起 JAVA 應該更難,英文課什麼的能先上就先上吧

ENGL 170 — Technical & Professional Communication

這門在教

- 怎麼寫委婉拒絕及直接有目的的職場溝通郵件

- 怎麼寫進度或各種專案或研究報告

- 怎麼寫指引或說明書

- 一些英文文法

我實在沒有把心放在這門課上,就覺得有點無聊(文法考試隨便都 8,90 分),而且我說實話討厭寫作(畢竟要花很多時間思考架構打字確認文法翻譯…),所以也成為這學期分數最低的一門課。

Summer Semester 部分

是可以安排 co-op 有薪實習的,但跟台灣不一樣,很大部分必須靠自己找,雖然學校有 Career Lab 協助履歷修改面試練習等等,可是對於第一年的學生來講真的不容易找到。而且雖然有薪水,但也要先付幾千加幣的學費,所以我後來就不找了(覺得重點是畢業後找的到正職,而且部分 co-op 的職位是希望找學生結束實習就能轉正的,so…),乾脆全職打工,一邊架設自己的網站及做一些小的 side project。

--

--

Hazel

Web & Software Developer 🇹🇼 Taiwanese Explorer @MyLifeAdventure ICS Student @CamosunCollege