---
image: https://i.imgur.com/hJW7aZt.jpeg
title: 交大資工實務組(丙丁戊組)性向測驗共筆
---
# 110 交大資工實務組(丙丁戊組)性向測驗共筆
歷屆共筆
> [109](https://hackmd.io/@splitline/BkALfYY5r)
:::info
共編者:
- as535364
- asef18766
- TzuWei
- Coolshanlan
:::
## 丙組
共 3頁 5面 25題的樣子
1. 給你以下的 code,請你填空其中一個 if 的條件式,以輸出所有「相加為 sum 的兩個元素」。
```
f(int arr[], int n, int sum) {
for ( int i=0; i<n; ++i ) {
for ( int j=i+1; j<n; ++j ) {
if ( ____________ ) {
cout << '(' << arr[i] << ',' << arr[j] << ')';
}
}
}
}
```
2. 承上題,問你如何優化這個程式。
3. 給一個 reverse_bit 的程式挖空部分 code 給你填,例如 input 11 要 output 13(1011 -> 1101)。
4. thread
- process 跟 thread 的差別
- 為啥需要 thread
- 兩個 thread 都要去修改一個值但都修完後你發現值怪怪的,為什麼,怎麼解決
- deadlock 怎麼解決
5. 問一堆 OS。
6. compiler 會做什麼
7. compiler 裡面是什麼結構
8. $50^{99}$ 跟 $99!$ 哪個比較大
9. $88^{89}$ 跟 $89^{88}$ 哪個比較大
10. 請問 IaaS 跟 PaaS 的差別,可舉例說明。
11. VM 跟 Container 差在哪裡,分別適合什麼時候用
12. 簡單說明 hash 並列出兩個 hash 的特性
13. lex 和 yacc ?
14. c 的 functional pointer 相關問題
15. 雜湊函數hash,常見的例子
16. 跟 Android IP Spoofing 有關
17. 還有一些資安
## 丁組
共 12 面 66 題
### Backend & Database
1. 用過哪些後端語言、網頁伺服器?說明你的使用情境。
2. 比較 Query Builder 和 ORM。
3. 若要設置 API Rate Limit:5 分鐘內最多 10 次,你會如何實作?
4. 說明以下:
* OAuth
* JWT
* SSO
* OpenID
5. 圖片「裁切、轉檔、旋轉」的功能會選擇做在前端還後端?如果堅持要做在前端/後端,有什麼問題?
6. 是否使用過 Redis?拿來幹嘛?
7. 說明 RDBMS & NoSQL 的使用經驗。
8. 情境:圖片檢視器,每張圖片有一個字串標籤,打開圖片檢視器要能看到所有標籤,點擊標籤要能看到所有使用該標籤的圖片。請為以上情境設計 Database Schema 並說明理由。
### Frontend
1. 問使用網頁模版的經驗,手刻網頁的經驗。
2. 解釋同步與非同步。
3. 解釋 CSRF 與如何防範,另外若是前後端分離又要如何防範。解釋 XSS 以及有哪些種類,該如何防範。
4. 何時用 SPA 何時用 SSR?若搜尋引擎搜不到 SPA 的網站你會如何解決?詳細說明。
### Git/DevOps
1. 若敏感資訊被 commit 進 git,你會如何處理(請列出指令)?並說明你的考量。
2. 說明 Merge 與 Rebase 的差別,以及你如何使用它們。
3. 解釋 Conventional Commit。
4. 說明 DevOps 與 SRE 的差別。
5. 解釋 GitLab Flow,或任何你使用的 Flow 並說明優缺點。
6. 是否使用過 GitLab CI / Drone CI / 某 CI ,解決什麼問題?使用後有沒有產生啥以前沒有的問題?
### Mail
1. 有自行架設 mail server 過嗎?當中有什麼經驗?
2. 使用過 Gsuite 或 Office 嗎,相對自行架設有什麼優點?
3. 收信時會如何進行?(以 IMAP、POP3 分別解釋)
4. A 透過 outlook 寄信給 B(也以 Outlook 收信),解釋過程中發生什麼事情
### Linux/FreeBSD
1. 說明以下東西的優缺點、用途
* Seccomp
* Linux Namespace
* Linux Capbility
* fstab/autofs
* zfs
2. openldap 用於登入
3. linux 資源限制 (Unix)
4. 系統備份、備援(raid)
5. 若要在 Linux 自幹一個類似 Docker 的東西,會用到哪些工具,有哪些要注意的?
### Container
1. 用過哪些 Container?
2. Container 用與不用的原因
3. 使用複雜 Container 的經驗?
4. 如何部署大量 Container?
5. 各種 k8s 問題
6. 最新版 k8s 不支援 Docker runtime,身為管理人員你要注意什麼,會怎麼處理?
### NET
1. ip, mask, gateway
2. Loop 造成的原因
3. 解釋 lan / vlan
4. 設計網路架構
1. 兩間電腦教室七十台電腦
2. 實驗室,如何在收到資安通報時追查有問題的電腦
3. 伺服器有多個服務,如 WEB(須對外),有些服務需要內網溝通
### PC
1. 有沒有部署過大量電腦的經驗?使用什麼軟體?
2. 如何在不使用還原卡的情況下保護作業系統並防止遭惡意軟體攻擊
3. 有用過 Windows Server 的經驗嗎?
4. 連續兩門課需要使用不同環境(Windows、Linux)該如何處理?
5. 有一門課常常會變更需求,你如何部署環境到所有電腦上?
### VM
1. intel, AMD 虛擬化指令集, 硬體虛擬化
2. vCPU 意義
3. 一台電腦上裝裝多個 OS, 各自要有自己的網段, 虛擬 NAT
4. samba, nfs, iSCSI
## 戊組
1. 簡要說明 WordPress 是什麼
2. Soap 跟 REST 的差別
3. JSON 跟 AJAX 的差別
4. 舉一個 Web Backend/Frontend 可以看到的 reactive programming 的語言和用法
5. 實作一個 Swap 的 function,Swap 會帶入一個 n 個元素的 array,要把前 n/2 個元素跟後 n/2 個元素交換。
例如 [1, 2, 3, 4] -> [3, 4, 1, 2]、[10, 20, 30, 40, 50] -> [30, 40, 50, 10, 20]