I began learning the Java programming language back in my sophomore year in college in 1997. At the time it was just getting off the ground. It had new versions coming out pretty quickly and they kept deprecating api calls from earlier versions. This made it really hard to learn and to reuse code over time. Which was actually the big selling point of Java, “write once, run anywhere”.
Over the years I used it here and there. I developed some Java applets for some webpages, but didn’t really develop anything big using it. I kept up with it for a while, but then stopped following it closely. I came across many applications written in Java in my work places. Some were very rudimentary, but some were really well-developed and polished applications. So from time to time I would see what was new.
Since my main job duties were geared more toward system administration, I didn’t do much development work. So my interest in anything to do with development started to wane. As I mastered my craft I realized how much I actually enjoyed development work and started to pick it back up. The latest craze was developing apps for the iPhone.
So I started learning iPhone programming which evolved into iOS programming in Objective-C. As the mobile phone market has matured, the Android OS has really taken a large share of the market. That peaked my interest in writing applications for both. I then looked into how to develop for the Android platform. When I checked it out, they used Java. Fortunately when I started back into it I found the basics were the same so I picked it up again pretty quickly. Of course I had to learn the new api calls and the specific ones for mobile devices.
Then recently I was presented with an opportunity to build a desktop application. I began thinking of what language I wanted to use for development. It would have to be able to run on Windows, but I don’t have Visual Studio. I also didn’t want to spend the money to get it especially since I wouldn’t have the need for it that often. So I decided that I would write it in Java. That way I could also make sure it runs on the Mac OS.
I figured if I was going to write a full-scale desktop application I would need to read up on creating the GUI. I had previously learned that Java Swing would serve my purpose. As I read up on what would be best, I saw that they were now pushing JavaFX. At first this seemed like something just for web development, but I saw that it was being targeted for both the desktop and web.
The latest version seems pretty polished and with the JavaFX Scene Builder, it makes it a snap to set up the GUI. Now I just need to learn how to connect all the GUI elements to the corresponding Java code. It doesn’t seem like it will be hard to learn. So I’m sure as I develop this application I will create posts and maybe some tutorials to help others out who are learning.