SDK封裝規(guī)范

一:命名規(guī)范

  • 接口名稱,參數(shù)命名清晰規(guī)范,參數(shù)盡可能少,所有傳入?yún)?shù)要做好校驗(yàn)梧税,禁止使用拼音和中文
  • 類名前綴和包命名縮寫要一致
  • 函數(shù)命名遵循共性,不要出現(xiàn)歧義或者違背大家的共識
  • 所有資源命名前綴 比如 yyy_xx_sdk 其他命名 yyy_xx
  • 項(xiàng)目命名:myyXxxSDK,包名:cn.myy.sdk.xxx

二:注釋規(guī)范

  • 代碼注釋規(guī)范清楚
  • 接口注釋要完善
  • 注釋形式統(tǒng)一
  • 注釋內(nèi)容準(zhǔn)確簡潔

三:日志設(shè)計(jì)

  • 可控制打印log級別
  • 核心處理log日志可以配置
  • 主流程第队,異常日志存儲(chǔ)方便定位問題

四:第三方庫依賴處理原則

  • 優(yōu)先使用系統(tǒng)Api,減少三方庫依賴
  • 如果確實(shí)因?yàn)轫?xiàng)目需要哮塞,要引入一些開源庫,可以通過源碼集成的形式引入凳谦,再更改一下包名(類名)忆畅,避免集成沖突。

五:版本管理規(guī)范

  • 使用三位版本號尸执,每位版本號最高三位數(shù)字如1.0.121
  • 第三位:bug修復(fù)家凯,極小的變更
  • 第二位:一般的功能迭代
  • 第一位:項(xiàng)目重構(gòu),功能變更較大如失,需團(tuán)隊(duì)共同確定

六:開放規(guī)范

  • API功能單一绊诲,減少類似enum的入?yún)⒃O(shè)計(jì),最好單一性原則
  • 線程處理, 如非必要不要使用應(yīng)用主線程褪贵,不能長時(shí)間占用驯镊,SDK內(nèi)應(yīng)有一個(gè)專門線程處理SDK 相關(guān)操作
  • 盡量減少全局回調(diào)
  • 提供異常情況回調(diào)和輸出方便接入放定位,錯(cuò)誤回調(diào)采用code+msg組合
  • 能不用單例的就盡量少的使用
  • 對iOS 來說能不用xib 就不用竭鞍,能不用通知就不用通知
  • 多考慮第三方帶來的影響板惑,比如鍵盤處理

七:通用規(guī)范 (注意事項(xiàng))

  • 接口隔離 (小而 精簡)
  • 接口易用性 (對外接口易用,易懂)
  • 向后兼容 (升級SDK兼容)接口廢棄@deprecated
  • 配套有完整且詳細(xì)的使用說明文檔和版本更新說明
  • AppId 和 AppKey的分配偎快,用于區(qū)分集成sdk的是哪一個(gè)公司冯乘,做好權(quán)限控制
  • SDK的 sdkVersion要盡量小,最好不要超過使用SDK的項(xiàng)目的Version(支持的系統(tǒng))
  • 盡量不要引用第三方庫晒夹,要盡量使用系統(tǒng)自帶的功能裆馒,然后在其基礎(chǔ)上進(jìn)行封裝。
  • SDK需要有較強(qiáng)的容錯(cuò)性丐怯,增減穩(wěn)定喷好,增大力度對于SDK內(nèi)部異常進(jìn)行捕獲。
  • SDK內(nèi)部對于關(guān)鍵路徑要有詳細(xì)的Log記錄读跷,便于后期排查問題梗搅。
  • 各個(gè)庫之間要做到高內(nèi)聚,低耦合
  • 核心代碼的安全性
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末效览,一起剝皮案震驚了整個(gè)濱河市无切,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌丐枉,老刑警劉巖哆键,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異瘦锹,居然都是意外死亡籍嘹,警方通過查閱死者的電腦和手機(jī)闪盔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來辱士,“玉大人锭沟,你說我怎么就攤上這事∈恫梗” “怎么了族淮?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長凭涂。 經(jīng)常有香客問我祝辣,道長,這世上最難降的妖魔是什么切油? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任蝙斜,我火速辦了婚禮,結(jié)果婚禮上澎胡,老公的妹妹穿的比我還像新娘孕荠。我一直安慰自己,他們只是感情好攻谁,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布稚伍。 她就那樣靜靜地躺著,像睡著了一般戚宦。 火紅的嫁衣襯著肌膚如雪个曙。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天受楼,我揣著相機(jī)與錄音垦搬,去河邊找鬼。 笑死艳汽,一個(gè)胖子當(dāng)著我的面吹牛猴贰,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播河狐,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼米绕,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了甚牲?” 一聲冷哼從身側(cè)響起义郑,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蝶柿,失蹤者是張志新(化名)和其女友劉穎丈钙,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體交汤,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡雏赦,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年劫笙,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片星岗。...
    茶點(diǎn)故事閱讀 40,096評論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡填大,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出俏橘,到底是詐尸還是另有隱情允华,我是刑警寧澤,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布寥掐,位于F島的核電站靴寂,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏召耘。R本人自食惡果不足惜百炬,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望污它。 院中可真熱鬧剖踊,春花似錦、人聲如沸衫贬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽固惯。三九已至圃验,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間缝呕,已是汗流浹背澳窑。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留供常,地道東北人摊聋。 一個(gè)月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像栈暇,于是被迫代替她去往敵國和親麻裁。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 最近公司在做SDK源祈,這里總結(jié)下SDK開發(fā)規(guī)范 開發(fā)規(guī)范 API功能單一煎源,減少類似enum的入?yún)⒃O(shè)計(jì) 線程處理, 如...
    陳雨塵閱讀 1,748評論 0 9
  • 工程組 - iOS項(xiàng)目開發(fā)規(guī)范 語言O(shè)C 工具編輯器:XCode 11.4(保持最新)托管平臺:Git(Sourc...
    ZhangMeng_閱讀 429評論 0 1
  • android規(guī)范文檔香缺,請勿轉(zhuǎn)載手销!謝謝... 1. 概述 1.1 前言團(tuán)隊(duì)協(xié)作能夠顯著有效的提高工作效率,而代碼規(guī)...
    kai_w閱讀 1,972評論 1 2
  • sdk接口設(shè)計(jì)sdk接口設(shè)計(jì)應(yīng)該遵循單一職責(zé)原則图张、迪米特(最少了解)法則锋拖、開閉原則(對擴(kuò)展開發(fā)诈悍、對修改關(guān)閉)等。1...
    Joey_Zjy閱讀 457評論 0 1
  • 用兩張圖告訴你兽埃,為什么你的 App 會(huì)卡頓? - Android - 掘金 Cover 有什么料侥钳? 從這篇文章中你...
    hw1212閱讀 12,730評論 2 59