Skip to Content
Jeremy Persing

2 mins read


Skymail 3000

This is the process of how I built a cross platform game in Java and some of the things I learned.


Overview

Skymail 3000 was a game that I had to build in an Object Oriented Programming course. We used Java and the cross platform development framework Codename One, which I wouldn't recommend. The main goal of the game is to hit each skyscraper in a sequential order without running out of time, taking more than 100 damage points, or losing fuel. A user receives damage points when they hit other helicopter and birds. The other helicopters will employ different strategies to try and sabotage the player. These can include coming directly after the player, or moving back and forth between the last two skyscrapers in hopes to block the player from reaching the end skyscrapers. There are 8 levels to the game, and after each level gets beat, more in game objects will appear and the speed of the game increases. If you want to check out the source code, here's a link to the Github repository https://github.com/JeremyPersing/SkyMail3k.

What I Learned

  • Abstraction and Interfacing
  • Design Patterns
  • Inheritance
  • Encapsulation
  • Searation of Concerns
  • Hollywood Principle
  • DRY
  • KISS
  • Principle of Least Astonishment
  • Data hiding
  • Use descriptive variable names
  • Comments should typically describe why the code is doing what it's doing, not what it's doing
  • Practical implementations for data structures
  • Building components with high coupling and loose cohesion
  • How to create simple assets
  • How to make assets move based on user input and time