Project

Desktop Tic-Tac-Toe

Challenging
214 completions
~ 40 hours
4.4

After finishing this project, you'll get to know a lot about planning and developing a program from scratch, using methods, handling errors, and processing user input.

Provided by

JetBrains Academy JetBrains Academy

About

Everyone is familiar with Tic-tac-toe. Create a version of this game using the Swing graphics library. Teach a computer to play this game and compete against both your friend and AI.

Graduate project icon

Graduate project

This project covers the core topics of the Java Desktop Application Developer course, making it sufficiently challenging to be a proud addition to your portfolio.

At least one graduate project is required to complete the course.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Create the main program window and the playing field.
Add a status bar and a Reset button and play your friend.
Teach the computer how to play Tic-Tac-Toe. Add a control panel to choose the sides before a game starts.
Add a menu to start a quick game.

Reviews

Eser Tuna Erten avatar
Eser Tuna Erten
5 months ago
I've learned how to implement Swing components such as JButtons, JLabels and how to position them in an application screen. Getting components to reflect the current status of the application and writing algorithms to have robots play tic-tac-toe was instructive.
Mang Sui Sin avatar
Mang Sui Sin
9 months ago
i have learned how to use Graphics2D and how use templete method inside Jframe.
Matt Royster avatar
Matt Royster
1 year ago
I have learned a lot about GUI components and making a computer play against users. This project did allow me to have a good understanding of keeping various models up to date between the visible board and the board for the computer to make moves on.

4.4

Learners who completed this project within the Java Desktop Application Developer course rated it as follows:
Usefulness
4.6
Fun
4.4
Clarity
4.2