![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Apr 2006
Сообщений: 85
|
Здравствуйте
Думаю многие здесь сталкивались с чужим кодом и знают что это такое. Не далее как год назад я дописывал Флексовый проект за пхпистом, для которого АС3 оказался чужим. Программа была написана одним большим классом, разбитым на несколько слоев по функциональной принадлежности. Кучу времени было потрачено на осознание того что и за чем вызывается, в какой последовательности и т.д. Все это вдвойне печальней учитывая асинхронную природу веб приложений.. Цепочку методов очень сложно уложить в голове. Вот и сейчас я засел за проект, написанный на АС3, но практически полностью во фреймах и с огромным куском функционала на главном таймлайне. Сейчас весь этот код представляется мне необозримым. Хотелось бы узнать как вы выходите из подобных ситуаций? Наверняка существуют отработанные методики рефакторинга, применимые в подобных случаях. Кроме всего прочего, приложение претендует на наличие некоего подобия изометрического 3Д движка, который глючит. Получается нужно перегнать кучу процедурного кода в ООП. Заранее спасибо за коментарии! Добавлено через 11 минут Пока соображения такие: Я засунул весь распухший таймлайн в клип main, и оставил на нем только прелоадер. Вынес код с прелоадером в класс документа. Я прикрутил к проекту Флекс Билдер чтобы иметь адекватную IDE. Соображение было - вынести весь код разбитый по слоям во внешний .as файл чтобы иметь контекстные подсказки. Но сечас мне кажется что это не слишком большой +, я получу на выходе огромный файл с тучей функций.. Хочу определиться с чего начать! |
|
|||||
|
у меня пока 1 выход из подобных ситуаций - вообще не браться за такое ))..
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
|
Modus ponens
|
Рефакторинг, это когда берется нормальный код и из него получается другой нормальный код... А в такой ситуации... если есть возможность, просто поубирать весь код с таймлайна, графику в SWC - и писать код по-новой. Если нет такой возможности - то скорее всего остается только посочувствовать...
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Aug 2007
Сообщений: 467
|
По-моему, с нуля будет проще переписать. Потому что я сомневаюсь что такое приложение от автора, который так его написал, может нести какую то ценность, тем более значимость его кода.
__________________
Лучше быть умным и иногда делать глупости, чем глупым и постоянно умничать! |
|
|||||
|
Регистрация: Apr 2006
Сообщений: 85
|
Мда, хорошего конечно мало, но я стараюсь не терять надежды)
Выкинуть все и переписать заново, это, конечно, сурово. Я попытаюсь обойтись без экстремальных решений пока. Отпишусь что получилось ![]() |
|
|||||
|
Регистрация: Dec 2007
Сообщений: 204
|
Цитата:
Сочувствую вам, что вы были настолько неосмотрительным что бы взяться за подобные действия! Как вам уже сказали, вы потратите меньше времени, если напишете все с нуля.
__________________
http://www.infinity3d-engine.com |
![]() |
![]() |
Часовой пояс GMT +4, время: 11:10. |
|
|
« Предыдущая тема | Следующая тема » |
|
|