Rust 移動端跨平臺複雜圖形渲染專案開發系列總結(目錄)
本系列文件記錄了熊皮皮從0學習Rust程式語言,在開發過程中從C++/Java式基於繼承的面向物件程式設計慣性思維到Rust式面向資料程式設計的開發總結,這些內容來自我和團隊使用Rust開發Windows/macOS與移動端iOS/Android等跨平臺共享原始碼的複雜圖形渲染專案的設計、思考與實踐。
面向資料程式設計更接近函數語言程式設計的思維,個人粗淺理解。Rust語法及其帶來的概念如生命週期起初給我和團隊帶來了相當的學習難度,主要原因是業務難度大、(DEMO)開發週期短,還有我們自我束縛在面向物件思維慣性上,導致寫出來的程式碼經常編譯失敗,打擊了士氣,在某些程度上,它“拖慢”了我們的專案進度。 換個角度看,它強迫我一直思考自己的架構設計及記憶體使用是否合理,而我用C/C++/Java等語言在習慣了某些套路後常常忽略思考問題的本質。從個人和團隊成長看,這是有益的,幾番重構,專案架構和程式碼更加直觀,也許這就所謂的“大道至簡”。 好吧,突然暴露了自己是個菜逼,手動攤手.png。
iOS/Android/macOS/Windows等共享原始碼新專案選擇Rust而非C++的簡要原因是,兩者效能相似,Rust有方便好用的依賴管理器、跨平臺編譯極其方便、語義明確、豐富的第三方庫和文件齊全的官方標準庫。