![]() |
Очень много import
Привет ребят. Возникла проблема, что у меня много класов раскиданных по разным папкам. Проблема в том что они сильно друг от друга зависят и приходиться в каждом классе писать огромное кол-во импортов.
import mymodel.myshape.*; import mymodel.mycrystal.moving.*; ... ... Может можно как то поставить по дефолту чтобы ФлекБилдер смотрел в текущий проект. |
Много это сколько? 500?
|
Если у Вас в одном классе используется очень много других, стОит задуматься о рефакторинге или о архитектуре приложения в целом.
|
Много это по 20. Неужели нельзя как -то сделать?
|
Это вы весь код сосредотачиваете в главном классе, что ли?
|
Цитата:
Но рефакторинг для вас тут не вариант, как я понял. Возможно мы не улавливаем проблемы, Вы же не руками импорты пишете? |
В том то и дело, что приходиться руками делать импорты.
Например есть класс myModel в котором юзаются MyRender,MyFilter,MyPositioner, MyNetConnection и так далее. А эти классы для удобства и наглядности разложены в свои пакеты. В итоге мне приходиться частенько делать кучу вот таких: import mymodel.*; import mymodel.myshape.*; import mymodel.mycrystal.moving.*; Мне кажется, должно быть какое-то лёгкое решение, которое позволяет компилятору смотреть сперва в эти пакеты и там искать класс, если он не будет найден то тогда да, спросить "эй прог, что это за класс где его брать?". Может что-то связанное c namespace и т.д. Цитата:
Код AS1/AS2:
|
А в чём вы пишете? Во FlashDevelop проблем с автопрописыванием импортов нет, думаю в FDT и FlashBuilder тоже.
Да и компилятор от Flex SDK вам ничего не скомпилит без импортов и скажет, о каких именах ничего не знает. |
Пишу на as3 во FlexBuilder
Добавлено через 2 минуты В java если пишешь в ide Eclipse он подкрашивает неизвестный класс и сам предлагает варианты для импорта при наведении на класс в тексте. Может такое есть?? |
ctrl+shift+1
|
Код:
import artshlagin.events.VkontakteEvent;При рефакторинге планирую добавить Graphics, DisplayObject, IEventDispatcher и несколько других, будет больше. |
setTimeout - устарел же.
network.Vkontakte/flufme.as3.network.vkontakte.SimpleConnector - зачем два? flash.events.* и flash.display.* и видимость приличия соблюдена) Вообще интересно, что за класс, что ему всё это надо, может побить его на три? %) |
Бейз контроллер.
Про flufme.as3.network.vkontakte.SimpleConnector - согласен. Второй надо побрить ) setTimeout отлично делает свою работу. Не вижу нужды заводить Timer на какую-то мелочь. |
в последний раз при профайлинге в FD заметил, что setTimeout оставляет каку в памяти и не убирает за собой.
|
Я очень плохо пользуюсь профайлером. )
|
Psycho Tiger, твой вопрос из серии оценивания, вплотную поднесенной к замочной скважине, картины. Могу и голов поназабивать исходя из твоего клочка информации, но не это сейчас обсуждаем.
Я уже не помню как это было во флекс билдере, во флеш билдере в автокомплите указывается и наименование пакета для класса. И встречая классы с одинаковыми названиями в доступных пакетах, любая хорошая IDE должна предоставить выбор. В FlashDevelop Ctrl+Space автокомплит исходя из текущего контекста, Ctrl+Alt+Space все доступные классы из всех доступных пакетов. Но вот Flash/Flex Builder вроде туговат для такого. Надеюсь что он достаточно умен чтоб по нажатию Ctrl+Space на нужном слове мог предложить все возможные варианты импорта, а не только ближайшие по его соображениям. |
Mur4ik, это был сарказм по поводу оценки, извини что ввёл тебя в заблуждение.
Просто 20 - "это много" - на мой взгляд это информация ложная. Например, DisplayObject, InteractiveObject, DisplayObjectContainer, Sprite, EventDispatcher, IEventDispatcher, IDataInput, Socket, Timer, TextField, IDataOutput, Sound, URLRequest, Loader - будет использовать простенькая программа для коннекта к серверу и вывода информации. Типа "в сокет упала картинка - вот!", или там отображателя ссылок. Конечно может с IDataInput/output погорячился, но суть такая. И это ещё без пользовательских классов! Если кастовать тяп-ляп (например, нужен только x и y, а кастуем к MovieClip) - классов конечно будет меньше, но ведь это и не хорошо. Или ты имеешь ввиду 20 не-нативных? Тогда безусловно, много. ) |
Цитата:
Цитата:
|
Цитата:
|
Цитата:
Цитата:
Но опять же я со своей колокольни сужу, могу и ошибаться - ОГРОМНЫХ проектов не пишу, возможно там это сплошь и рядом. 100% согласен с udaaff, всё относительно. Пусть каждый для себя решает где много и где мало, а время покажет. ;) |
| Часовой пояс GMT +4, время: 23:29. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.