Я изучаю намного больше о Java 8 и его функциональных возможностях, и я хотел бы сделать еще немного практики с ним. Скажем, например, у меня есть следующий императивный код, который предназначен для обхода круга вокруг границ экрана:
if (circle.getPosition().getX() > width + circle.getRadius()){
circle.getPosition().setX(-circle.getRadius());
}else if (circle.getPosition().getX() < -circle.getRadius()){
circle.getPosition().setX(width + circle.getRadius());
}
if (circle.getPosition().getY() > height + circle.getRadius()){
circle.getPosition().setY(-circle.getRadius());
}else if (circle.getPosition().getY() < -circle.getRadius()){
circle.getPosition().setY(height + circle.getRadius());
}
- Как я могу попытаться "Функционализировать" его? Может быть, какой-то псевдокод? Мне кажется, что изменчивость и состояние кажутся присущими этому примеру.
- Функциональное программирование не подходит для разработки игр? Мне нравятся оба, поэтому я пытаюсь их объединить.