Review Wondrium Programming Course, Java

Date:

Wonderium is a streaming web service that focuses on non-fiction episodes and courses.  A person can watch Series, Courses, and shorts.  There are courses in the areas of Art, Business and Finance, Food and Drink, Health, History, Hobbies Literature, Mathematics, Music, Philosophy and Religion, Professional Growth, Science, and Travel.  Other topics like Engineering and Computer Programming have only a few topics, so they are not listed on the main menu, but they are still there.

Even if you are interests are in the area of Ozwin Casino no deposit bonus, you can still find 8 episodes related to poker on Wondrium.

But let’s look at the Java course.

Wondrium Learning Java Programming

36 hands-on lessons reveal not just how Java works, but some of the many insider tips and tricks programmers use to create and solve problems.

KYIV, UKRAINE - NOVEMBER 25, 2019: partial view of programmer using laptop with Javascript on screen
KYIV, UKRAINE – NOVEMBER 25, 2019: partial view of programmer using laptop with Javascript on screen

The first four lessons deal with installing the Java Programming Language, an IDE (to write programs in), and Android Studio.  I do not know exactly how old this program is, but things change, so it is probably better to just ask ChatGPT how to install Java, the IDE, and Android Studio onto whatever environment you are using.  I am using Ubuntu Linux, so there was not any lesson to demonstrate this.

This is what I ended up installing:

  • openjdk version “11.0.21” 2023-10-17
  • Visual Studio Code (IDE) Version 1.85.1 + Extension Pack for Java v0.25.15 (Extension)
  • Android Studio Hedgehog 2023.1.1

For both Visual Studio Code (IDE) and Android Studio Hedgehog, there are extensions for various programming languages.

Then skip to Lesson 5, where the actual programming begins.  Most of the rest of the lessons are between 10 to 15 minutes.  So you watch the lesson for 10 minutes, and then spend the next hour or two doing the actual programming (and exploring what you learned).  If you click on the “resources” tab you will download a ZIP file.  The ZIP file contains example code for the lessons.

Lesson 5

Every programming language starts out with the famous program “Hello World” or some similar version of it.  Do not skip this lesson, even though it is very easy.  It will help to make sure that your install of Java, IDE, etc. is working as expected.

Lesson 6

In this lesson, the teacher will actually explain in detail what everything in your “Hello World” program is, and why it is needed.  Again, it is simple, but vital that you understand.

Lesson 7

Variables are where you store numbers and strings.  If you did not have variables, your program would be quite boring.

Lesson 8

Now we will manipulate strings using concatenation and other string manipulation functions.  8 Lessons in, and things are still pretty easy.

Lesson 9

Next is boolean and char variables.  And we are not even done with variables yet.

Lesson 10

Numbers are not just numbers.  They are also byte, short, and long.  Who would have guessed that a number could be more than just a number?

Lesson 11

Now we are looking at decimals with floats and doubles.  And no, we are not talking about ice cream floats.  That is your special treat to yourself after you finished lesson 36.

Lesson 12

Operators and Operator precedence.  The magic of mathematics … what would computers be without mathematics.

Lesson 13

Like doing the same thing over and over and over and over again?  Then you will love “WHILE” loops.  But don’t worry, your while loop will not go on forever … unless you messed up your condition statements.  In which case, your program will most likely crash, because it ran out of memory.  But it happens.  Any programmer who says that they never messed up their WHILE loops is either lying or else they are not a “real” programmer.

Lesson 14

“Do I do this or that?”  You need “IF”, “IF-ELSE”, and “ELSE-IF” statements.

Lesson 15

If you have more than just two or three conditions you are testing, then you need a SWITCH statement.  Think of the SWITCH statement, as an IF statement on steroids.

Lesson 16

The DO-WHILE is similar to a WHILE statement.  But in a WHILE statement, the condition is checked first, and then the code within the loop is executed.  In a DO-WHILE statement, the code within the loop is executed first, and then the condition is tested.

Whew!  You just finished the first 12 lessons, and in a lot of programming books, they try to cover all of that within the first introductory chapter.  Some would consider that good, and others would consider that bad.  It depends if you need a slow and steady path to get over the introductory hurdle, or you consider this stuff “eazy peezy” and just want to get to the harder stuff.

Lesson 17

Arrays in Java.  Do not skip over this topic, because different programming languages handle arrays in a slightly different way.  Play around with arrays that contain numbers, arrays that contain characters, arrays that contain strings.  Add items to the array.  Remove items from the array.  Move things around in the array.  How do you add more memory to the array?

Arrays are the easiest of the more complex data types.  That is probably why this lesson is 25 minutes long instead of the previous ones that were less than 15 minutes long.

Lesson 18

Creating Objects in Java.  This is where things really start to get complex.  Which is probably why the next 7 lessons all deal with classes in one way or another.  This one deals with declaring a class, and setting up the overall structure of the class.

Lesson 19

Class Constructors in Java.  This class deals with tell the class what it needs to do each time the class is created (constructor) or destroyed (destructor).

Lesson 20

Methods: Passing arguments, and Returning Values.  Other programming languages call these procedures (does not return a value), or functions (returns a value).

