Показать сообщение отдельно
Старый 07.01.2013, 18:49
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 6  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Цитата:
Как правильно поделить программу на классы?
Этот вопрос относится к Проектированию, довольно самостоятельной дисциплине. Здесь нет однозначных ответов, все зависит от проекта целиком. Одно дело, пока Вы пытаетесь реализовать движение битла в вакууме, и совсем другое, когда он двигается по карте с препятствиями и NPC. Здесь наверное стоит почитать общие вещи по проектированию, особенно ООП (так как AS3 ориентирован именно на ООП).
Цитата:
а писать код перемещения персонажа в классе Keys неправильно, поскольку это код класса Beatle.
Категорически несогласен. Каждый класс должен отвечать только за то, что происходит у него "внутри", с его частями, его подчиненными. Как раз здесь очень яркий пример, почему. Чтобы обеспечить логику движения по карте вашему экземпляру битла, Вам придется подарить ему знание всей карты и описать логику взаимодействия со всеми предметами и неписями, ловушками и бонусами всех возможных классов. То есть Ваш битл должен будет содержать в себе буквально копию всей остальной программы. А ведь он — не более чем еще один объект на карте. Подчиненный Карты. Карта знает "себя" и знает битла. Ей и решать, куда и как он должен/может двигаться, с кем он встретился и дошел ли до конца уровня.
Всех благ.
__________________
Reality.getBounds(this);