Project

Battleship with Java

Challenging
654 completions
~ 22 hours
4.4

Develop your own version of the popular "Battleship Game" to play with your friends!

Provided by

JetBrains Academy JetBrains Academy

About

Writing games is probably one of the most exciting tasks in programming. While creating your first console game, you will learn about processing user input and handling errors. You will practice concepts frequently tested in technical interviews at top tech companies.

Graduate project icon

Graduate project

This project covers the core topics of the Introduction to Java 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:
Place and arrange all the ships on the game field.
Try shelling your own ships to test the new guns.
Arrange your ships, hide them behind the fog of war, and fire at a random position.
Denote the conditions for the end of the game.
Make your game more interesting by adding another player with their own field.

Reviews

User 637262902
2 weeks ago
What I Learned:Java Core Concepts: Gained hands-on experience with fundamental Java features, including string manipulation (StringBuilder, substring), control flow, and Object-Oriented Programming (OOP) concepts like class hierarchies, polymorphism, and dynamic method dispatch.Modern Java & M ...
Ivan Selikhov avatar
Ivan Selikhov
4 weeks ago
It`s little bit broken because it allows to shot into single cell twice or more. The old version of it , which i finished 4 years ago was better
Dmitry Kabanov
1 month ago
- I have learned how to use `Enum` classes to make code robuster by using predefined possible set of values- I have learned how to separate logic and representation in a console application (using the Model-View-Controller approach)

4.4

Learners who completed this project within the Introduction to Java course rated it as follows:
Usefulness
4.6
Fun
4.4
Clarity
4.3