Lesson 21

Java Getter and Setters.  I had to look this one up.  Some programming languages, like PHP, use these terms to refer to variables passed through the web program.  But that is not what Java is talking about.  In Java, Getters are methods in a class that get the value of a class variable.  Setters are class methods that set the value of a class variable.

Lesson 22

Using the String Class as a Reference Type.  The String Class is a built in Java type, but learning how to reference variables is important, because all class variables that you create in the future, will need to be passed to other classes using a reference type.

Computer symbols on monitor
Computer symbols on monitor

This is definitely not a lesson that you should skip over.  This is an area where even experienced programmers can mess things up, and those types of errors can sometime be hard to debug.

Lesson 23

Java Inheritance: Overriding the parent method.  If this is your first time learning an object oriented programming language, this is where you might start to get confused and feel like you have to watch this lesson multiple times before it starts to sink in.  The lesson is 20 minutes long, and the concepts are powerful.  So in terms of syntax, it is easy.  In terms of understanding how it affects your program, is going to be a bit more complex.

Lesson 24

Java Inheritance: Invoking the parent method.  Again, the lesson is only 9 minutes long.  The syntax is not complicated, but understand how the syntax affect the functionality of your program, is a bit more complex.

Lesson 25

The Java Class Library.  This is an introduction to the different classes that come with Java by default.  To use these, you do not need to worry about if you are programming on Mac, Windows, or Linux.

Lesson 26

Java ArrayList and Object-oriented Pros and Cons.  This lesson is talking about the pros and cons of object oriented programming.  Java is a 100% object oriented programming language.  Golang is an example of a programming language that is new, but has no object oriented functionality within the language.  When programming in C++, you can either program as if there is no object oriented programming (use mostly C equivalent coding) or you can use the C++ class functionality.

Different projects will have different requirements.  As you get more experienced, you will get a feel for when you need to use an object oriented programming language, and when a different type of programming language will meet your needs.

Lesson 27

Java Swing: Create a simple user interface.  The next 6 lessons deal with the Java Swing Library.  This is a library that will allow your program to run on a Mac, Windows, and Linux computer system.

However, JavaFx is successor to Java Swing and provides higher and improved set of features for application development. Swing is getting obsolete with time, so, better go with JavaFx.

In other words, just look at what the lesson is trying to teach, and use other sources to find out how to do the same thing using JavaFX.

Most likely, you can take the Java Swing code, put it into ChatGPT, and ask ChatGPT to convert it to JavaFX code.  This type of questions, ChatGPT handles well, because … well, programmer wrote the program, so they will make sure that the program can handle what they need it to handle.  Yes, even computer programmers can be self-centered sometimes.

Lesson 28

GUI: Adding buttons and Event Listeners.  Use ChatGPT or other sources to find out how to do this with JavaFX.

Lesson 29

GUI: Border Layout.    Use ChatGPT or other sources to find out how to do this with JavaFX.

Lesson 30

GUI: Flow Layout.    Use ChatGPT or other sources to find out how to do this with JavaFX.

Lesson 31

GUI: Box Layout.    Use ChatGPT or other sources to find out how to do this with JavaFX.

Lesson 32

In this lesson, you will create an example GUI project.  But the example will be written using Swing, and you will need to complete the project using JavaFX.

Lesson 33

Now we are starting to use Java to create an Android project. A lot of Android applications use Java.  Since Android was officially launched in 2008, Java has been the default development language to write Android apps.   While Java has its fair share of faults, it’s still the most popular language for Android development since it runs on a virtual machine.

This is an introductory tutorial on how to do your first Android application.  I do not know of a lot of a Java applications that are written in Java in 2023 (except for Mindcraft), but there are a lot of Android applications written in Java.

Lesson 34

Android Project Structure.  This is important, because you have to know how to package your application, so it can be transferred and installed onto an Android device.

Lesson 35

Android EditText and strings.xml file.  This lessons deals with the user adding data through your application, and where the data is stored, and later retrieved.

Lesson 36

In this lesson, you are creating your final Android Project, from start to finish.

Summary

Java is one of those language where if you asked me 20 years ago, I would have said that Java was a dead language. But with Android and mobile device revolution, Java is alive and kicking and it is not going anywhere.  Even though you can create Android applications in other languages, most of them are just wrappers around the original Android SDK libraries that were designed to run with Java.

Java: Historically, Java has been the traditional language for Android app development. Many Android applications, especially older ones, are written in Java.

Kotlin: Kotlin is now the official language for Android app development. It offers concise syntax, improved null safety, and interoperability with Java, making it a popular choice for building modern Android applications.

C++: While not as common as Java or Kotlin, C++ is sometimes used in Android development, particularly for performance-critical tasks or when integrating with existing C++ code.

C# (Xamarin): Xamarin, a cross-platform framework, allows developers to use C# for Android app development. While it’s not as mainstream as Java or Kotlin, some developers choose Xamarin for its code-sharing capabilities across multiple platforms.

Android EditText and strings.xml file.  This lessons deals with the user adding data through your application, and where the data is stored, and later retrieved.

- Advertisement -