Feeds

IntelliJ IDEA 5.0: can it survive the Eclipse onslaught?

Sometimes less is more

Reducing security risks from open source software

Review The rise and rise of Eclipse is a mixed blessing for developers. There are obvious benefits in the existence of such a high-quality tools platform, free and open source, and seemingly everyone bar Sun and Microsoft has signed up to use it. The downside is the pressure it puts on other independent tools vendors.

It is sad to see Borland’s excellent JBuilder becoming an Eclipse add-in, for example. In all this, IntelliJ IDEA from JetBrains is a notable survivor. IDEA is focused on the automation of common editing tasks. The trick here is to achieve features that improve productivity without being intrusive or annoying, and in this IDEA is remarkably successful.

Shows how IntelliJ IDEA uses modules to support different application types.

Features

IDEA is a code-centric editor characterized by two key features. The first is refactoring. IDEA was among the first IDEs to include refactoring tools, and remains particularly strong in this area, with an extensive list of refactoring, intelligent implementation, and clear documentation. For example, Safe Delete will delete a class or class member only if there are no usages. If there are usages, they are listed for inspection. More complex refactorings include Generify, which attempts to convert code to take advantage of Generics, introduced in Java 5.0, and to remove unnecessary casts. This edition of IDEA includes several new or enhanced refactorings, such as Move Method and Change Method Signature. Careful refactoring is a potent tool for making code more maintainable, and IDEA is the leader in the field.

This screenshot shows an IntelliJ IDEA refactoring wizard.

The other key feature of IDEA is called Intention Actions. JetBrains describes this as, “When IntelliJ IDEA considers that there is something wrong with your code, it suggests an Action to fix it.” For example, you might declare a JFrame before you have imported the relevant swing package. IDEA will pop up a suggestion, and pressing Alt + Enter adds the necessary import statement.

This screenshot shows an Intention Action at work.

This feature is not unique to IDEA. Eclipse has Quick Fix and JBuilder has Error Insight, both of which will also suggest an import in the example given. On the other hand, IDEA takes the concept further, with a huge range of Intention Actions including refactorings and EJB-specific actions as well as error corrections. They really do speed up coding, and are easy to ignore or disable when they are not needed.

If you have second thoughts about any changes, IDEA makes it easy to go back in time. It maintains local history in the background, and choosing Recent Changes from the View menu lists your main actions, with an option to rollback or view the detail in a difference editor. External version control systems are also supported. IDEA works particularly well with CVS and Subversion (new in version 5.0), but also integrates with Perforce, StarTeam and even Visual SourceSafe.

The Power of One eBook: Top reasons to choose HP BladeSystem

More from The Register

next story
NO MORE ALL CAPS and other pleasures of Visual Studio 14
Unpicking a packed preview that breaks down ASP.NET
Captain Kirk sets phaser to SLAUGHTER after trying new Facebook app
William Shatner less-than-impressed by Zuck's celebrity-only app
Apple fanbois SCREAM as update BRICKS their Macbook Airs
Ragegasm spills over as firmware upgrade kills machines
Cheer up, Nokia fans. It can start making mobes again in 18 months
The real winner of the Nokia sale is *drumroll* ... Nokia
Mozilla fixes CRITICAL security holes in Firefox, urges v31 upgrade
Misc memory hazards 'could be exploited' - and guess what, one's a Javascript vuln
Put down that Oracle database patch: It could cost $23,000 per CPU
On-by-default INMEMORY tech a boon for developers ... as long as they can afford it
Google shows off new Chrome OS look
Athena springs full-grown from Chromium project's head
prev story

Whitepapers

Top three mobile application threats
Prevent sensitive data leakage over insecure channels or stolen mobile devices.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
Build a business case: developing custom apps
Learn how to maximize the value of custom applications by accelerating and simplifying their development.