Java Coding & Concepts with a Game (Oracle MOOC)

Offered by Oracle,
Java Coding & Concepts with a Game (Oracle MOOC)

This course utilizes a game-based learning methodology to build your understanding of key Java programming concepts and prepare you to think through coding challenges in ways that more-passive forms of learning simply can't.

Instead of relying on bewildering walls of code or boring technobabble slides that'll put you to sleep, this course encourages you to learn actively through play and exploration.

Topics include:
Week 1: Object oriented thinking and class design
Week 2: Static vs instance variables
Week 3: Inheritance
Week 4: Lambda expressions
You’ll also go behind the scenes of the game Java Puzzle Ball to understand development practices and the cloud tools Oracle offers to accommodate developers.

Course Approach
Each week, one new lesson is published online. Lesson materials are available 24/7 until the end of the course. You can access the material any time you want. A lesson consists of:

  1. Playing a series of puzzles: As you play Java Puzzle Ball, you'll start to make observations and build a strong conceptual understanding of key Java programming concepts.
  2. Watching short video lectures: Lectures contextualize your observations in terms of Java code. We've found that this is where everything really "clicks" for students after playing.
  3. Exploring code labs: This is your chance to apply your understanding and knowledgeably edit Java code.
  4. Taking a short quiz: Quizzes assess your learning and measure your progress towards earning a course completion award.
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Program Arcade Games - Learn Computer Science (Simpson College) Other Providers
Simpson College

Program Arcade Games - Learn Computer Science (Simpson College)

This is a first semester course in learning how to program. Are you here because you want to create your own games? Excellent! But you might soon find that this looks like work. We all know we'd rather skip work and go farming for gold in WoW or Eve or some other game, right? So why learn to program? What does a person get out of it?

Self Paced
Self-Paced
Introducción a Java (Coursera) Coursera
Universidad Nacional Autónoma de México

Introducción a Java (Coursera)

Me llamo Elisa Viso y una de mis pasiones es la de programar y enseñar a programar. El lenguaje Java es uno de los que más me ha gustado en mis 45 años que llevo programando. Si bien te podrá parecer un poco complicado empezar a programar en Java, una vez que cubras los conceptos básicos verás qué rápido se avanza. Java, como todos los lenguajes de programación bien hechos, te dejan hacer cualquier cosa (algunas de ellas con más trabajo que en otros lenguajes y otras casi directamente de cómo piensas la solución al problema).

Nov 30th 2026
5-12 Weeks
Programming Fundamentals (Coursera) Coursera
Duke University

Programming Fundamentals (Coursera)

Programming is an increasingly important skill, whether you aspire to a career in software development, or in other fields. This course is the first in the specialization Introduction to Programming in C, but its lessons extend to any language you might want to learn. This is because programming is fundamentally about figuring out how to solve a class of problems and writing the algorithm, a clear set of steps to solve any problem in its class.

Nov 30th 2026
4 Weeks
An Introduction to Interactive Programming in Python (Part 1) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 1) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Nov 30th 2026
5-12 Weeks
Introdução ao Desenvolvimento de Aplicativos Android (Coursera) Coursera
Universidade Estadual de Campinas - UNICAMP

Introdução ao Desenvolvimento de Aplicativos Android (Coursera)

Este curso tem como objetivo propiciar um primeiro contato com a Programação para Dispositivos Móveis que operam na plataforma Android. O Android Studio será utilizado como ambiente de desenvolvimento desde o início do curso e você receberá dicas de como obter ajuda quando alguma tarefa estiver consumindo mais tempo do que o necessário. Ao solucionar problemas por conta própria, você irá adquirir a autonomia necessária para concluir projetos de programação.

Nov 30th 2026
5-12 Weeks
Programming Reactive Systems (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Programming Reactive Systems (Scala 2 version) (Coursera)

Reactive programming is a set of techniques for implementing scalable, resilient and responsive systems as per the Reactive Manifesto. Such systems are based on asynchronous message-passing, and their basic building-blocks are event handlers. This course teaches how to implement reactive systems in Scala and Akka by using high-level abstractions, such as actors, asynchronous computations, and reactive streams.

Nov 30th 2026
5-12 Weeks