Java SDK 肯定是使用最广的库,所以本文的名单焦点是流行的第三方库。该列表可能并不完善,所以如果你觉得有什么应该出现在列表中的,请留下您的评论。非常感谢!
网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、小程序设计、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了海曙免费建站欢迎大家使用!
1、核心库
Apache Commons Lang:来自Apache的核心库,为java.lang API补充了许多常用的工具类,如字符串操作、对象的创建等。
Google Guava:来自谷歌的核心库,包括集合(Collection)、缓存(Caching)、支持原语(Primitives)等。(示例)
2、HTML、XML Parser
Jsoup:一个简化了的 HTML操作的库。(示例)
STaX:一组可以高效处理 XML的API。 (示例)
3、Web框架
Spring:Java平台上众所周知的开源框架和依赖注入容器。(示例)
Struts2:来自Apache的流行Web框架。 (示例)
Google Web Toolkit:Google提供的开发工具库,主要用于构建和优化复杂的Web程序用。 (示例)
Strips:使用最新Java技术构建的Web程序框架,推荐使用。
Tapestry:面向组件的框架,用于使用Java创建动态、健壮、扩展性高的Web应用程序。
请猛击这里 查看以上面框架之间的比较。
4、图表、报表、图像
JFreeChart:用于创建如条形图、折线图、饼图等图表。
JFreeReport:创建于输出PDF格式的报表。
JGraphT:创建图像,其中只包含由线段连接的点集。
5、窗口
Swing:SDK提供的GUI库。(示例)
SWT:eclipse提供的GUI库。
SWT与Swing的比较。
6.、GUI框架
Eclipse RCP。(示例)
7、自然语言处理
OpenNLP:来自Apache的自然语言处理库。 (示例)
Stanford Parser:斯坦福大学提供的自然语言处理库。(示例)
如果你是一名NLP专家,请猛击这里 查看更多工具库介绍。
8、静态分析
Eclipse JDT:由IBM提供的静态分析库,可以操作Java源代码。(示例)
WALA:可以处理jar包文件(即字节码)的工具库。(示例)
9、JSON
Jackson: 用于处理JSON数据格式的多用途的Java库。Jackson 旨在快速、准确、轻量、对开人员友好之间找到最好的平衡点。
XStream:一个简单用于对象和XML互相转换的库。
Google Gson:一个专门用于Java对象和Json对象相互转换的工具库。(示例)
JSON-lib:用于 beans、maps、collections、java arrays、XML 和 JSON 之间相互转换操作的工具库。
10、数学
Apache Commons Math:提供数学计算和数值统计需函数的工具库。
11、日志
Apache Log4j:风行一时的日志记录操作库。 (示例)
Logback:当前流行的log4j项目的继任者。
SLF4J(The Simple Logging Facade for Java): 各种日志框架的一个简单的外观或抽象(如java.util.logging 、logback、log4j等),允许用户在部署时加入需要的日志框架。
12、Office
Apache POI:利用其提供的APIs,可以使用纯Java代码操作各种基于微软OLE2合成文档格式的文档。
Docx4j:一个用于创建、操作微软公开的XML文件的库(支持Word docx、 Powerpoint pptx和Excel xlsx)。
13、日期和时间
Joda-Time:如有质量问题包退包换的Java日期和时间类。
14、数据库
Hibernate、EclipseLink、JPA
JDO
jOOQ
SpringJDBC、Spring Data
Apache DbUtils
15、开发工具
Lambok: 旨在减少代码编写的Java开发库。
你这说的太笼统了,应该具体些。
有了Java代码之后
1、可以在代码中写些测试的方法,把你想要验证的东西,输出看一下。
2、可以用Debug的形式,跟踪代码执行,验证程序的逻辑是否正确。
3、利用JUnit写断言,测试结果
对于软件编程开发程序员来说,无效代码堆积以及代码质量低是很多新手容易犯的一些错误。
下面我们就一起来了解和学习一下,减少无效代码的堆积都有哪些方法。
当曾经向往的职业变成一日又一日的无用代码堆积,多少让开发者有些心灰意冷,虽然无法保证整个产品质量,但至少可以在代码层面下点功夫。
无用代码堆积这种现象在日常软件开发中非常普遍,对于需求频繁被修改的问题,根源在于弄清楚软件开发的目的是什么,代码有没有用的终决定者应该是用户,如果一段代码具备的功能符合用户需求,具备业务价值,那么就是有用的。
在软件开发过程中,需求变更和代码修改是很正常的事情,但这个不确定性需要在一定范围内。
对此,佳的解决方案可能是迭代开发,也叫迭代增量式开发,将整个开发周期分解为若干时间段,每隔一段固定时间就对软件进行一次小迭代,每迭代几次就进行一次全面测试和大版本更新,对开发成果进行质量评审,这个过程重要的是听取终用户的意见,以便及时调整优化,避免无效需求,尤其是决策者拍脑门出来的决定。
开发之前,技术负责人务必准备好相应文档,确定好各工程师的分工,尤其是需要协同完成的部分。
另外,团队尽量抽出时间和精力进行代码Review,并以降低代码复杂度为目标,如果不同工程师之间的代码间经常互相影响,可以考虑让这类程序员负责独立开发模块,降低对整个项目的影响。
长期以来,测试在国内的重视程度并不够,一个测试团队起码应该有白盒测试、效率测试、单元测试等各类专职人员,不建议在所有功能完成之后才开始测试,好是完成一个功能就马上交给测试,测试阶段应由测试完全掌握主动权,开发必须尊重测试人员的工作。
归根结底,山西北大青鸟认为软件开发是一项非常复杂的工作,为了避免过程出错,很多公司已经摸索并建立了成熟且完整的代码编写规范,包括变量命名规则、层次化设计、类和接口设计,到后的代码Review都很清楚,重要的不是会写代码,而是学会解决问题,做真正有价值的事情。