?
今天分享分為兩部分 :)
PART01?工程開發+代碼規范分享/
PART02 關于某易云自動簽到聽歌分享-
? ?
?
5Mins? Dev+Coding Rule:
PART 1?
?
了解真實工程開發🏗.....
?
本篇內容分享的宗旨:?學長工作經驗之談僅作分享🏷
?
?
?
Ready,Go
?
?
?
?
代碼管理——工具篇
?
?工程上首先需要解決的大事就是代碼管理
?工欲善其事,必先利其器
?工具的演進:?VSS >?CVS >?SVN >GIT(+LFS)
?GIT常見指令
?
?
代碼管理——分支管理
?
1.確定開發計劃后,從穩定分支(master)clone一個開發分支dev_{version}
2.由dev_leader在開發分支上建立初步基線代碼,以便整個開發團隊進行下一步的模塊開發
3.開發團隊各特性負責人從開發分支拉出特性開發分支feature_{version}_{name}
4.特性開發完成后,開發者將特性分支合入開發分支。確定滿足條件的可合入release分支進入提測環節
5.測試迭代期間,bug修復在release分支上進行,并將代碼同步回開發分支
6.重復上述流程4與5,直到所有特性開發完成并測試
7.合入master并打tag
?
代碼管理——CodeReview
?
1.master作為工程項目穩定主分支來維護,對master的合入修改必須要經過嚴格的CodeReview
2.對于gitlab項目,回收master分支修改權限,需要合并入master的代碼,可以依托于gitlab提供的Merge Request操作,提交merge request到指定的評審人;
3.對于gerrit項目,保持所有master分支與release分支的修改評審環節,刪除其它dev分支與feature分支的評審流程;
4.代碼提交者與評審人不能是同一人,必須交插安排。原則上,評審人應該是經驗豐富的工程人員,避免評審中的疏忽大意。如果某評審人連續兩次因為評審失誤導致把關不嚴問題,短時間內不得再安排評審任務。
5.評審人以2-3人為佳,評審過程保持與提交人溝通順暢,確保代碼理解一致。
🔊以上內容重要的是實操
?
代碼管理——靜態掃描
Lint工具
?
設計——架構
-
話題太大,無從入手
-
總結了一下目前公司SDK類的研發框架
????? sdk依賴 + 基礎處理庫 + 業務實現 + API封裝 + [模型配置定制化] +[多平臺編譯]
-
推薦在線設計工具:processon.com
?
設計——API接口設計原則
?接口三要素:數據結構,錯誤碼,接口定義
?原則一:接口定義少用STL標準模板庫,多采用基本類型
?原則二:接口參數控制到5個以內
?原則三:對輸入類自定義結構型參數,多以const指針引用為好
?原則四:命名準確,注釋清晰無歧義,尤其對返回值或錯誤碼要重點說明
?原則五:盡量減少接口函數數量以降低模塊間的耦合
?原則六:接口中涉及的自定義數據結構,最好采用定長類型(char, short, int, int8/16/32/64, float, double)
?
編碼——CodingRule
C++Code Style (google)參考
?
后臺回復【操作系統】獲取上期pdf分享
🔊
看到這里,學長最后再分享一個好消息,就是恭喜學長,終于收到了百度的offer,入職Baidu的時間定在了下月,其實提出離職的時候,Leader我們的架構瘋狂挽留我,還說要漲很多很多錢,我似乎快動搖了,但是離職這種東西,說了就說了,覆水難收,至于原因,大家以后就會懂的。而且我認為,一匹得到伯樂的野馬,哪里都會是我馳騁的廣闊草原🐎
?
其實我很懷念這些共事的朋友,印象中同事們對我評價最深的一句話,是位生過二胎的姐姐開會時候說過一句'我覺得劉旺同學靠得住',正是這句話仿佛烙印在了我的心上,一直讓我待人以最真誠,處事以原則。雖有不舍,但還未入職的我正滿懷熱忱,也同時萬分期待著我的新鮮血液融入集體,和新的小伙伴共同前行。
?
最后,希望在百度的我可以做的更好,不辜負幾位面試官的賞識,更不負自己那一份野心,也一樣做真實的自我🙆?♂?
?
?
? ?
?
好了,先到這里了,如果大家在實踐中有什么問題,可以給我留言,Bye~
?
-以上簡單描述希望對你有所幫助。共勉-
以下為之前分享的寶藏內容
希望學長分享的內容對你我都有幫助💪
Pandas系列文章
?
django系列文章
-
【Django教程】第15天:ORM性能優化和提升
-
【Django教程】第14天:debugtoolbar開發工具
-
【Django教程】第13天:Email-郵件發送
-
【Django教程】第12天:后臺管理-admin
-
【Django教程】第11天:自定義模板過濾
-
【Django教程】第10天:模板語
-
【Django教程】第09天:驗證碼
-
【Django教程】第08天:會話機制Cookie&Sessio
-
【Django教程】第07天:上傳/顯示圖
-
【Django教程】第06天:HttpRequest對象
-
【Django教程】第05天:ORM模型操作匯
-
【Django教程】第04天:前后端分離開發
-
【Django教程】第03天:導出Excel報表
-
【Django教程】第02天:深入模型
-
【Django教程】第01天:快速上手
?
?
PS:公號內回復:?Python.即可獲取最新最全學習資源!
?
覺得內容不錯的 歡迎點擊「在看」支持
謝謝各位
?
我也希望這個世界會因為分享而更美好!
單純分享,無任何利益相關!