Google Chrome是一個優(yōu)秀的開源的瀏覽器,其開發(fā)過程大量地使用了網(wǎng)上現(xiàn)在成熟穩(wěn)定的開源代碼,目前Chrome所涉及26個開源代碼:
1、Google Breakpad
/src/breakpad
開源的跨開臺程序崩潰報告系統(tǒng)。
2、Google URL
/src/googleurl
Google小巧的URL解析整理庫。
3、Skia
/src/skia
矢量圖引擎。
4、Google v8
/src/v8
Google開源的JavaScript引擎。V8實現(xiàn)了ECMA-262第三版的ECMAScript規(guī)范,可運行于Windows XP 和 Vista, Mac OS X 10.5 (Leopard), 及 Linux等基于IA-32 或 ARM 的系統(tǒng)之上。V8可單獨運行也可嵌入到任何C++程序中。
5、Webkit
/src/webki
開源的瀏覽器引擎
6、Netscape Portable Runtime (NSPR)
/src/base/third_party/nspr
Netscape Portable Runtime (NSPR) 提供了系統(tǒng)級平臺無關(guān)的API及類似libc的函數(shù)。
7、Network Security Services (NSS)
/src/base/third_party/nss
Network Security Services (NSS) 一套用于支持服務(wù)器端與客戶端安全開發(fā)的跨平臺函數(shù)庫。程序通過NSS可支持SSL v2 and v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 認證及其它一些安全標準。
8、Hunspell
/src/third_party/hunspell
Spell checker and morphological analyzer library and program designed for languages with rich morphology and complex word compounding or character encoding.
9、Windows Template Library
/src/third_party/wtl
用于開發(fā)Windows程序與UI組件的C++ library。WTL擴展了ATL (Active Template Library) 并提供一套用于controls, dialogs, frame windows, GDI objects等開發(fā)的類。
10、Google C++ Testing Framework
/src/testing/gtest
Google用于編寫C++測試的基于xUnit架構(gòu)的框架,可用于多種平臺上:Linux, Mac OS X, Windows, Windows CE, and Symbian。支持自動測試發(fā)現(xiàn),有一套豐富的Assertions斷言,用于可自定義斷言,death tests, fatal and non-fatal failures, various options for running the tests, and XML test report generation.
11、bsdiff 與 bspatch
/src/third_party/bsdiff 及 /src/third_party/bspatch
bsdiff 與 bspatch 用于為二進制文件生成補丁。
12、bzip2
/src/third_party/bzip2
bzip2使用Burrows-Wheeler block sorting text compression 算法與Huffman編碼壓縮文件。
13、International Components for Unicode (ICU)
/src/third_party/icu38
ICU是一套成熟并被廣泛使用的C/C++ 及 Java 庫,可為軟件提供Unicode與全球化支持。
14、libjingle
用于做sync的p2p庫
15、libjpeg
/src/third_party/libjpeg
用于處理JPEG (JFIF)圖像格式的庫。
16、libpng
/src/third_party/libpng
PNG圖像格式庫。支持絕大部分的PNG特性,可擴展。已經(jīng)被廣泛地使用了13年以上了。
17、libxml
/src/third_party/libxml
C語言的XML解析庫。
18、libxslt
/src/third_party/libxslt
C語言的XSLT庫。
19、LZMA
/src/third_party/lzma_sdk
LZMA為7-Zip軟件中7z格式壓縮所使用的壓縮算法,有很好的壓縮效果。
20、stringencoders
/src/third_party/modp_b64
一系列高性能的c-string轉(zhuǎn)換函數(shù),比如:base 64 encoding/decoding。通常比其標準實現(xiàn)快兩倍以上。
21、Netscape Plugin Application Programming Interface (NPAPI)
/src/third_party/npapi
多種瀏覽器使用的跨平臺插件架構(gòu)。
22、Pthreads-w32
/src/third_party/pthread
用于編寫多線程程序的API
23、SCons - a software construction tool
/src/third_party/scons
開源的軟件構(gòu)建工具——下一代的編譯工具。可以認為SCons是改進過的跨平臺配上autoconf/automake與ccache的Make工具的子系統(tǒng)。
24、sqlite
/src/third_party/sqlite
大名鼎鼎的嵌入式數(shù)據(jù)庫引擎。自管理、零配置、無需服務(wù)器、支持事務(wù)。
25、TLS Lite
/src/third_party/tlslite
SSL 3.0, TLS 1.0, and TLS 1.1的Python免費實現(xiàn)庫。TLS Lite支持這些安全驗證方式:SRP, shared keys, and cryptoIDs in addition to X.509 certificates。注:Chrome并不包涵Python。TLS Lite用于Chrome開發(fā)過程中的代碼覆蓋、依賴檢查、網(wǎng)頁加載時間測試及生成html結(jié)果比較等。
26、zlib
/src/third_party/zlib
zlib為一套用于任意平臺與機器的無損數(shù)據(jù)壓縮的庫,它免費、自由、無任何法律專利問題。
--------------------------------------------------------------------------------------
下面是其他比較有價值的Google的開源項目:
1、Google PerfTools
這個工具可讓開發(fā)創(chuàng)建更強大的應(yīng)用程序,特別是那些用C++模版開發(fā)的多線程應(yīng)用程序,包括TCMalloc, heap-checker, heap-profiler 和cpu-profiler。
2、Google Sparse Hash
非常節(jié)省內(nèi)存的hash-map。
3、Protocol Buffers
Protocol Buffers是一種可擴展編碼序列數(shù)據(jù)的方式,Google在幾乎所有內(nèi)部RPC協(xié)議和文件格式都使用了Protocol Buffers。