|
|
|||||
Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 479
|
Проблема "раздутого" класса
Друзья, поделитесь опытом.
У меня по мере разработки игры слишком разросся класс Character. Причём если смотреть на него с т.з. ООП, то вроде всё на месте. Есть штук 25 постоянных и неизменных на протяжении всей игры свойств, ещё штук 20 изменяемых параметров, описывающих текущее состояние, полтора десятка умений, что-то ещё по мелочам. Вся ботва с сеттерами/геттерами - это уже около 700 строк кода. Дальше идут методы. Их много, т.к. много чего должно рассчитываться для персонажа, в том числе по-своему в зависимости от наследника Character. Так что особо не уберёшь никуда. Таким образом, даже реализовав менеджер экипировки и менеджер статус-эффектов как отдельные классы, всё равно кол-во строк зашкалило за 1500. Работать с такой громадиной становится затруднительно. Как решаются подобные ситуации? Единственное, что пока приходит в голову, это сделать отдельный класс CharacterData для неизменных "справочных" значений и передавать в конструктор каждого экземпляра Character. Но всё равно будет геморрой с созданием наследников CharacterData, плюс в самом Character не обойтись без записей записей типа: Поэтому эффективность такого решения остаётся под вопросом.
__________________
Не сломано - не чини! |
Часовой пояс GMT +4, время: 23:36. |
|
« Предыдущая тема | Следующая тема » |
|
|