开发者

Critical tools that every Java Developer should have in his toolbelt? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.

Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.

开发者_StackOverflow社区

Closed 8 years ago.

Improve this question

I was trying to compile a list of tools that a good Java Developer should be know of, and keep in his Developer Tool Belt

I can think of a few

  • Eclipse Development Environment - There are other IDEs, but you should know how Eclipse of eclipse.
  • JUnit - Java Unit Testing Framework. Of course there are others, but...
  • ANT
  • Maven
  • Soap UI - for testing SOAP endpoints
  • jrat - Java Profiler. I don't know of other good Java profilers
  • Java Decompiler - For when you just have to know what's in the jar file


The Really Big Index: A list of all content pages in the The JavaTM Tutorial, because you can't know everything.


  • Continuous integration server: CruiseControl, Hudson, etc.
  • Dependency injection: Google Guice, Spring, PicoContainer
  • Slf4J: Simple Logging Facade for Java
  • Mockito: Mocking Library
  • Not Java specific but nonetheless essential: a good distributed source control (Git or Mercurial)


  • VisualVM - for low level memory profiling
  • Eclipse MAT - for high level memory profiling
  • JMeter - for performance testing
  • Mockito, EasyMock, PowerMock - for mocking
  • FindBugs, Checkstyle, PMD - for static code analysis


  • findbugs http://findbugs.sourceforge.net/
  • hudson http://hudson-ci.org/

understanding of all major version control systems like:

  • perforce
  • cvs
  • svn
  • git
  • etc.

and of course the jdk!


  • Hudson, near the top of the list.
  • visualVM - good enough for most profiling needs (and I've heard of a number of Java profilers, but never of jrat)
  • Cobertura or Emma for code coverage


Useful in building your apps quickly: 1. onejar - helps in quickly create executable jar with dependency and deploy for users. 2. Vaadin for building rich UI with ease.


Critical

  • Clean text editor ( Textmate, gVim )
  • JDK ( java, javac, javap etc. )
  • A webbrowser to read the javadocs

Non-critical

All those you mention but s/Eclipse/IntelliJ Idea/g

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