大胆采用开源工具(转)

简介: 下面为书籍第11章《开源世界》的读书笔记: 一、大胆采用开源工具 选择开源框架和工具需遵循的原则:1. 普适性原则:选用开源项目时需要考虑项目成员的整体技术水平,不能有太大的跨度或跳跃性,要确保大部分成员都比较熟悉。

下面为书籍第11章《开源世界》的读书笔记:

一、大胆采用开源工具

选择开源框架和工具需遵循的原则:
1. 普适性原则:选用开源项目时需要考虑项目成员的整体技术水平,不能有太大的跨度或跳跃性,要确保大部分成员都比较熟悉。
2. 唯一性原则:相同的工具只能选择一个或一种,这样避免重复。
3. “大树纳凉”原则:最好选用比较有名的开源项目,这样出现bug时能够较快地解决。
4. 精而专原则:选用开源项目时最好选用“对口”的项目,这样的项目相对做得更加专业些。
5. 高热度原则:项目的热度越高,更新就会越频繁,使用人群也越广,Bug曝光率也越快,修复效率也越快,总之热度高的项目也更好地保持质量或更快地解决问题。

二、推荐使用Guava扩展工具包

Guava是Google基于JDK扩展的开源项目,包括很多实用的处理包:collections,caching,annotations等。

Guava官方教程中文版

三、推荐使用Apache扩展包

Apache扩展包应该使用非常广泛了。常见的有lang包、collections包、IO包等等。

Apache Commons官网地址
Commons Collections官网地址
Commons BeanUtils官网地址
Commons IO官网地址
Commons Lang官网地址

四、推荐使用Joda日期时间扩展包

Joda-time项目日期与时间处理方面非常方便,比使用JDK要简单方便得多。

Joda-time官网地址

五、可以选择多种Collections扩展

Collections作为数据结构的重要组成部分,有很多开源扩展,除了非常常见的Google Collections和Apache Collections,这里介绍几个有个性的扩展包:
1. fastutil 
fastutil主要提供限定值类型的集合以及大容量的集合。
fastutil官网地址链接
2. Trove Trove提供了一个快速、高效、低内存消耗的Collection集合。
Trove for Java托管地址
3. lambdaj
lambdaj是一个纯净的集合操作工具,它不会提供任何的集合扩展,只提供对集合的操作。

六、几个非常好的开源项目网站

1、Github
这个网站应该是目前最火的开源项目托管网站了,非常多有名的项目都托管在上面,而且不少有名的项目也往往Github上面在迁移。 主页地址链接

2、sourceforge
主页地址链接

3、google code
主页地址链接

4、开源中国
国内非常好的项目托管网站。主页地址链接

 

http://wdmcygah.iteye.com/blog/2184709

 

相关文章
|
29天前
|
人工智能 IDE Java
AI 代码工具大揭秘:提高编程效率的必备神器!
【10月更文挑战第1天】近年来,人工智能得到了迅猛的发展,并在各行各业都得到了广泛应用。尤其是近两年来,AI开发工具逐渐成为开发者们的新宠,其中 GitHub Copilot 更是引发了无限可能性的探索。
91 9
AI 代码工具大揭秘:提高编程效率的必备神器!
|
3月前
|
开发者 CDN 监控
【破局·提速】当Vaadin遇上性能怪圈:开发者的智慧较量与极速加载的实战秘籍!
【8月更文挑战第31天】本文详细介绍了优化Vaadin应用性能的方法,特别是提高加载速度的实战技巧。首先分析性能瓶颈,如服务器响应时间和数据库查询效率等;然后通过代码优化、数据分页与急切加载技术减少资源消耗;接着利用资源压缩合并及CDN加速,进一步提升加载速度;最后通过持续性能监控和测试确保优化效果。通过综合应用这些策略,可显著改善用户体验。
75 0
|
3月前
|
持续交付 测试技术 jenkins
JSF 邂逅持续集成,紧跟技术热点潮流,开启高效开发之旅,引发开发者强烈情感共鸣
【8月更文挑战第31天】在快速发展的软件开发领域,JavaServer Faces(JSF)这一强大的Java Web应用框架与持续集成(CI)结合,可显著提升开发效率及软件质量。持续集成通过频繁的代码集成及自动化构建测试,实现快速反馈、高质量代码、加强团队协作及简化部署流程。以Jenkins为例,配合Maven或Gradle,可轻松搭建JSF项目的CI环境,通过JUnit和Selenium编写自动化测试,确保每次构建的稳定性和正确性。
60 0
|
6月前
|
算法 前端开发 语音技术
推荐6款2023年爆火的开源项目,你值得一试!
推荐6款2023年爆火的开源项目,你值得一试!
推荐6款2023年爆火的开源项目,你值得一试!
|
6月前
|
数据采集 运维 前端开发
打跑个人开源转角的“拦路虎”——我的开源之路
打跑个人开源转角的“拦路虎”——我的开源之路
51 0
|
机器学习/深度学习 人工智能 算法
这个社区可以互相交流学习AI相关的开发技术吗?自学开发AI图像算法插件一段时间,和大家分享一下经历吧,也不知道自己目前在折腾的东西有没有用。
接触AI相关快一年的时间,期间自学了一些AI图像相关的算法,然后用掌握的一些知识整了一些土枪土炮的花样,给大家献个丑,希望能在这里找到一个可以交流学习的环境。
193 3
|
搜索推荐 算法 API
4个工具,让 ChatGPT 如虎添翼!
4个工具,让 ChatGPT 如虎添翼!
|
测试技术
深聊自动化测试之:10年小鱼给你10条建议,让你在自动化界占据一个墙角
深聊自动化测试之:10年小鱼给你10条建议,让你在自动化界占据一个墙角
122 0
|
测试技术 Python
热饭的测开成果盘点第八期:C/S架构大型selenium平台本地调试客户端
本期介绍的是一个wxpython写的客户端,主要是给一套服务端的selenium平台做本地调用。在上回我说到 完全在页面维护的平台反响不好后就转变为使用者可自行在本地写脚本,写好后上传到平台即可,所以做了本地的c/s客户端方便调试用例,而且和平台联系紧密,比如一些公共变量 方法等同步之类的。但是可惜 做了一半我就被陷害愤然离职了,这个客户端也还没正式启用就雪葬了
热饭的测开成果盘点第八期:C/S架构大型selenium平台本地调试客户端
|
消息中间件 Kubernetes JavaScript
讲真,这几个完整的开源Java项目能让你的能力提高一大截(下)
前言 今天有一个读者问了,一个很神奇的问题:
238 0
下一篇
无影云桌面