支付寶使用的開源技術一覽

看過來,看過來,看看支付寶客戶端用了哪些開源技術。這可不是筆者瞎編的,你可以通過打開支付寶客戶端,點擊

“我的->設置->關於->版權信息"驗證。

  • gson
  • 谷歌開源的json處理工具。
  • jackson-databind/core/annotation
  • jackson三大組件。
  • fastjson
  • 阿里巴巴開源的json處理工具。
這支付寶客戶端把當今最優秀的三大JSON解析器全引用進來了。
  • okhttp
  • 一個處理網絡懇求的開源項目,是安卓端最火熱的輕量級結構,由移動支付Square公司奉獻用於替代HttpUrlConnection和Apache HttpClient,Java服務端也能夠運用
  • okio
  • Okio是一款輕量級IO結構,由Square公司打造,是著名網絡結構OkHttp的基石(OKHttp底層IO操作庫)。Okio結合了java.io和java.nio,提供堵塞IO和非堵塞IO的功用,同時也對緩存等底層結構做了優化,能讓你更輕捷的取得、存儲和處理數據。
  • OpenSSL
  • 是現在最盛行的 SSL 暗碼庫東西,其提供了一個通用、健壯、功用齊備的東西套件,用以支持SSL/TLS 協議的完成;
  • cJSON
  • cJSON是一個僅有一個.h文件,一個.c文件組成的JSON解析器,它是由純C(ANSI C89)完成的,跨渠道性較好。cJSON中有一個cJSON結構體。cJSON是採用鏈表存儲的。
  • Json11
  • GitHub上dropbox的json11庫的運用,地址:https://github.com/dropbox/json11,它用起來非常方便,只有兩個文件,一個json11.hpp,一個json11.cpp;
  • DiskLruCache
  • 谷歌引薦的用來完成硬盤緩存的類(不同於LruCache將數據緩存到內存中),例如能夠將網絡下載的圖片永久的緩存到手機外部存儲中去,並能夠將緩存數據取出來運用。參閱:https://github.com/JakeWharton/DiskLruCache
  • EventBus
  • 事件發佈/訂閱輕量級結構, 簡化了組件之間通信。假如Java服務端想運用這個組件的話,google-guava已經有提供。
  • dagger
  • Dagger是為Android和Java渠道提供的一個完全靜態的,在編譯時進行依靠注入的結構,原來是由Square公司保護,現在由Google保護。
  • tagsoup
  • TagSoup是一個Java開發符合SAX的HTML解析器;
  • lua
  • Lua 是一個輕量級腳本語言,常用於嵌入其他語言作為彌補,例如Nginx和Android中都能夠嵌入lua。在 Android 中嵌入Lua優點許多,藉助Lua腳本語言的優勢,能夠輕鬆完成動態邏輯操控,應用能夠隨時從服務器讀取最新Lua腳本文件,在不更新應用的情況下修正程序邏輯。
  • aspectj
  • 面向切面編程的結構。
  • zip/lz4/zlib
  • 幾種開源的壓縮算法。
  • FFmpeg
  • FFmpeg是一套能夠用來記載、轉換音頻、視頻,並能將其轉化為流的跨渠道解決方案,官網地址:http://www.ffmpeg.org/。


支付寶使用的開源技術一覽


下面是一些純粹的Android客戶端相關技術:

  • TheMVP(對應於服務端的MVC,是一種編程模式)
  • ijkplayer(B站開源一個基於ffplay的輕量級Android/iOS視頻播放器)
  • ViewPagerIndicator(https://github.com/JakeWharton/ViewPagerIndicator)
  • XRecyclerView(實現下載刷新,底部加載更多)
  • DanmakuFlameMaster(B站貢獻的開源彈幕項目)
  • achartengine(Android圖表庫)
  • CircleImageView(圓形圖片展示控件)
  • ProgressWheel(圓形進度條空間)
  • andriodquery(安卓快速開發框架)
  • android-stackblur(對圖像進行模糊化處理的庫)
  • Android-Charts(安卓圖形圖標空間)
  • android-support-library(安卓平臺一系列向後兼容的庫)
  • androidannotations(安卓註解框架)
  • android-gif-drawable(gif動態圖加載框架)
  • css-layout(CSS佈局框架)
  • NineOldAndroids(Android3.0之前用到的動畫開源庫)
  • Leakcanary(Android內存洩漏分析利器)
  • duktape(輕量級的嵌入式JavaScript引擎,專注於可移植性和低佔用率)
  • libyuv(Google開源的跨平臺實現各種YUV與RGB之間相互轉換、旋轉、縮放的庫)
  • libjpeg-turbo(編碼/解碼數據為JPEG格式的庫)
  • unqlite(內嵌的NoSQL(KV和文檔存儲)數據庫引擎)
  • stun(一種網絡協議)
  • mbedtls(TLS和SSL協議實現的算法庫)


支付寶使用的開源技術一覽



分享到:


相關文章: