C++/Java式物件導向在Rust實踐中所遇問題及解決辦法

熊皮皮發表於2018-11-14

文件列表見:Rust 移動端跨平臺複雜圖形渲染專案開發系列總結(目錄)

概括:這是我用Rust寫圖形渲染專案的經驗總結,並不是建議大家這麼用,使用哪種程式設計正規化應根據團隊背景及業務需求而定。C++/Java/C#等基於繼承的物件導向做法很容易違反Rust的借用檢查機制,強行堅持這種做法會讓Rust程式碼難以閱讀,也違背了程式碼應該保持簡潔易讀的初衷。雖然Rust支援基於組合的物件導向,也因為借用檢查機制的影響導致程式碼和我們用Java實現的物件導向存在一些差異,讓開發者感覺不自在。
經過幾次重構,目前個人傾向面向資料程式設計、基於組合實現平鋪資料結構及儘可能小的物件導向思路封裝業務需要的資料結構。同時,藉助資料檢視(Data View)方案解決目前借用檢查機制不夠智慧的缺陷。

未完待續

學習資料:

來源:https://juejin.im/post/5bebb126e51d4569dc41ac73

相關文章