Ability to build apps outside of the IDE using Ant, no special action ("export to Ant") is required

Fully integrated support for unit testing (JUnit)

User sources are presented in the context of their project in a logical way

The user can work with multiple projects at the same time

All of the above is there out-of-the box, no special setup isrequired from the user

Description:A completely new project system based on Apache Ant, a proven de-facto
open source standard build tool for developing applications using Java
technologies. This new system will have an open architecture, which
third-party modules can extend to support current and future types of
java applications. NetBeans will include project types for J2SE desktop
and two-tier web applications (JSPs, servlets, tag libraries) out of the
box. Users will not have to fear of being locked into a proprietary
project or build system. The usual users don't have to know Ant to use
the system, but the full power of Ant is accessible to the advanced Ant
users.

Description:The new project system including the Web Application project type
(described above) is the major feature for Web Application developers.
It will allow developing applications using natural and practical source
structures, more easily manage libraries and provide more integrated
build capability for web applications including war archive packaging.
NetBeans 4.0 will also have extended support for both the J2EE 1.3 and
J2EE 1.4 standard. Additionally, NetBeans 4.0 will contain enhancements
in the areas of JSP editing, deployment, debugging, server management,
support for the latest Tomcat and others.

Solves device fragmentation by enabling code development for device configurations

Integrated obfuscation and optimization support

Over-the-Air (OTA) download testing

Description:J2ME Development Support lets users write, test, and debug
applications for Java technology-enabled mobile devices. It integrates
support for MIDP 2.0/CLDC 1.1 and code obfuscation with the new NetBeans
4.0 projects system This release simplifies coding with templates for
MIDlet and MIDlet suites, and provides code completion against J2ME
packages. You can integrate third-party emulators and create device
"configurations" for a robust testing environment.

Description:Core Debugger is an important part of the IDE, that is being
extended by many other modules such as JSP debugger. New Debugger APIs
will be a major improvements in terms of architectural extensibility,
overall maintainability, and testability, as well as providing a more
reliable threading model and full JSR45 support.

In addition to that, there are many new features to enable more
productive complex apps debugging, such as step filtering, threads &
callstack views filtering, as well as allowing threads to stop at
breakpoints independently. Debugger will also support the new JDK 1.5
language features, so it would be possible to use new language
constructs in writing expressions for watches and conditional
breakpoints.

Multiple views/editors per object: the user can easily switch
between different views of a single object (for example java
source/visual designer for a GUI form, raw XML/visual editor for
deployment descriptor), no need to open new window for each view
and searching for them all the time