intellij-shop (Photo credit: dibau_naum_h) |
I have been spending some time on learning Java (7), and I was fortunate enough to grab a copy of Jay Bryant's book, Java 7 for Absolute Beginners. There's a bit of contradiction here... I surely am a beginner in Java, but I have known C# for a decade now, and the pleasant surprise I got when I started reading the book!
The 2 programming softwares were very identical, I could say 99%, in form and substance. And of course, going through the history of how they came about, why woulnd't they be? It is just that they originated from two rival camps, but the structure and capabilities given to them, I believe were at par.
The curiosity came about while job hunting: there were many job ads that indicated the need for a Java developer, but in parenthesis, C#.NET are welcome to apply. Took me a few job ads to realize the obvious, but then again, not immediately.
You see, I shun away from Java years ago, even though I was using native C in my school days. That was due to my poor experience with UNIX, but then again, it was not a mandated skill, and when I was starting to learn UNIX, I just didn't have a nice encounter with the OS, being already exposed to DOS, which is more verbose when it comes to its commands. Then I came across BASIC, then QBASIC. This really put a wedge between me and UNIX, the power and capability of which I will never know. I simply can't 'grep' the commands, and with nobody around to guide me, it became 'awk'-ward. I mean, I can read and learn by doing when I can, but I simply didn't get that chance - which I got with DOS and BASIC.
So I was quite surprised when I finally got to learn Java; I was at home, very much at home. Even so, the abstract-ness of the two software became more familiar to me. That was good, I never skipped a page, and the things that I would have forgotten in C#, the terms, the methodologies, they were refreshed in my memory, and what's more, I am learning Java!
Now, being so at ease with Visual Studio IDE made me a bit frustrated with the IDEs that were available for Java development. I have been trying to put my hand in on Android programming, and I started with Eclipse IDE, which is too much for beginners. Just look at the list in their website, and it would be too much, so overwhelming, really. As for Android, I have also tried Android Studio, by Jet Brains.
There is also NetBeans. The feature that I was looking for in Eclipse and NetBeans is the feature that I become accustomed with in Visual Studio, two actually, namely: intellisense and auto-completion. Now, I am not saying that Eclipse and NetBeans don't have these features, but the behaviour isn't what I wanted. Eclipse would automatically add ".*;" after pressing enter. That isn't the case for NetBeans.
Oracle offers JDeveloper IDE, but sadly, you have to be really a geek to make it run: I can't even install it! I've been doing softwares since 1996, but I have chosen a motto that if anything should work, it should be easily usable, even by the dumbest person.
There are many other Java IDEs available, but one IDE I have tried and I will keep: Jet Brains' IntelliJ. Fortunately, they have the Community Edition, which is free, and while being a smaller version of the Ultimate edition, the feature is not. Of course, the intellisense and auto-completion features are very close to what you get in Visual Studio.
So now at least I have two options for Java IDE: NetBeans and IntelliJ. Both free, both having the intellisense and auto-completion features, less the irksome behaviour.
Till then!