![]() |
как правильно между классами в as3 передавать объект?
Всех приветствую!
Разбираю as3, не могу понять - как сделать В классе А создан объект (класс) 1 со значением 2 Из класса А вызывается класс Б Потом из класса Б вызываются классы Д,Е Также из класов Д, Е в любое момент может быть вызван класс Б или Е Как среди классов А,Б,Д,Е передавать объект (класс) 1 со значением 2 которое может меняться в процессе не через конструктор принимающего класса, а храня его как какой то глобальный объект? в as2 все новые переменные доступны в любом месте а как это делать в as3 хочу понять |
http://www.flasher.ru/forum/showthread.php?t=142359
Только Вы не совсем правильно понимаете парадигму программирования. Классы не вызывают друг друга. |
Цитата:
|
http://ru.wikipedia.org/wiki/%D0%9F%...BD%D0%B8%D1%8F
Цитата:
|
Но обмен данными между Классами не противоречит Парадигме вобщем =) он противоречит конкретной ( ООП + Инкапсулирование ) композиции программирования =)
|
Имхо, обмен данными между объектами через глобальные переменные в определенном смысле противоречит парадигме ООП, поскольку по сути является "АНТИинкапсуляцией". :) Однако, к чему этот философский спор и именно тут? :D
Я считаю, что если потребовались глобальные переменные, то это означает неправильное проектирование, а если они появляются в уже готовых приложениях, то это 99% - костыли. Но они предусмотрены разработчиками языка - и это тоже факт. |
А чем еще заниматся в понедельник вечером?
По делу – передавать сообщения между объектами для новичков – оптимально либо через события, либо через реализацию Observer, примеры которой можно найти на Википедии и туче других сайтов |
Ну да :)
Паттерн Observer - это именно для новичков :) |
Цитата:
|
Observer это 3 класса, для новичка будет неплхой тренировкой, реализовать 3 класса на AS.
Если мы говорим вообще о первом опыте программирования, человеку стоит пока меньше думать об абстракция, и просто пописать функции, и вызвать их, смотреть что делают, из кадра. |
| Часовой пояс GMT +4, время: 15:57. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.