如何选择开源库?

Rad*_*adi 3 java open-source

当我们每个人用java编程时,他都需要一个库(一些jar)来完成他的工作。所以当这个程序员找到他需要的一些库时。他如何才能找到这些库中最好的?

谢谢。

blw*_*y10 6

我不太用 Java 编程,但我确实需要寻找 C++ 和 Python 的库,它们是我的支柱。

我认为您可以将一些标准应用于在 Google 或 SO 和 java.net 等社区网站上找到的内容,包括以下内容:

  1. 该项目的记录情况如何?只是API文档吗?有样品吗?它们是被记录下来还是只是被吐出来?有教程吗?
  2. 最后一个稳定/不稳定/测试版本是什么时候?版本控制日志是否表明项目中的活动?(Google Code 项目在页面右侧有一个指示器,显示项目活动)他们的邮件列表是否活跃?很多人提出问题并且问题得到解答吗?开发人员是否在他们的邮件列表上进行讨论?
  3. API 符合您的喜好吗?这既是个人喜好的问题,也是客观衡量的问题。举个例子,对于C++ GUI,有些人更喜欢wxWidgets的API ,而有些人更喜欢Qt的API ,并且有些人在每种方面都更有生产力,但也有充分的理由客观地相信为什么一个人是这样的比其他 API 更好。
  4. 该项目“有名”吗?这有点不确定,因为它依赖于群体思维,但根据项目的“著名”、“知名”或“广泛使用”程度来考虑项目是有一定优点的。它很有帮助,因为这通常是可靠性的指标(强调通常,即并不总是)。社区可能会更加活跃、知识渊博。您可以利用可能已经熟悉这些 API 的现有程序员并雇用他们或招募他们等。例如,我认为除了总体上相当好之外,很多人选择Lucene作为他们的文本搜索系统,因为它使用非常广泛。
  5. 该项目的成熟度如何?是阿尔法版吗?贝塔?预发布?有时你会发现一个你真正喜欢的图书馆,但它非常原始。根据您的项目的性质,您可能需要重新考虑使用它。

话虽如此,一般来说,寻找优秀 Java 库的好地方可能是Apache的项目和Google发布的项目。

这就是我现在所拥有的一切。加少许盐服用。如果我还有其他要添加的内容,我将编辑这篇文章。

希望这可以帮助!