前言
做應用開發的人,經常需要去封裝一些接口,或者去實現一些複雜的功能。但是這些功能接口實現不僅費時,而且還不一定能保證穩定性。這也是導致很多人喜歡使用開源庫的原因之一。如果滿足需求,確實沒必要"重複造輪子"。接下來我們推薦一些比較常用的開源庫。
常用開源庫
-
SQLite
SQLite是一款輕量級的數據庫。它主要是爲嵌入式設備和移動設備設計,我們很熟悉的Android系統就包含了這個開源庫。如果你的系統需要數據庫,那它就是不二之選。
源碼地址:http://www.sqlite.org/
-
FreeType
FreeType庫是一個開源的、高質量的且可移植的字體引擎,它是用C語言編寫的,其設計目標是小巧、高效、高度可定製和可移植,同時能夠生成高質量的輸出(字形圖像),支持大多數矢量和位圖字體格式。我們可以根據自己的需求來進行裁剪。
源碼地址:http://www.freetype.org/
-
zlib
zlib 是一個壓縮解壓程序庫。這個就沒什麼好多說的。
源碼地址:http://www.zlib.net/
-
libnet
Libnet是一個幫助構建和注入網絡數據包的API。它爲底層網絡包的發送和處理提供了一個可移植的框架。Libnet在編寫網絡工具和網絡測試代碼方面非常方便。
源碼地址:https://github.com/libnet/libnet
-
libxml2
Libxml2是爲Gnome項目開發的XML C解析器和工具包。對於需要解析一些xml配置文件,或者網絡xml文件時,非常方便!
源碼地址:http://www.xmlsoft.org/
-
OpenSSL
假如應用程序需要進行安全通信,避免竊聽,同時確認另一端連接者的身份。那麼使用OpenSSL肯定沒錯,它包含了大量加密算法,對數據進行加密。對於網絡通信的安全做了保障。
源碼地址:https://www.openssl.org/
-
pureftpd
PureFTPd是一款專注於程序健壯和軟件安全的免費FTP服務器軟件。其可以在多種類Unix操作系統中編譯運行, PureFTPd還有Android移植版本。
源碼地址:https://www.pureftpd.org
-
Lighttpd
Lighttpd內存開銷小,cpu佔用率低,並且有很豐富的模塊,兼容性也好。Lighttpd是在輕量級web server上算很優秀的了。需要在嵌入式設備上部署web服務時可以考慮使用。
源碼地址:http://www.lighttpd.net/
總結
開源庫大部分是經過很多人使用,並測試過的。所以可靠性還是很比較有保障的,很多人在使用過程中發現的bug都是被修復過的。除非有特殊需求,需要自己來實現,否則還是很推薦使用開源庫的。使用開源庫是很正常的,就連支付寶這種軟件都使用了很多開源庫。
往期精彩