My Favorite IntelliJ IDEA Features

posted by Roberto Cortez on
tags: ,

I have been a long time user (and customer) of IntelliJ IDEA. I think I have started using it around 2005 or 2006, version 5.0 at the time. I was an Eclipse user back then. A few of my colleagues recommended it to me, and at first I was not convinced, but after trying it out I was impressed.

Now in 2014, IntelliJ IDEA is still my IDE of choice. The intent of this post is not to start an IDE war, but to focus on a few of IDEA features that sometimes other IDEA users are not aware of.

Darcula Theme

The Darcula Theme changes your user interface to a dark look and feel. Well, maybe this is nothing new for you, but I would like to point two major advantages. First, it causes much less stress to your eyes. Give it a try! After a few hours using the dark look if you switch to the default one again you’re probably going to feel your eyes burning for a few minutes. Second, if you’re a mobility addict and you’re always running on battery, the dark look can also help your battery to last longer.

IntelliJ Darcula

Postfix completion

Postfix completion is the feature that I always wanted and I didn’t even know it. Postfix completion allows you to change already typed expressions. How many times all of us have cursed for having to return back to add a missing cast? Or because we actually wanted to System.out the expression? Well, Postfix completion fixes that.

For instance for the System.out, you type the expression:

someVar

You can now type:

someVar.sout

And the expression is transformed to:

System.out.println(someVar);

Check this awesome post in IntelliJ Blog for additional information about Postfix completion.

Frameworks and Technologies Support

In the Java world, you have a lot of frameworks and technologies available. Most likely you will come across to many of them in your developer work. Sometimes, it’s a nightmare to deal with the additional layer and the required configuration for everything to work correctly.

Look at Maven for instance, it’s a pain to find which dependency to import when you need a class. IDEA Maven support, allows you to search for the class in your local repository and add the correct dependency to your pom.xml file.

Just type the name of the class, press Alt + Enter and Add Maven Dependency:

intellij-maven-dependency-add

Pick the library you need. It’s added automatically to your pom.xml.

IntelliJ Maven Dependency Added

You have support for Java EE, Spring, GWT, Maven and many others. Check here for a full list.

Inject Language

With Inject Language, it’s possible to have syntax, error highlighting and code completion for a large number of languages into String literals. I use GWT a lot, and this allows me to be able to write safe HTML into the String HTML parameters of the API, like this:

IntelliJ Inject Language

Other examples include, SQL, CSS, Javascript, Groovy, Scala and many others. Try it out by yourself by pressing Alt + Enter on a String statement and then Inject Language.

Presentation Mode

Did you ever had the need to make a presentation about code using your IDE and the audience is not able to see it properly due to font size? And then you have to interrupt your presentation to adjust it. Sometimes you don’t even remember where to adjust it. Wouldn’t be easier to just have a dedicate presentation mode? Just go to View menu and then Enter Presentation Mode option.

Conclusion

I do believe that choosing an IDE is a matter of personal preference and you should stick with the one you feel more productive for the task that you have to complete. I still use Eclipse when I have to deal with BPM stuff.

Some of these features also exist on the other IDE’s, but I have the impression by chatting with other developers that they don’t know about their existence. Explore your development environment and I’m pretty sure you will learn something new. I’m always learning new stuff in IntelliJ IDEA.

Missing a feature you love? Feel free to post it in the comments section!

Comments ( 4 )

  1. ReplyPaulBGD

    Fully agree with all of these. This isn’t even a full list of everything great about IntelliJ. For instance, my favorite feature is being able to execute SQL in the IDE. It really brings things together for my type of coding.

    • ReplyRoberto Cortez

      Hi Pauk,

      Thanks for reading! Yes, there are many other cool features, but I wanted to keep the post short. Maybe I can write a part 2 in the future. BTW, I also love all the SQL and JQL support 🙂

      Cheers,
      Roberto

  2. Replyboris_pavlovic

    thanks for the presentation mode trick

    it’s really cool

Leave a reply

Your email address will not be published.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>