Eric Bruno

Dr. Dobb's Bloggers

JavaOne: NetBeans 6.1 with PHP Support

May 04, 2008

I recently spoke with Greg Spora, Technology Evangelist with Sun, and he told me all about the features in NetBeans 6.1 (see http://www.netbeans.org), which Sun announced today. Sun is releasing NetBeans 6.1 in conjunction with JavaOne, and CommunityOne; both of which are taking place this week at the Moscone Center in San Francisco.

The NetBeans 6.1 announcement focuses on two main topics:

1) That NetBeans 6.1 has shipped with a host of new features, fixes, and enhancements.

2) Sun is making available, as an early-access (EA) release, support for PHP programming in NetBeans IDE starting with version 6.1.

NetBeans 6.1 PHP Support

By releasing support early, with the EA release, Sun is hoping to draw the attention of the PHP community. The goal is to provide the community with advanced NetBeans IDE features that Java developers have had for years. The EA release is analogous to the work done for Ruby; EA worked in that case also. For example, community feedback helped to tailor the product into something that was most useful for Ruby developers, and the end result was much better as a release. The same approach is being use for PHP.

When you try NetBeans 6.1, you'll find a basic set of features. It's not as complete yet as it will be, but it's getting there. The idea is to put it front of PHP developers to make it what the community ultimately wants.

Other New Features in NetBeans 6.1

Overall, the development schedule for this version of NetBeans was accelerated due to strong community feedback. Many enhancements were called for, but the biggest issue address was JavaScript support. Let's focus on the biggest enhancements:

1 - JavaScript: With version 6.1, JavaScript is now a first-class language in terms of feature support. It shares the same IDE feature set that Java developers have enjoyed for a while now. For example, when you write JavaScript code in NetBeans 6.1, you get the same Syntax highlighting, code folding, suggestions, intelligent code completion, hints, quick fixes, refactoring support, (and so on) that you've seen with Java. In fact, now Java, BPEL, C/C++, Ruby, and JavaScript all share in these features.

Sun was able to decrease its development time for this support by leveraging work done to support Ruby. In fact, Ruby was originally added through a generalized scripting framework that was implemented in NetBeans some time ago. As a result, future support for scripting and other dynamic languages should come relatively easily.

One feature I found interesting is the built-in awareness of the level of support for JavaScript in different browsers. For example, as you write JavaScript code, the IDE will suggest alternative implementations if it finds compatibility issues with your code. In general, it shows which features are supported in different browser APIs, and guides you to use the ones with the broadest adoption. Of course, you're free to ignore these suggestions (and turn them off) if you're purposely targeting particular browser.

2 - Performance: On average, most users will experience a startup time that is now 40% quicker; an important improvement for most people. The next improvement deals with code size. In the past, NetBeans performance would degrade significantly with files that contain greater than 1000 lines of code. This is now fixed; performance is much better, and much more consistent, for large source code files (this goes for JSP files also - a big offender in the past ).

3 - Database Explorer: It's now easier to register a server, create a database, and start and stop a database instance. Also in this release, as you might expect, there is enhanced support for MySQL, with hooks for MySQL tools from the NetBeans menus.

4 - Rails 2.0: New support for Ruby and Ruby on Rails; specifically Rails 2.0. It's also easier to manage working with multiple versions of Ruby, by project. For example, you can now associate different Ruby versions with different projects within the IDE.

Also included are editor enhancements (i.e. extract a block of code and turn into method), and better hints and quick fixes, for Ruby.

5 - Web Services: In addition to supporting SOAP-based web services, NetBeans 6.1 makes it easier to create and consume REST-based web services in Java as well. Specifically, when consuming REST services, NetBeans makes it easy to get access to third party services that are available over the web

There have also been a host of smaller enhancements made with this release, such as support for ClearCase the Spring framework (i.e. new project support; bean navigation), and Hibernate.

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task.
However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Video

This month's Dr. Dobb's Journal

This month,
Dr. Dobb's Journal is devoted to mobile programming. We introduce you to Apple's new Swift programming language, discuss the perils of being the third-most-popular mobile platform, revisit SQLite on Android
, and much more!