SDK自動(dòng)化設(shè)計(jì)-GoogleCode_第1頁(yè)
SDK自動(dòng)化設(shè)計(jì)-GoogleCode_第2頁(yè)
SDK自動(dòng)化設(shè)計(jì)-GoogleCode_第3頁(yè)
SDK自動(dòng)化設(shè)計(jì)-GoogleCode_第4頁(yè)
SDK自動(dòng)化設(shè)計(jì)-GoogleCode_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、淘寶開(kāi)放平臺(tái)自動(dòng)化SDK介紹簡(jiǎn)要介紹淘寶開(kāi)放平臺(tái)自動(dòng)化SDK是開(kāi)放平臺(tái)業(yè)界一項(xiàng)首創(chuàng)的技術(shù)。它的出現(xiàn)解決了長(zhǎng)期以來(lái):SDK維護(hù)困難、人工編寫(xiě)筆誤、SDK更新速度慢、SDK無(wú)法多語(yǔ)言化的難題。API數(shù)據(jù)類型介紹淘寶API的數(shù)據(jù)類型是一種簡(jiǎn)化版的JAVA類型,它適用于互聯(lián)網(wǎng)傳輸,兼容各種流行的開(kāi)發(fā)語(yǔ)言,簡(jiǎn)單、方便、容易理解。類型名稱類型描述取值范圍Number整型數(shù)據(jù)-264 264String字符串類型Boolean布爾型true, falseDate日期類型(使用北京時(shí)區(qū))格式:yyyy-MM-dd HH:mm:ssField List以半角逗號(hào)分隔的字符串列表Price人民幣金額精確到分byt

2、e字節(jié)數(shù)組類型API元數(shù)據(jù)介紹API元數(shù)據(jù)是淘寶開(kāi)放API最基本最抽象的數(shù)據(jù),利用它可以自動(dòng)生成各種語(yǔ)言的SDK,API在線測(cè)試工具,API離線文檔等。API元數(shù)據(jù)是以XML的形式展現(xiàn)的,它主要包含數(shù)據(jù)結(jié)構(gòu)和API兩個(gè)部分:數(shù)據(jù)結(jié)構(gòu)主要包含:名稱、描述和屬性列表。特殊字段解釋字段名稱字段描述level數(shù)據(jù)結(jié)構(gòu)屬性的類型級(jí)別,可選值為:l Basic: 基本類型l Basic Array: 基本類型數(shù)組l Object: 對(duì)象類型l Object Array: 對(duì)象類型數(shù)組private字段是否隱私,隱私字段需要用戶登錄才能返回,可選值為:true/falseAPI主要包含:名稱、授權(quán)、請(qǐng)求參數(shù)

3、、響應(yīng)參數(shù),響應(yīng)示例、錯(cuò)誤碼、FAQ。字段名稱字段描述authorize調(diào)用接口的授權(quán)類型,直接表現(xiàn)為是否需要傳入Session Key,可選值為:l 必須用戶授權(quán)l(xiāng) 可選用戶授權(quán)l(xiāng) 不需用戶授權(quán)SDK自動(dòng)化設(shè)計(jì)總體設(shè)計(jì)整個(gè)系統(tǒng)基于狀態(tài)和策略模式來(lái)設(shè)計(jì)以達(dá)到快速擴(kuò)展的目的,它主要分為以下五個(gè)部分:Domain:API元數(shù)據(jù)的層次結(jié)構(gòu)展現(xiàn)TypeMapper: 淘寶API數(shù)據(jù)類型與特定語(yǔ)言數(shù)據(jù)類型之間的映射SdkParser: 淘寶API元數(shù)據(jù)的解釋器,通過(guò)它可以把元數(shù)據(jù)解釋為Domain結(jié)構(gòu)SdkCompiler:SDK的編譯器,通過(guò)它可以把源代碼編譯成特定語(yǔ)言的字節(jié)碼或二進(jìn)制碼SdkGene

4、rator:SDK的生成器,它主要負(fù)責(zé)生成源代碼和對(duì)字節(jié)碼進(jìn)行打包發(fā)布模型類圖系統(tǒng)類圖擴(kuò)展方式第一步:編寫(xiě)基礎(chǔ)框架主要包含API請(qǐng)求的HTTP通訊、API響應(yīng)的通用解釋(XML和JSON)、API的簽名及驗(yàn)證工具。當(dāng)然還要包括把這三者結(jié)合起來(lái)的框架。存放位置:把基礎(chǔ)框架打包壓縮(ZIP包),并存放在src/main/resources目錄下(如taobao-sdk-java-source.zip)第二步:編寫(xiě)模板主要包含數(shù)據(jù)結(jié)構(gòu)模板、API請(qǐng)求模板,API響應(yīng)模板。如果需要依賴第三方IDE來(lái)編譯的話,還需要提供工程文件模板。模板以文本文件的方式提供,動(dòng)態(tài)內(nèi)容通過(guò)占位符的方式來(lái)替換。存放位置:放

5、在src/main/resources/template目錄下第三步:擴(kuò)展類庫(kù)主要有3個(gè)擴(kuò)展點(diǎn):實(shí)現(xiàn)類型映射器(TypeMapper)、實(shí)現(xiàn)源碼編譯器(SdkCompiler)、實(shí)現(xiàn)源碼生成器(SdkGenerator)注:1. 如果是弱類型語(yǔ)言(如PHP),是不需要實(shí)現(xiàn)類型映射器的;2. 如果是動(dòng)態(tài)語(yǔ)言(如PHP),是不需要實(shí)現(xiàn)源碼編譯器的。存放位置:分別放在放在com/taobao/top/autosdk/mapper,com/taobao/top/autosdk/compiler,com/taobao/top/autosdk/generator,三個(gè)目錄下使用方式生成JAVA SDK:File target = new File(C:/Sdk/Java);SdkParser parser = new MetaSdkParser(new JavaTypeMapper();SdkGenerator sg = new JavaSdkGene

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論