What would a code project be like without a Pig Latin translator right? 🙂 Ok so maybe it sounds lame but for a coding project this was fun. Also this was my first use of nested classes, as you can see from the Class Designer screenshot. I have to admit this route is nice for smaller programs that aren’t very complicated. To me it seems to keep the program from getting complicated with many class files doing all sorts of things.
So the nested class takes care of taking the first letter of the first and last name, seeing if there’s a vowel, and via conditional operators making a decision on how to translate the name. I also used Read-Only getters / setters on this one.
This was a class assignment where we had to come up with an alphabet aquarium. Sorta like a fish aquarium IRL but just with letters instead of fish. Then I had to animate the letters so they would move around like fish would in the tank. I started getting into is-a has-a relationships with this one. So you will see 3 classes. The AlphabetAquarium class which takes care of the interface tasks, a FishTank class to hold this fish, and a Fish class that creates the fish.
This was fun project messing with the various graphics methods to draw and animate the characters. I’m sure I’ll be coming back and tweaking things later as I learn.
This was my first venture into saving files. Also I’ve been toying around with ideas on user interface design and notifications outside of just regular popup dialog boxes. So I expanded one of my class assignments for a body fat calculator. I wanted to have a logfile to save all of the calculations made in a text file. And I wanted to use a user selected debug mode to show the calculations being made if need be. I had to use 2 sets of calculations based on being either male or female.
For the user interface notifications I had the text turn red if the information wasn’t entered correctly. I also used tooltips so the user could hover their mouse over the red text to see the error and how to fix it. Again I separated the program into 2 classes. One class for the interface tasks while the other took care of the calculations and held the data.