Привет! В условии есть такой абзац:
Точкой входа в наш игровой движок является метод initialize(). Поэтому переопредели его в классе MinesweeperGame, и в этом методе вызови метод setScreenSize с аргументами SIDE и SIDE.
Подскажите, что значит "точка входа в игровой движок"? Точка входа в программу — это main, с его запуском у нас работает программа, но вот про игровой движок непонятно
Ada
1 уровень
Что значит "точка входа в игровой движок"?
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Денис Enterprise Java Developer
8 июня 2022, 07:06полезный
Ну представь что в программе кроме движка у тебя есть еще компоненты. Вот запуск движка начинается с метода initilaize(). Он при этом будет выполнять свою часть работы.
Точка входа это (внезапно) то место откуда ты начинаешь взаимодействие с чем либо, в данном случае, если ты не вызовешь правильно написанный метод initialize() игра не включится, хотя программа и может успешно при этом отработать.
+2
Ada
8 июня 2022, 07:13
А можете подсказать, как его назначили точкой входа? В исходном классе Game этот метод объявлен с пустым телом:
При этом сам класс Game не абстрактный:
Почему спрашиваю: понимаю, что с этого метода стартует игра, но если бы я писала игру самостоятельно, без подсказок валидатора, то не понимаю, как найти, что является точкой входа. И когда мне нужно писать main самостоятельно, а когда нужно использовать уже готовый метод в качестве точки входа
0
Денис Enterprise Java Developer
8 июня 2022, 10:27решение
Ну саму кодовую базу я конечно же не вижу, но если обратиться к заданию, то вам указали переопределить этот метод в MinesweeperGame и даже указали что внести в тело.
Вообще тут следует подразобраться в наследовании, какие методы вызываются кем и где. Например класс игра расширяет приложение и реализует какой-то интерфейс. Т.е. в этом классе вам нужно реализовать все методы интерфейса кроме дефолтных, а так же реализовать все абстрактные методы класса Application если таковые имеются и, возможно, переопределить часть его методов которые в классе Game должны делать что-то другое.
Скорее всего с MinesweeperGame примерно та же история.
Отвечая на вопрос как назначили - захотели так. Вот решили, этот метод у нас будет точкой входа. Классу Game не обязательно быть абстрактным в этом конкретном случае ведь метод initialize тоже не абстрактный, у него просто тело пустое.
Если говорить о реальном написании и архитектуре, обычно на движки есть документация которую конечно же вы бы прочитали во время реализации игры.
Примерно то же можно сказать о любой библиотеке которую вы можете использовать, там выставлены наружу какие-то интерфейсы ими вам и нужно будет пользоваться.
+3
Ada
8 июня 2022, 10:49
Благодарю, Денис! Помогли разобраться
0