В каком классе писать логику столкновений двух объектов? Проектирую простую аркаду. Летят снежинки, игрок их ловит варежкой. Соответственно есть три класса: 1. Снежинка 2. Варежка 3. Сцена Нужно отловить момент, когда игрок поймает варежкой снежинку - простой коллижн детект. В каком классе это делать будет правильней с точки зрения ООП? Варианты: 1. В сцене. Сцена знает, какие у ней снежинки летят, где варежка. 2. В варежке. Варежка же тут главное действующее лицо. 3. В снежинке. Снежинка же должна исчезнуть.
Из точки зрения ООП наиболее правильным будет вариант 3 - реализация логики столкновений в классе Снежинки. Поскольку снежинка должна исчезнуть при столкновении с варежкой, это действие логичнее всего выполнять внутри самой снежинки. Таким образом, при столкновении с варежкой снежинка будет активировать метод, который инициирует ее исчезновение.
Из точки зрения ООП наиболее правильным будет вариант 3 - реализация логики столкновений в классе Снежинки. Поскольку снежинка должна исчезнуть при столкновении с варежкой, это действие логичнее всего выполнять внутри самой снежинки. Таким образом, при столкновении с варежкой снежинка будет активировать метод, который инициирует ее исчезновение.