Привет, $username !
Твоя задача написать API для игры в пятнашки.
- Хранение пользователей (подойдёт коробочное от laravel)
- Создание и хранение игр, для упрощения мы не будем оперировать картинками, только символами
- Решение созданных пользователями игр
Для реализации функционала сервиса предлагается реализовать несколько API методов:
В запрос МОЖЕТ передаваться строка из 15 символов, считать, что эта последовательность является отсортированной корректно.
Если строка не передана, она должна сгенерироваться на сервере случайно.
В результате пользователю приходит в ответ перетасованное поле и id созданной игры
P.S Анонимно игру создать нельзя, только залогинившись
При обработке проверять решения пользователя на валидность: после последовательности перемещений пятнашки действительно соберутся корректно.
Это время между вызовом запроса на создание игры и запросом на ее решение.
- Используется квадратное поле (при создании игры это нужно проверять)
- Для каждой игры загружается квадратная картинка, которая впоследствии разрезается на кусочки и распределяется между игровыми тайлами.
- Laravel
- PostgreSQL
- Redis
Если ты middle и тоже хочешь попробовать, то милости просим. Для senior данный блок обязательный.
- Написать интерфейс и реализацию условного решателя пятнашек, который выдаст последовательность ходов для успешного решения игры.
- Доказать оптимальность придуманного алгоритма
- Контейнеризация приложения (Docker, docker-compose).
Необходимо написать фронт для игры. дизайн произвольный, функционал: анимированное перемещение ячеек, кнопка сброс, таймер который должен менять значение во время игры.
- NuxtJS