转:Java架构师与开发者提高效率的10个工具
原文来自于:http://www.importnew.com/14624.html
Java受到全球百万计开发者的追捧,已经演变为一门出色的编程语言。最终,这门语言随着技术的变化,不断的被改善以迎合变化的市场需求。
无论你是否拥有一家科技公司,软件已经成为几乎每一个企业不可或缺的一部分,为了吸引你潜在的顾客,你应该交付给客户一个技术上有创新的产品。那么,Java能提供这样的平台帮你实现这一技术创新。Java贡献者们一直保持着大幅度的更新,以提供最新最强大的功能。
最近发布的 Java8完美的诠释了高效和创新的特性,也为那些想要在创新之路上取得成功的企业铺平了道路。然后,合适的完成工作,一些高效的工具是必不可少的。幸运 的是有足够丰富的工具来支持Java平台。这些工具使得开发过程更加的简单,快捷和高效。通过应用一些完美的工具,开发人员可以生成一个更优美而健壮的代 码。抛开烦恼,让我们一窥众多工具中,那些每个Java开发人员都应该知道的工具。
让你变得更加高效的一些Java工具和类库
Clover是一个很赞的工具,它能帮助测试优化,进一步优化代码。它能够在一些持续集成的系统上或者IDE上运行。 它认为那些最容易受编码错误影响的东西非常重要。因此,在测试中会更多的关注那些。它不会让最近的一些代码调整而影响到测试速度,还能在测试完代码后快速 的给出反馈。
你 可以已经注意到,同一个产品不同的版本之间,包或者命名空间出现冲突是一种很常见的情况。Jar Jar Links可以避免这种情况,再次创建时会帮助你选择一个合适的包名。这是一个解决依赖问题的理想方案。这个工具和Minijar Maven 插件比较类似,都是解决同样的问题,但是处理方法不一样。
Guava 提供了许多Google核心库,为Java项目提供了很多便利的方法,像并发库、原语支持、集合操作、字符串处理、缓存等等许多方面。
当匿名的从仓库导入一些类库,开发人员可能没有提供详细的信息或是文档。不过,通过Bintray这个社交平台,大家可以查看源代码或者在几个开发人员之间共享出来。它的仓库中收录了超过85000个包。你可以轻松的从中找到需要的类库。
JEXL主要是一种方便嵌入的表达式语言。不要困惑,想简单点,它就是一个库,让一些脚本,Java框架和应用程序动态执行的库。 它能帮助企业平台的技术顾问查看一些隐藏的其他脚本功能,并在需要时能自己构建并实现它们。
由 JetBrains公司开发,IntelliJ 是一个十分智能的Java IDE,提供了一个非常好用的工具集,以确保在最短时间内生产更好更高效的代码。它提供了一个直观友好的界面、运行流畅、稳定的性能。它和Eclipse 非常的相似,可以选择旗舰版或者社区版来使用。旗舰版提供了商业化的IDE功能和完整的工具集并集成了最新的框架。不过,社区版基本上是一个免费开源的版 本,便于Java、Scala和其他的一些语言编程。
这个工具主要是用来确定并通知代码中断的原因。它基本上涵盖了所有的新错误,异常还有一些有代表的错误原因。它会将错误和原因摘要直接通知给开发者,便于他们能够以最优的方案迅速的解决错误。
该工具有以下功能:
- 检测并提示捕捉到的http错误和异常。
- 分析不同应用程序和机器真正的代码和变量状态。
- 还能确定一片代码发生错误的次数,并比较发生错误的频率是否增加。
Librato 是一个托管服务,帮助控制和监测云应用程序。只需要几秒钟,就能轻易的配置一个自定义的监控仪表盘。纯语言绑定使用Clojure、Java等语言。支持集成AWS、Heroku等众多云平台来进行数据收集。当监控的指标超过了定义的阀值,会自动生成报警通知。Librato可以完美 的表现任何东西,知道如何将数据变有意义。
此工具通过静态分析帮助定位Java程序错误。FindBugs是免费的。可以使用GUI界面,也可以作为NetBeans、IntelliJ、Eclipse等众多IDE的插件。
Plumbr旨在解决实时的性能问题。 它能完美的检测内存泄露、低效的垃圾收集、还有线程锁等Java应用程序问题。使用它,能确保项目的顺利进行和最好的性能。你只需要将工具加到你的程序上,如果发现任何缺陷的话会有提示。它提供了内存泄漏、泄漏率、发生在代码的实际位置等所有细节信息。 所以它能够提供完美的错误信息,帮助你修复代码。
上述工具旨在辅助Java开发,帮助开发人员简单高效的完成任务。最新版本的Java8和这些强大的工具也加强了对软件业务现代化的支持。
原文链接: fromdev 翻译: ImportNew.com- 光光头去打酱油
译文链接: http://www.importnew.com/14624.html
[ 转载请保留原文出处、译者和译文链接。]
转:Java架构师与开发者提高效率的10个工具的更多相关文章
- Java架构师与开发者提高效率的10个工具
Java受到全球百万计开发者的追捧,已经演变为一门出色的编程语言.最终,这门语言随着技术的变化,不断的被改善以迎合变化的市场需求. 无论你是否拥有一家科技公司,软件已经成为几乎每一个企业不可或缺的一部 ...
- Java架构师和开发者实用工具推荐
目前,Java已经受到全球数百万开发者的肯定和追捧,成为最具代表性的编程语言之一.前段时间刚刚发布的Java8完美诠释了高效和创新的特性,也为很多开发者和企业铺平了道路.不过,作为一位优秀的Java架 ...
- 前谷歌首席 Java 架构师谈如何设优秀的 API
随着近来软件规模的日益庞大,API编程接口的设计变的越来越重要.良好的接口设计可以降低系统各部分之间的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合度,从而提高系统的维护性和稳定性. Joshu ...
- 阿里巴巴十年Java架构师分享,会了这个知识点的人都去BAT了
1.源码分析专题 详细介绍源码中所用到的经典设计思想,看看大牛是如何写代码的,提升技术审美.提高核心竞争力. 帮助大家寻找分析源码的切入点,在思想上来一次巨大的升华.知其然,并知其所以然.把知识变成自 ...
- [转]阿里巴巴十年Java架构师分享,会了这个知识点的人都去BAT了
1.源码分析专题 详细介绍源码中所用到的经典设计思想,看看大牛是如何写代码的,提升技术审美.提高核心竞争力. 帮助大家寻找分析源码的切入点,在思想上来一次巨大的升华.知其然,并知其所以然.把知识变成自 ...
- JAVA架构师面试题 一
基础题目 Java线程的状态 进程和线程的区别,进程间如何通讯,线程间如何通讯 HashMap的数据结构是什么?如何实现的.和HashTable,ConcurrentHashMap的区别 Cookie ...
- 十年Java架构师分享
看到一篇十年java架构师分享需要掌握的技术点,有时间对照一下,好好学习一下. ------------------------------------------------------------ ...
- Java 架构师面试题
基础题目 Java线程的状态 进程和线程的区别,进程间如何通讯,线程间如何通讯 HashMap的数据结构是什么?如何实现的.和HashTable,ConcurrentHashMap的区别 Cookie ...
- 月薪30k的Java架构师JVM常见面试题解析
在做程序员的路上经常会遇到的JVM一些经典面试题,今天给大家分享出我自己的解题思路,希望对大家有帮助,后续有空会持续更新. 1.什么情况下会发生栈内存溢出. 思路: 描述栈定义,再描述为什么会溢出,再 ...
随机推荐
- Android源代码之DeskClock (一)
一.概述 一直有read the fucking source code的计划,可是实行起来都是断断续续的.到如今也没有真正得读过多少Android的源代码(主要是懒的).如今回忆起来实在是非常羞愧, ...
- XML解析技术研究(一)
摘要:XML作为过去十年中出现的最流行的技术之一,得到了广泛的应用,而其中XML解析技术是XML应用的关键.本文介绍了XML解析技术的研究动向,分析和比较了4种XML解析技术的优劣,并归纳总结了应 ...
- 他们都没告诉你适配 Android N 需要注意什么
还记得 6.0 对 Apache Http 库的废除导致的应用崩溃吗?还记得 6.0 中 MAC id 始终返回为空导致的唯一 id 混合生成算法大幅失效吗? 1. Android 中 Java 的实 ...
- css 权威指南笔记(一)
零零散散接触css将近5年,俨然已经成为一个熟练工.如果不是换份工作,我不知道自己差的那么远:在qunar的转正review中我这种“知其然而不知其所以然” 的状况被标明,我才意识到我已停步不前近两年 ...
- native跟volatile
native是告知编译器 该方法是其他语言实现的 比如C 呵呵 private native void CoutSea();没有方法实现部分的 volatile是Java语言的关键字,用在变量的声明中 ...
- Sharpdevelop使用StyleCop
使用Visual Studio时,用resharper+stylecop感觉不错.后来因为单位电脑实在太卡,平时自己写个小片段什么的就用SharpDevelop,这里需要设置一下. 安装StyleCo ...
- document.documentElement.style判断浏览器是否支持Css3属性
1.document.documentElement.style 属性定义了当前浏览器支持的所有Css属性 包括带前缀的和不带前缀的 例如:animation,webkitAnimation,msAn ...
- C#快速排序法
最近面试的时候,被问到了快速排序法.一时之间,无法想起算法来. 重新看了书本,算法如下: 1)设置两个变量I.J,排序开始的时候:I=0,J=N-1: 2)以第一个数组元素作为关键数据,赋值给key, ...
- 实现多个ContentProvider对多张表进行操作
http://blog.csdn.net/maylian7700/article/details/7365373 SQLite数据库直接操作类: DatabaseHelper.java package ...
- Simple screenshot that explains the non-static invocation.
Here is the code: /* Instance invocation in the memory: */ package kju.obj; import static kju.print. ...