Thrift 代碼就是編程代碼。是代碼,就應該有良好的工程組織,而且,單獨git倉庫、版本管理,都是必不可少的。git
前面咱們簡單總結了一些 Thrift 的一些基礎知識點,但無非是一些細節層面的東西,所謂『細枝末節』也。而一些東西,想要用得舒服, 工程組織架構,同樣都不能少。編程
然而,代碼組織架構,如同『一千個讀者,就有一千本《紅樓夢》』同樣,每一個人都有本身的理解,無非是選擇問題,無非是口味問題。bash
就我而言,通常喜歡小的、分而治之的東西,因此,我通常有以下的訴求:架構
src/
services/ 對外暴露接口
XXService.thrift
structs/ 對象,class
person.thrift
enums/ 公共枚舉
constants/ 公共常量
exceptions/ 公共異常,有些團隊,RPC不喜歡使用異常,因此這個目錄能夠沒有
compile_thrift_to_cpp.sh 編譯腳本
compile_thrift_to_py.sh
複製代碼
看得出,上面的目錄組織,喜歡直接使用 Thrift 中的名詞概念,能夠謂之『就近原則』。適合一些「不肯記憶,或者記憶力有點不足」的人(like me)。編程語言
這樣,利用自動化集成工具,要麼將編譯後的編程語言源碼放到內部公共依賴源中,要麼直接集成到項目目錄下。工具