# [基礎系列] Proxy Server 代理伺服器 正向 / 反向代理伺服器 # What is Proxy 代理一詞 Proxy 代理這個東西是幾個角色,與貿易一詞的代理商概念類似,如同上游與下游層級對象的中間者。 也就說在系統方面,Proxy 是上游客戶端 Client Side 到下游伺服器端 Server Side 之間的仲介軟體。 # 那 Proxy 在做甚麼 保護 Server Side,剛提到 Proxy 是 Client 與 Server 中的 Middleware (仲介軟體),可以利用 Proxy 來進行對 Server...

# 快速建立 Web 應用部屬到 GKE 透過 Cloud Code NYUST GDSC Leads FKT # 今天介紹的 GCP 服務 Cloud Code 他是 GCP 平台提供的一個 IDE Extension # Cloud Code 特色 # 支援主流 IDE VSCode Jetbrain IntelliJ Cloud Shell # 主要功能 讓本地現有專案與 GCP 部屬平台連結達到快速部屬與監控的功能 部屬支援平台:GKE/Cloud Run 快速建立 Application 部屬的 Example 更好的許多 GCP 平台其他 Service 如...

# [基礎系列] 同步非同步函式 # 前言 善用同步 / 非同步可以增加系統的效率,讓使用者體驗更好。 # 同步 Synchronous 概念:呼叫一件事情需要等待完成才能做下一件事情 平常基本函式型態都是同步型態!!! # 非同步 Asynchronous 概念:呼叫一件事情不需等待完成之後才能做下一件事情。 # Promise 處理非同步行為的語法,可以優化非同步,Promise 為建構這些內容的函式 # async async function 可以來定義 JavaScript 非同步函式,但函式內部是其實是需要同步運作的 (完成內部)。 # await await...

# 物件導向軟體工程 歷屆考古 # 期末考 以下內容沒有正確解答都是 FKT 的猜想,歡迎提供正確解答 # 108 Quiz-1 # Q1 一個好的 test case 是有高可能性讓你偵測到錯誤的因子 TRUE False 測試可以表示沒有錯誤發生,沒有錯誤存在 FALSE 測試的目的是證明錯誤存在 FALSE True # Q2 這三個設計模型的維護模式是甚麼類型 Abstract Factory: Corrective Maintenance AEP Builder: Adaptive Maintenance AEP Facade: Preventive Maintenance...

# Counter 計數器 前言:在演算法中我們有時候會需要計算可迭代物件中的個別元素數量,Python 內建的 Counter 可以幫我們在實現這個功能之外,效能優化也是挺不錯的。 # 建立 Counter 123456import collections.Counterc = Counter() # a new, empty counterc = Counter('gallahad') # a new counter from an iterablec = Counter({'red': 4,...

# 堆積佇列 heap queue 今天來介紹 Python Library 的 Heap Queue Heap (堆積) 是一個 Binary Tree (二元樹),所以 heap [0] 是整個結構最小的元素 # 初始化 HeapQueue 給變數宣告成陣列即可 12import heapqh = [] # Push heapq.heappush(heap, item) 把 item 放進 heap,並保持 heap 性質不變。 12345678import heapqh = []heappush(h, (5, 'write...

# [Web 基礎系列] 聽說你寫過聊天機器人?你真的知道 WebHook,RESTful API? # Webhook Introduction # 想像一下假設你現在的 Server 想要做即時更新 但你只會寫一般 Restful API 被動的去接收請求,但無法主動的更新所有 Client. Webhook 就是在解決這類的問題,達到 Server 能夠主動推撥到另一個 Client 因這一特性 Webhook 也稱作反向 API # RESTful API 你可能會寫 API,但你有照 RESTful 的風格進行 API 開發嗎?,往下來看看這些特點你是否有做到。 #...

# 物件導向軟體工程 - 軟體測試 # Software Testing Black-Box Testing Techniques 軟體黑箱測試技術 # Black-Box Testing 黑箱測試 專注於測試軟體的功能性與行為 認為類別的書與可以有效的檢查錯誤 考慮到了輸入值常常導致問題 認為輸入值得結合會影響系統運作 # Black-Box Testing Techniques 黑箱測試技巧 Equivalence partitioning 等價劃分 Boundary value analysis 邊界值分析 Cause-effect testing 原因影響測試 #...

# 本地端應用透過 Google Cloud 達到持續交付 簡報連結 # Self Introduction # 持續交付 Continous Delivery Continous Delivery = CI (Continous Integration) 持續整合 + CD (Continous Deployment) 持續部屬 他們是在將撰寫完的程式流程自動化,前者負責整合的部分,後者負責部屬的部分。 # 本次主角 Cloud Build (CI 工具) 特色 有免費額度 支援多種語言 可以整合很多其他 GCP 服務 (今天與 Cloud Run 整合) 使用 yaml...

# 物件導向軟體工程 - 軟體品質 # Software Quality Assurance (軟體品質保證) # 概述: 是監控軟體工程流程和方法以確保品質的一系列手段。[來源請求] 實現這一目的有著多種方法,並且可以確保符合一個或多個標準 # 活動: Verfication 驗證 正確得建置產品 (建置方法正確) Validation 建置對的產品 (產品正確) Technical reviews Testing: 嘗試發現程式錯誤 # Cost of Quality 品質成本 包含 Costs of preventing software failures...