An Introductory Guide to Java

Java. You might’ve heard of it. It’s largely prominent in the computing world and is used for a wide variety of things. You could be a gamer, and heard of it through games like Minecraft; you could own an Android phone and know of it through that, or you could just know of it because of those pesky .jar files that you keep downloading off of the internet. It might also make you think of coffee.

See, Java is versatile. It’s different to languages like Python or JavaScript. Yes, unlike the name implies, Java is separate from JavaScript, one being used for most back-end development, and the other for interactivity on web pages.

Java, coincidentally, was also the first new language I learnt at university for the first year of my degree. And I quite enjoyed it, the two modules I did of it, despite never having done any kind of object-orientated design.

That’s what Java is, by the way. An object-orientated language. The definition for that is generally something like: “An object-oriented language is a computer programming language that revolves around the concept of an object.” This makes sense grammatically, but that confused me when I first started out learning it.

What exactly is an object-orientated language?

Honestly? It’s just something that I think people understand as they progress through learning the language. Going from Python to HTML to Java was a bit of a learning curve, but it was one I got used to.

IDEs and Code Editors

Of course, before you start, you need something to code Java in. Here is a list of various IDE’s that you could use:

There is no right or wrong answer to the question of What IDE do I use? . It’s a matter of preference. During my lectures, it was suggested to either use BlueJ or Eclipse. BlueJ for those who wanted something more simple to use, Eclipse for those who wanted something more advanced. We did have the option to use one outside that list, but it was explained that it might be harder for the lecturer to assist us.

I’d recommend trying a few until you find one you like!

Eclipse

This is the IDE I have the most experience with. I don’t have many negative things to say about it. It does what it says on the tin. With Java support right off the bat, it’s not difficult to use at all if you want to have just basic Java support. It has a wide range of settings, from the useful “Generate Getters and Setters” which creates methods that get and set the contents of a variable, to the “Debugger” which allows you to step through your code.

Eclipse IDE
Eclipse IDE as it first appears

Don’t be put off by the fact that it starts with light mode. If you’re like me- a self-proclaimed light-mode snob- there is an option for dark-mode. Simply go to Window > Preferences > General > Appearance, and then change the theme to whatever your preference is. Mine is just the simple “dark.” option.

See? Simple.

Now, it gives you a bunch of options right from the start, from configuration settings to an overview of features. I’ll stick to being brief as I will be here for a while going through them all, but if you want to look at the features, look here: Eclipse – Tips and Tricks.

My only gripe about Eclipse is that I used to have problems on my old laptop, having frequent crashes whenever I tried to compile a program. However, I don’t know how much of this was Eclipse, as it was my old laptop.

BlueJ

This one, I will disclaim, I have a little experience with, and I don’t like. I have nothing against the IDE, but for my tastes, with its multiple tabs to edit a program, I find it annoying to use.

With that disclaimer out the way, let’s talk about BlueJ‘s benefits. It is remarkably simpler to use than Eclipse, especially for beginners, but lacks many of Eclipse’s more advanced features, such as the aforementioned “Generate Getters and Setters.” If you are interested in learning Java BlueJ would be the way forward at the start.

ABOUT THE AUTHOR

Caitlin Sykes

Caitlin is a student currently studying for a computer science degree at Dundee University, Scotland. In her spare time, she likes reading, writing, gaming, crafts and socialising.

Sources

Object-Orientated Design Definition

Topics:

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.