Q
如何選擇開源庫?
3
A
回答
3
我不用Java編程,但我確實需要爲C++和Python尋找庫,這是我的支柱。
我覺得有些標準就可以申請到的東西,你找到關於谷歌或社區網站,像這樣與java.net包括以下內容:
- 記錄如何以及是這個項目?它只是API文檔嗎?它有樣品嗎?他們是記錄還是隻是吐出?有教程嗎?
- 什麼時候是最後的穩定/不穩定/測試版本?版本控制日誌是否指示項目中的活動? (Google Code projects在顯示項目活動的頁面右側有一個指示符)他們的郵件列表是否處於活動狀態?很多人會問一些問題並回答問題嗎?開發者是否在他們的郵件列表上討論
- 是您喜歡的API嗎?這既是個人喜好又是客觀衡量的問題。例如,對於C++ GUI,有些人更喜歡wxWidgets的API,而有些人更喜歡Qt的API,並且每個人都有更高的生產力,但也有充分理由客觀地相信爲什麼他們是比其他API更好。
- 該項目是否「有名」?這種情況有點不確定,因爲它依賴於羣體思維,但是根據他們是如何「着名」或「知名」或「廣泛使用」來考慮項目有一些優點。它有幫助,因爲這通常是可靠性的指標(重點在通常,即不總是)。社區可能會更積極和知識淵博。你可以利用現有的已經熟悉這些API的程序員,僱傭他們或者招募他們等等。例如,我想除了通常很好以外,很多人會用Lucene作爲他們的文本搜索系統,因爲它被非常廣泛地使用。
- 該項目有多成熟?它是在阿爾法?測試版?預發行?有時你會找到一個你真的很喜歡的圖書館,但它非常原始。根據項目的性質,您可能需要重新考慮使用它。
所有這一切說,通常找到好的Java庫的好地方可能是Apache和Google發佈的項目。
這就是我現在所擁有的。帶上一小撮鹽。如果我還有其他東西要添加,我會編輯這篇文章。
希望這會有所幫助!
1
我很少需要額外的「通用」庫。如果在你關注Apache的時候就是這樣的話 - 有一些像那樣的團體一般做得很好,但是你可以像普通的圖書館那樣獲得大部分的東西,你可以自己寫儘可能快地學習使用他們的東西。
偶爾我需要一個特定的庫,比如SNMP庫或者其他的東西來提供一個特定的服務 - 這些實際上是需要的,因爲重寫它們會讓人望而卻步。這些對於正確選擇來說更重要,但通常沒有太多選擇,如果你不這樣做,同事幾乎肯定會有一些經驗或意見。
研究像這樣的東西應該是每個項目的預定部分 - 在項目的早期階段需要確定研究的需要。
相關問題
- 1. 時間選擇器(開源)
- 2. 選擇Linux進行開源開發
- 3. 如何選擇以開始值開頭的數據庫?
- 4. 爲開放源代碼庫選擇名稱
- 5. 我對開源圖表庫有什麼選擇?
- 6. 如何不選擇'檸檬'開源項目
- 7. 如何選擇一個開源項目加入?
- 8. SWT:如何通過選擇文件打開資源管理器?
- 9. 是StreamBase有開源的選擇嗎?
- 10. 選擇開源MDM服務器
- 11. build.phonegap.com有沒有開源的選擇?
- 12. 如何選擇數據庫
- 13. 如何選擇一個庫
- 14. 開源圖庫
- 15. 開源MIDI庫
- 16. GeoJSON開源庫
- 17. 開源3D幾何庫?
- 18. 如何讓ECS資源庫公開?
- 19. 如何創建開源代碼庫
- 20. 如何導入android開源庫?
- 21. 如何將開源庫安裝到Eclipse?
- 22. Ember電源選擇 - 如何關閉選擇的EPS
- 23. 如何使用佈局,選擇資源
- 24. GeoCoordinateWatcher如何選擇其來源?
- 25. 如何從MergedDictionaries選擇資源
- 26. 如何選擇照片並從片段中打開圖庫?
- 27. 如何打開圖庫來選擇多個圖像?
- 28. 如何打開iPhone上的圖庫以選擇圖像?
- 29. Android圖庫開始選擇可繪製
- 30. 如何防止選擇日期後打開日期選擇器?
選擇您最喜愛的搜索引擎? – 2010-06-02 18:21:18
不知道你在問什麼......也許你想要一個開放源碼Java庫的中央資料庫?是否有一些您想要的特定功能,或者您只是在尋找一個存儲庫,比如CPAN(但是用於Java)? – FrustratedWithFormsDesigner 2010-06-02 18:21:27
http://java.net/有很多開源的java項目... – npinti 2010-06-02 18:28:24