Faruk Akgul

Things I Dislike In IntelliJ IDEA

December 24, 2011 | View Comments

Don't get me wrong. I'm a big fan of IntelliJ IDEA and have been a happy user. I do believe it's the best IDE for Java but I've a very small dislike list;

Let's say I've this class; MyClass. Unfortunately, when I want to create an instance, IntelliJ doesn't autocomplete the generics. It only shows the MyClass part.

Here's an example;

   public abstract class SomeClass<K, T> implements Some<K, T> {
        public abstract void doSomething(K key, Node<K, T> root, Node<K, T> node);

Let's say I've changed the Node part to Node accidentally. Of course, IntelliJ says there's an error, no problem with that. However, its recommendation list is nowhere relevant to project:

  • Change 'root' type to 'java.util.concurrent.ConcurrentLinkedQueue.Node'
  • Change 'root' type to 'java.util.concurrent.LinkedBlockingDeque.Node'
  • Change 'root' type to 'java.util.concurrent.LinkedBlockingQueue.Node'

which are completely irrelevant. In this scenario, problem occurs with the Node class which is in the project, not a Node class from another library. I'd expect to fix the actual Node class in the project as recommendation. If I'm not wrong, Eclipse automatically makes these changes in interfaces and other classes.


blog comments powered by Disqus