Showing posts with label Java version history. Show all posts
Showing posts with label Java version history. Show all posts

25 October, 2014

Java SE 7 Programming Essentials - my 2nd Java book

English: The cover illustration for the Java P...
English: The cover illustration for the Java Programming book on Wikibooks (Photo credit: Wikipedia)
25-October-2014


About a week ago, I finished reading my 2nd book on Java programming - Java SE 7 Programming Essentials, authored by Michael Ernest. It was basically written for a beginner, but one who is aiming for an Oracle certification, the OCA Java SE 7 (Oracle Certified Associate, Java SE 7).

I have been doing software development since 1996, using PROMIS and VMS, and the very first Windows, and DOS, etc., and I have used .NET in all of my latest applications, but I would admit that I still picked up a lot of fundamental knowledge from this book.

I've come across much of the same topics in another book, C# in Depth, but in Java SE 7 Programming Essentials, they were presented for beginners. Thus, the detailed explanation, which is easy to grasp.

I had to admit that the modifiers was one of the things that became clearer to me, and I am now more aware as to why a class or method is declared public, and not private, or if no modifier is used, what the default behavior is, etc. Very basic, right?

Inheritance and composition is another thing that I was refreshed on, and the use of the 'this' keyword, especially when using inheritance, where properties are also passed down.

Constructors were also discussed, and I learned how you can create your own constructor.

Then there is also the topic on interface, and when it becomes a limitation. Followed by enumeration.

But the one thing I like very much, which I have been looking for so long, is how he presented the acquisition of a business, which needed the merging, or enhancing of the acquired company's business system. Very simple, but that is what I have been looking for - creating your own, and integrating into an existing simple that is built differently - without breaking each other.

Indeed, doing software development is one easy task, but creating a code that is optimized and compact, easy to maintain, and is in all aspect of the highest standards - that is one tough goal, a hard target. But then again, how can you score if you don't have a goal?

Aim high, and hit the mark!

That's what I'm doing now. Patience, and I will hit the mark.

Till then...

20 March, 2014

My bet on Java IDE

intellij-shop
intellij-shop (Photo credit: dibau_naum_h)
20-Mar-2014

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!

Enhanced by Zemanta