Проект: Крестики-нолики на Javascript

В курсе по Ruby у вас уже был шанс создать эту игру для проверки ваших навыков в ООП. И если вы ее сделали, то сейчас вам будет проще, так как предстоит реализовать ее для браузера.

Крестики-нолики

Помните эту игру? Если нет, то посмотрите в Википедии. Здесь будут два игрока, игровое поле, проверка на выигрыш после каждого хода... Приступим!

Ваше задание

Необходимо создать игру, где два игрока (человека) играют друг против друга.

  1. Создайте для проекта репозиторий на Github.
  2. Создайте пустой документ HTML.
  3. Подумайте, о том, из чего должна состоять игра. Какие понадобятся объекты и функции? Лучше сейчас подумать несколько лишних минут, чем потом переделывать программу, теряя часы впустую.
  4. Создайте объект доски 3х3 в JS, которая содержит текущее значение в каждой клетке ("X", "O" или " ").
  5. Создайте функцию render(), проходящую циклом по этому объекту, и создающую соответствующие элементы HTML. Стилизуйте их как настоящую доску для игры в крестики-нолики.
  6. Создайте логику игры (здесь мы не будем давать много подсказок). Когда пользователь кликает на пустой клетке, она должна отобразить символ текущего пользователя. Это можно реализовать, обрабатывая событие клика на соответствующем div. Может быть полезным присвоить каждому div'у атрибут data или id (на основании позиции div'а), чтобы вы могли его идентифицировать в вашем коде JS.
  7. Также игра должна определить момент окончания - если кто-то выиграл, или же больше некуда ходить. В случае окончания игры, выведите соответствующее сообщение на экране.
  8. Если желаете - замените буквы "X" и "O" произвольными изображениями.
  9. Отправьте решение на Github.

Решения студентов

Поделиться уроком: