Guide

課程導覽

介紹

嗨!歡迎來到游逸平老師開的編譯器課程

經過一番努力後,我們的課程已經跟 Github 高度整合。這樣做的初衷是提高學生的修課體驗,並嘗試與世界技術潮流接軌 除此之外,也翻新了編譯器的作業敘述跟要求,希望大家能度過充實的一學期

在這裡簡單介紹一下為什麼會想使用 Github,給各位同學一個參考

使用 Github 的理由

1. GitHub 網站的穩定性比 E3 高

你可能體驗過作業死線前 1 分鐘交作業 e3 死當不回應,或是在期末考週 e3 壞掉無法瀏覽的慘況。把課程內容跟作業繳交托管到 GitHub 這類主機吞吐量大的企業能大幅提升課程網站穩定性,讓大家能隨時瀏覽相關內容。同時,我們也可以利用 GitHub 提供的 伺服器紀錄 判斷是否有因伺服器下線讓作業無法繳交的情況,斟酌延後作業死線

2. GitHub 當作你的遠端備份

你只需要一個指令就能將程式碼放上 GitHub,讓你能很簡單的備份自己的作業,降低誤刪自己作業檔案的風險

3. 強迫各位使用版本控管

或許各位上大學到現在都沒聽過版本控管,或只是單純沒機會使用。這堂課會讓你使用最低限度的 Git 來練習版本控管。甚至運用 Git 輔助自己未來的專案開發流程


好的,接下來就是這堂課程的所有資源導覽

組織導覽

除了現在看到的網站外,課程還有一個討論版跟放課程資源的版面

成立討論版目的是讓同學針對課程、作業等等內容提出疑問或看法,當然,我們鼓勵你到其他人開的問題中提供資訊,而課程資源則是講義與考古題內容

如果你想看看討論版實際上會是什麼樣子,可以參考過去的討論版來有個大概

除此之外,你的每一份作業都會被放在這個組織之下,預設是不公開的

所以上述內容可以整理成一張簡單圖表:

+ compiler-s21         ——  課程開的 GitHub Organization
    + discussion       ——  討論版
    + private          ——  講義、考古題、接受作業連結
   ------
    + hw0-<your id>    —— 你的所有作業
    + hw1-<your id>
    .
    .
    + hw5-...

如果你現在點到課程組織下瀏覽,又或是直接點擊左方 Schedule & lecture notes中的任何一份講義,你可能看不到我們的 compiler-s21/private 或是任何一份講義內容

這是因為我們有鎖定權限,只有被我們邀請加入組織的 Github 用戶才能瀏覽這些內容

所以,在正式加入課程之前,你還有一些事情要做

申請加入 compiler-s21

1. 註冊 GitHub 帳號

請注意,你只是在 GitHub 上註冊一個代表你個人的帳號,並且暫時加入我們的課程組織,在這之後的漫漫開發生涯中一定還會使用到這個帳號,所以會一定程度的代表你個人,建議仔細思考好帳號的名稱

比如說 nctuGreatAgain, UCMaoChung5566, dutyForOurCountry 都是不推薦的名稱

已有 Github 帳號的同學可以略過這步驟。

申請 GitHub 帳號連結: 點我

2. 開啟通知

Personal Settings > Notifications > Participating > Web[打勾]

勾選後會讓你在公布作業成績時能直接收到 email 通知

3. 填表單

請到 Google 表單中填上個人資料 (必須要登入),讓我們能夠將各位同學的 GitHub 帳號跟真實身份關聯在一起

在助教收到表單並確認為修課生後,會邀請你加入組織,而 GitHub 網站會依此發出邀請信到信箱中。當各位收到信並確認接受後就算正式加入這堂課程了👍

Google 表單連結:點我

4. 申請 HW0,熟悉環境

首先點擊 https://github.com/compiler-s21/private/tree/master/Homeworks 並且點擊作業的邀請連結,若你發現點進網站後沒有正常顯示網站,可能是你沒有登入 GitHub 或是你還沒被加入組織中,請登入 GitHub 或是等待加入組織後再次嘗試