--- 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]