Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.05.2009, 02:37
AlexDesinger вне форума Посмотреть профиль Отправить личное сообщение для AlexDesinger Посетить домашнюю страницу AlexDesinger Найти все сообщения от AlexDesinger
  № 1  
Ответить с цитированием
AlexDesinger

Регистрация: Feb 2007
Сообщений: 563
По умолчанию Структура классов для сайта

Здравствуйте, все, не так давно я приобрел книгу "ActionScript 3.0 для Flash (Колин Мук)" и приступил к более детальному изучению языка as 3.0 поскольку логика as2 не работает в as3. Знаю, что сейчас многие из тех, кто помогал мне ранее, отвечая на мои вопросы, вздохнули с облегчением и сказали про себя:"Наконец-то...", но чем дальше я углубляюсь в as3 тем больше вопросов накапливается.
В частности в данный момент меня интересует вот что:
У Колина Мука в самом начале дается такое определение классу:"..Иначе говоря классы-это чертежи по которым создаются объекты..."
ок, значит я должен сделать так:
Создать главный класс, в котором я буду создавать экземпляры созданных мною классов объектов.
Ок, но тогда первый вопрос - создав экземпляр класса - как мне его себе представлять? Как сложный объект, как Мувиклип(если наследуется от мувиклипа, как часть кода пакета(если относятся к одному пакету), вобщем как?)
Можно ли экземпляр класса добавлять как child в другие мувиклипы?

Понятно что если мне нужно создать, например hint, то нужно описать его в классе и создать экземпляр, а затем можно им управлять....Но вот если у меня есть очень сложный объект, например галерея картинок, там происходит много событий много объектов создается и удаляется, правильно ли управлять таким сложным объектом из главного класса, например подписываясь на все мышиные события или же все-таки нужно управление доверить самой галереи - представляя ее автономным модулем, работающим в данный момент? Если да, то что делать если из галереи я присваиваю stage события мыши? Нет, я знаю что это возможно - у меня все работает, мне интересно правильно ли я делаю, что в момент когда загружена галерея - она временно рассылает слушателей, создает объекты, удаляет их и вообще ведет себя в этот момент как главный класс?

Старый 16.05.2009, 04:51
IDimitry вне форума Посмотреть профиль Найти все сообщения от IDimitry
  № 2  
Ответить с цитированием
IDimitry
Banned
[+5 23.05.09]
[+1 23.05.09]

Регистрация: Mar 2009
Сообщений: 93
Оф кос. Вложенность может быть любой и при правильной архитектуре любой экземпляр должен знать только родителя и потомков, о "дедушке" он даже не должен подозревать. Хотя и возможны общедоступные классы (свойства, работа с сетью и т.д.) - скорее, дань удобству использования, так как идеологически не вполне правильное применение.
Ну, и хотя это звучит уже банально в этом разделе, но примером наиболее частого построения правильной архитектуры выступает шаблон проектирования mvc. Он также позволяет осуществлять иерархические связи.

Старый 16.05.2009, 13:22
AlexDesinger вне форума Посмотреть профиль Отправить личное сообщение для AlexDesinger Посетить домашнюю страницу AlexDesinger Найти все сообщения от AlexDesinger
  № 3  
Ответить с цитированием
AlexDesinger

Регистрация: Feb 2007
Сообщений: 563
Угу, в сети я посмотрел несколько статей на тему - подход mvc...
Получается, что правильнее делать так:
Я создаю главный класс документа, который может быть контроллером всех "видов" и "моделей", в нем я размещаю глобальные настройки сцены, задаю слушателей сцены, импортирую туда объекты вида(классы), и.т. а классам поручаю только выстроить объект по черетежу...так?
Затем в главном классе я располагаю элементы как нужно(в пространстве и запихивая куда нужно как чилды), начинаю прописывать слушателей мыши и клавиатуры для каждого объекта внутри каждого класса и начинаю управлять ими из главного класса документа так?
Но тогда мой главный класс разрастеться и станет очень большим, ведь сейчас специфическое поведение элемента класса определено в классе, хоть и использует глобальные данные как stage.
Единый центр управления это конечно хорошо, но ведь это тоже не удобно, а что если у меня с десяток приложений(web страниц)? То мне нужно будет в главном классе прописать все действия которые пользователь возможно совершит, если вдруг нажмет на определенный элемент меню?
Тогда вопрос следующий - что выбрать:
-Описать все объекты в отдельных классах, а в гланом управлять всеми ихними свойствами и действиями?
-Описать все объекты в отдельных классах, доверив классам управлять специфическими свойствами и действиями объектов внутри данного класса, в том числе и разрешить обращаться к satge?
-Создать несколько swf файлов - символизирующие web страницы или модули сайта, подгружать их с их док классами и допклассами как независимые элементы и выгружать когда это необходимо?
Вобщем подскажите, плиз ...

Старый 16.05.2009, 18:01
Mur4ik вне форума Посмотреть профиль Отправить личное сообщение для Mur4ik Найти все сообщения от Mur4ik
  № 4  
Ответить с цитированием
Mur4ik
ветеран форума

Регистрация: Sep 2008
Сообщений: 717
Записей в блоге: 4
Отправить сообщение для Mur4ik с помощью ICQ
Если вы больше ориентируетесь на сайты, присмотритесь к такой вот штуке как GAIA. Там уже за Вас продумана основная структура классов (вроде как исходя из лучших практик). И многое уже сделано за Вас изначально, прелоадеры, диплинкинг, загрузка и доступ к всевозможным даным (XML, звук, изображения, видео и т.д). Очень ускоряет разработку сайтов, при этом особо не заставляя Вас работать тем или иным образом, вообщем такой себе удобненький фреймворк для сайтостроения, сильно ускоряющий разработку сайтов.
__________________
trace("Остановите Землю, я сойду!!!");

Старый 18.05.2009, 14:11
AlexDesinger вне форума Посмотреть профиль Отправить личное сообщение для AlexDesinger Посетить домашнюю страницу AlexDesinger Найти все сообщения от AlexDesinger
  № 5  
Ответить с цитированием
AlexDesinger

Регистрация: Feb 2007
Сообщений: 563
Mur4ik, спасибо, но хочется все-таки самому немного разобраться.
Ок я спрошу тогда так:
Я сделал следующее - в гланый класс я вынес все настройки стейджа и иморты, и добавил реакцию на ресайз(т.е. по сути главный класс-это описание стэйджа), в главном классе я импортирую другие классы - элементы интерфейса и распологаю их тоже в гланом классе, вопрос собственно в следующем - правильно ли я делаю, что отношусь к классам как к отдельным объектам, расположенным на сцене(практически все они наследуются от MovieClip, т.е. в моем представлении это оъекты, которые собственно и являются "усложненными мувиклипами"), между которыми должно происходить взаимодействие, в том числе и обращение друг к другу и к стейджу?

Создать новую тему Ответ Часовой пояс GMT +4, время: 13:00.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 13:00.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.