Why NetBeans IDE 6.9 is An Awesome Editor
Earlier today the release of NetBeans IDE 6.9 was announced. After several beta builds and release candidates the final version of NetBeans 6.9 was released around 10:30 AM CEST. In this blog we’ll look at several new options present in NetBeans 6.9. The focus will be on PHP or web development related options since those are the ones we use most ourselves. Some of the great new options include the following, which will be explained in more detail later:
- PHP Zend Framework support
- New formatter with many formatting rules
- Refactoring and find usages for CSS and HTML-like languages
- INI files support available
About half a year ago a remarkable event took place. All three developers of ThemePartner switched their IDE to NetBeans within two days. Each of us three was using a different IDE at that time, and like most developers, we were defending it pretty fiercely as being the best out there. What caused us to switch from our beloved IDE to NetBeans in less than 48 hours? To explain that properly, we should have a look at the IDEs and text editors we were using before NetBeans:
Zend Studio 5 (commercial): Zend Studio 5 was a great product in terms of PHP development related options, and general usability. Options such as code completion, projects and syntax checking took our PHP development capacities to a whole new level.
Zend Studio for Eclipse (commercial): in our opinion these were inferior releases compared to Zend Studio 5. Despite having several new options and being built on the Eclipse engine, it took an enormous hit in performance. For example: completing a single PHP function name could take up to several seconds, which made code completion a virtually useless option in these releases.
Crimson Editor (open source): my personal favorite a couple years ago. It was (and still is) a superlight editor that actually fits on a floppy disk! Despite missing several interesting features, it generally took care of the job. Considering there was only one minor release in the past six years, and the system requirements speak about Windows 95, I do not see a bright future for this editor.
Dreamweaver (commercial): the former favorite code editor of our designer and front-end developer. Mainly the completion of HTML and CSS tags created a strong liking for this product. However, its commercial nature and bloated application style eventually were two of the main reasons to step away from this product.
Notepad++ (open source): despite not having ‘the looks’ for ‘the big name’, this is one of the best text editors out there. It is extremely lightweight, fast, stable and available in over 10 different foreign languages. What we personally love most about this product is how it handles character encodings. Even when there is no explicit notion of character encoding in the document, Notepad++ correctly identifies which character encodings is used. In a world that is becoming more international every day, this is an important feature that many other text editors out there lack.
And then there’s NetBeans…
- Superfast loading: to give you an idea how fast: the screenshot of the loading screen you see above actually took me three times to capture. Yes, it is that fast!
- PHPUnit: NetBeans comes with integrated PHPUnit support. Creating a unit test for a file takes only a couple clicks, and you can link the test to the file so you can easily retrieve and edit it later.
- Subversion: there is an integrated Subversion client in NetBeans. This means you can commit, update, merge, revert and to all the other things you want with SVN without leaving NetBeans.
- Local history: NetBeans automatically keeps a local history of all the files you save. That way you will never lose a single edit you made to a file within the period you specified to keep a local history for.
- File diff: comparing two files to each other feels intuitive and user-friendly. Just take a look at the screenshot below, and you will immediately know what changes I made to the file.
What is new in NetBeans 6.9 for PHP
- PHP Zend Framework support: which brings great new features such as the possibility to navigate from an action to a view and vice versa.
- “Overrides/Implements” and “Is Overridden/Implemented” annotations: NetBeans can now display a special notation besides a declaration of a method to mark it as being an override or being overridden by another method.
- New formatter with many formatting rules: Version 6.9 allows you to customize virtually every whitespace, curly brace, parenthesis, declaration etc. that you want. If you don’t like the way your code looks, change it!
- Refactoring and find usages for CSS and HTML-like languages: with the latest release of the IDE you can now refactor your CSS. It’s even possible to do this on a project wide basis if you want to.
- Code completion and hyperlinking for id and class selector attributes: code completion allows you to complete an ID or class selector which are defined in any file connected to the one you’re editing.
- Values of Constants: you can now view the value of the constant in both the navigator window in the code completion window. This applies to both global constants and class constants as well.
- INI files support available: INI files can now be edited with syntax highlighting and checking in NetBeans. This is an interesting feature because many packages rely on INI files for their configuration.
With this new release NetBeans means proves once again that it is a superior IDE for editing PHP files and coding in other web languages. Aside from all the major improvements listed above I already noticed that NetBeans has fixed two relatively small issues that have been bothering me in version 6.8.
The first fixed issue is that now it’s possible to click away the initial sub window in the version output. The second is that is now finally possible to click next to line numbers and drag your mouse up or down to select specific lines. This was a feature present in Crimson Editor and Notepad++ for years and I really loved, but was not present in NetBeans until now. Considering I have been using NetBeans 6.9 for less than a day now, I am sure I will find many more improved features along the way!