開始你的RUST Web應用程式之旅:從0到1打造高效安全的Web系統!
菜鳥救星線上真人課程簡介
為什麼要學?
Web應用程式的安全性與應用程式性能已成為開發者與科技巨頭關注的焦點,2023年暨Linux、Google、亞馬遜雲等大廠青睞後Rust之外,微軟宣布已經用3.6萬行Rust程式碼改寫了Windows核心 。採用Rust取代C/C++,就是因為C/C++太危險且容易讓系統崩潰。科技巨頭基於安全理由,逐漸用Rust編寫新的程式碼。未來將是Rust工程師發光發熱的時候,那你還在等什麼?
- 崛起的RUST程式語言:RUST近年來在開發者社群中越來越受歡迎,其安全性、性能和低資源消耗等特點,使其成為Web開發的理想選擇。
- 高薪工作機會:RUST擁有龐大的就業市場,精通RUST Web開發將讓你在競爭激烈的技術行業中脫穎而出,獲得更多高薪工作機會。
- 安全性是關鍵:Web安全性日益受到重視,RUST的設計使其更容易避免常見的安全漏洞,學習RUST Web開發將使你成為安全開發的專家。
- 可擴展性和效能:RUST的並發設計和高效運行使其適用於構建大型、高流量的Web系統,這是現代Web應用程式開發不可或缺的優勢。
- 與時俱進:持續學習新的程式語言和技術是成為成功的開發者所必須的,RUST是一門極具前景的程式語言,學習它將使你保持在技術潮流的前沿。
課程目標
RUST程式語言是吸收C/C++等系統與各種高階語言優勢的程式語言,Web開發者學習Rust將拓展自己的職涯,擁有更多關於系統底層的開發知識。您將學習如何掌握RUST在Web開發中的應用,並了解如何處理常見的Web開發挑戰。
學習完後,你能獲得……
- 瞭解RUST程式語言的基本語法、特性和底層系統原理。
- 開發安全的Web應用程式,預防常見的安全漏洞。
- 使用RUST生態系統中的Web框架和庫來簡化開發流程。
- 優化應用程式性能,確保高效運行和良好的用戶體驗。
- 處理異常情況和錯誤處理,確保Web應用程式的穩定性。
課程大綱
學習目標:建立Rust開發環境
- 單元1:Rust 語言簡介
- 單元2:開發環境建置(Visual Studio Code)
作業
- 建置Rust開發環境
學習目標:使用變數與運算式完成程式
- 單元1:敘述與運算式
- 單元2:變數與綁定
作業
- 使用變數與運算式完成程式
學習目標:認識Rust的資料型態
- 單元1:布林值
- 單元2:整數與浮點數
- 單元3:字元型別
- 單元4:切片(slice)
- 單元5:單元(unit)
作業
- 使用切片與單元完成程式
學習目標:掌握流程控的基礎技巧
- 單元1:if表達式
- 單元2:lse if 處理多重條件
- 單元3:let陳述式
- 單元4:loop, while和for迴圈
- 單元5:閉包(closure)
作業
- 使用各個迴圈和if完成程式
學習目標:學習運用反覆運算器
- 單元1:認識Iterator基礎
- 單元2:外部反覆運算器(external iterators)
- 單元3:內部反覆運算器(internal iterators)
作業
- 使用反覆運算器完成程式
學習目標:學習使用複合資料與集合
- 單元1:元組(tuples)
- 單元2:陣列(arrays)
- 單元3:向量與字串
- 單元4:湊映射(Hash map)
作業
- 用複合資料類型完成程式
學習目標:使用智慧指標(Smart pointers)
- 單元1:認識智慧指標(Smart pointers)
- 單元2:使用BoxBox<T>、Rc<T>
- 單元3:使用Deref、Drop特徵
- 單元4:使用RefCell<T>
- 單元5:通用概念
作業
- 使用智慧指標完成程式
學習目標:使用泛行函式
- 單元1:泛型函式
- 單元2:泛型結構體
- 單元3:Trait 限制
- 單元4:多重Trait 限制
- 單元5:where子句
作業
- 使用泛型函式完成程式
學習目標:理解所有權系統與如何借用
- 單元1:所有權系統規則
- 單元2:引用和所有權借用
作業
- 使用所有權系統完成程式
學習目標:學習Debug
- 單元1:錯誤處理、消除失敗
- 單元2:分層處理錯誤、恐慌(Panic)
作業
- Debug程式
學習目標:了解Rust物件導向語言的特性
- 單元1:物件導向風格程式設計
- 單元2:常用設計模式
作業
- 使用物件導向完成程式
學習目標:讓程式的不同部分同時執行
- 單元1:建立新的執行緒
- 單元2:訊息傳遞
- 單元3:共享狀態
作業
- 使用多執行緒完成程式
學習目標:讓同個執行緒同時執行多項任務
- 單元1:非同步平行處理
- 單元2:資料平行
作業
- 完成程式非同步平行執行
學習目標:學習使用套件管理工具Cargo與套件倉庫
- 單元1:加入Cargo套件
- 單元2:建立專案
- 單元3:使用Cargo建立程式
作業
- 使用cargo輔助建立程式
學習目標:建置第一個HTTP伺服器與簡單API伺服器。
- 單元1:學習 TCP 與 HTTP
- 單元2:在插座(socket)上監聽 TCP 連線
- 單元3:解析 HTTP 請求
- 單元4:建立合適的回應。
- 單元5:透過執行緒池(thread pool)改善伺服器的吞吐量
- 單元6:安裝actic-web套件
- 單元7:GET和POST
- 單元8:測試API
作業
- 建置HTTP伺服器
- 架設簡單的API伺服器
學習目標:學習Web框架rocket、Yew與部署Rust程式
- 單元1:安裝rocket與設定框架
- 單元2:rocket的路由和處理請求方式
- 單元3:安裝Yew與WebAssembly
- 單元4:建立Yew前端專案
- 單元5:建立單一執行緒網頁伺服器
- 單元6:轉換多執行緒伺服器
- 單元7:正常關機與清理
作業
- 使用rocket完成程式
- 完成部署Rust程式
學習目標:分組專題製作發表
- 單元1:分組專題製作
- 單元2:分組專題發表
誰適合學
- 前端工程師想加薪學習底層程式語言者。
- 有1~2年開發經驗,想提升開發能力的工程師。
- 資深工程師想使用RUST還技術債。
- 對Rust語言有興趣,想早一步學習的工程師。
課程優勢
掌握一項新語言的過程中,需要有實務經驗的老師經驗分享與實務操作,志璁老師擁有多年後端程式開發實務經驗與教學經驗,洞悉學員在程式開發過程的痛點。課程中將有實務操作與專案作品產出規劃,學員上完課急可產出完整作品。 課程開始從基礎Rust語言語法學習,到後期應用程式與SQL資料庫、API串接,讓學員可以迅速掌握Rust語言與後端應用程式開發的技巧。
關於講師
簡志璁/Alvin
經歷
- 超微半導體Linux系統程式設計班授課講師
- 中華行動數位科技有限公司(講師/課程教學)
- 中華民國中小企業協會(講師/課程教學)
- 漢光教育基金會ADOC數位行動車(講師/課程教學)
- 行政院勞委會職訓局北區訓練中心(資訊通-計畫講師/課程教學)
- 花蓮縣數位機會中心(講師/課程教學)
Q&A
- 需自備桌機、筆記型電腦
屬於AI進階應用課程,建議有Python程式底子。
每堂線上直播課程,課後隔天18:00後,均可以在雲端教室直接查看影片,可於線上一年內無限重複觀看,不用擔心漏掉任何一個細節。且經大部份使用者回饋,在下次課程開始前,重新複習上次課程內容,學習效果會更好喔。
*依專案不同,觀看期限可能有所調整,菜鳥救星保留修改權益之權利。
*依專案不同,觀看期限可能有所調整,菜鳥救星保留修改權益之權利。
當然!歡迎到「課程問答區」詢問,與老師同學小編一同互動喔。
歡迎至常見問答頁面查詢,或是加入line帳號:@rookiesavior,與我們聯絡喔!
注意事項
- 收到款項後,若不克參加申請退費,請參閱退費規則。
- 本課程結合講師職場實務經驗傳授,習者請反覆演練運用,並配合上課作業實作。
- 課程執行單位保留調整課程內容、日程與講師之權利。
優惠價
NT$21,600