Легенда
В компании «Инкилевич и сыновья» проходят постоянные соревнования между коллегами для укрепления корпоративного духа. Работают в основном IT-специалисты со сложными задачами. Им хочется простую по механике игру, в которой они могли бы разгрузить мозг и посоревноваться друг с другом.
Цель
Создание игры крестики-нолики.
Задача
Необходимо создать базовый интерфейс самой игры, прописать всю её механику, добавить реальных игроков, компьютерного игрока простой сложности, компьютерного игрока сложной сложности, добавить тесты, провести турнир между разными игроками и собрать статистику.
Инструменты
- JComponent — класс в Java для реализации графических визуализаций.
- JUnit — фреймворк для тестирования на Java.
- Java core — базовый функционал Java, который позволит нам создать игру. Включает: Exceptions, Collections, OOP, Random, Scanner, PrintWriter.
Этапы
<aside>
1️⃣ ЭТАП 1 — СОЗДАНИЕ БАЗОВОЙ МОДЕЛИ ИГРЫ.
</aside>
- Создаём класс Board, который будет отвечать за состояние доски.
- Создаём интерфейс Player, который будет описывать возможности игрока.
- Создаём реализации нескольких Players (HumanPlayer — реальный человек, различные AIPlayers — разные искусственные интеллекты) .
- Создаём основной класс, в котором будет проходить игра и в котором будут осуществляться взаимодействия всех сущностей.
<aside>
2️⃣ ЭТАП 2 — РЕАЛИЗАЦИЯ «МОЗГА» ИГРЫ.
</aside>
- Придумываем способ хранения игровых ячеек в классе Board (можно с помощью массива или любой подходящей коллекции).