Skip to toolbar
4.3 out of 5
13 reviews on Udemy

Free Java Tutorial | Practical JavaFX Desktop Game Tutorial

Build A Desktop Sudoku Game With Java & JavaFX
Ryan Michael Kay
4,679 students enrolled
English [Auto]
Desktop Programming With JavaFX
Java Data Structures, Algorithms, and Best Practices
Algorithms For Solving Sudoku And Other Problems

This tutorial is a free complementary tutorial to my course, Working Class Java. In that course, I used this Sudoku Application as a teaching tool in order to explain how to design, architect, and build Java Desktop Applications. It is highly practical in nature, and the idea is that you follow along in your own IDE with me. Even if there are concepts which do not make immediate sense to you, it is helpful to follow along. Once you are ready to learn about each topic in detail, check out the course.


Introduction & Overview

This video introduces my philosophy behind learning to build applications in general, and where you can find answers to some more specific questions. Check out my other course, Working Class Java, for a comprehensive and detailed introduction to the ideas, structures, and concepts used in this practically oriented course.

Problem Domain Classes

Every new application requires foundational classes to represent the problem domain of the application. In essence, this means that we create some basic classes based on what our application does, and what kind of data it will need to represent. In this lesson, we will create such classes.

Constants Using Enums And Static Variables

Some things change, others don't. For things that don't change, enums and static final variables are a great solution.

Application Container & Execution Point

In this lesson, we will create the classes necessary to launch our application.

Front End Classes

User Interface With JavaFX, Custom TextField, & HashMap

How do you build a User Interface using JavaFX, which has over 81 different TextFields? In this lesson, you will learn all that and more. It turns out that having 81 different references is a bad idea, and I have a much better solution which makes use of a HashMap to keep track of all of our 81 different Text Fields.

Control Logic (Front End Decision Maker Class)

In this lesson, we will write a class which makes decisions for our User Interface, and passes data back and forth between the UI and the back end of the application.

Storage, Build Logic, and Sudoku Algorithms

Computation Logic: Algorithms for Building, Validating, and Solving Sudoku Games

In this video, we will look at various algorithms and data structures for representing and manipulating a virtual sudoku game. This video is tricky and complicated as it turns out that solving and generating Sudoku games is a bit more difficult that you might think.

Build Logic (Dependency Injection)

In this video, we will write the "build logic" of the application. This is the code necessary to wire everything together when the application starts up.

Local File Storage To Persist Game Data

In this video, we will write our Storage class to persist the user's data. We use basic tools from the Java Standard Library to achieve this; no 3rd party libraries necessary!

Acknowledgements & Thanks

Thanks for watching!

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.3 out of 5
13 Ratings

Detailed Rating

Stars 5
Stars 4
Stars 3
Stars 2
Stars 1
30-Day Money-Back Guarantee


2 hours on-demand video
Full lifetime access
Access on mobile and TV

Custom Sidebar

This theme offers completely unlimited custom sidebars down to the individual post and page level. For this specific sidebar:

  1. Go into Theme Options >> Custom Sidebars and create a new sidebar
  2. Go into Appearance >> Widgets and find the new sidebar you created and add widgets (for instance this is a standard text widget)
  3. Go to any page or post and choose the custom sidebar in the layout options
WP Twitter Auto Publish Powered By :