Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   как правильно между классами в as3 передавать объект? (http://www.flasher.ru/forum/showthread.php?t=142378)

zhukov 19.07.2010 21:32

как правильно между классами в as3 передавать объект?
 
Всех приветствую!
Разбираю as3, не могу понять - как сделать
В классе А создан объект (класс) 1 со значением 2
Из класса А вызывается класс Б
Потом из класса Б вызываются классы Д,Е
Также из класов Д, Е в любое момент может быть вызван класс Б или Е
Как среди классов А,Б,Д,Е передавать объект (класс) 1 со значением 2 которое может меняться в процессе не через конструктор принимающего класса, а храня его как какой то глобальный объект?

в as2 все новые переменные доступны в любом месте
а как это делать в as3 хочу понять

mikhailk 19.07.2010 21:53

http://www.flasher.ru/forum/showthread.php?t=142359

Только Вы не совсем правильно понимаете парадигму программирования. Классы не вызывают друг друга.

Nirth 19.07.2010 22:08

Цитата:

Только Вы не совсем правильно понимаете парадигму программирования
Что такое парадигма программирования?

mikhailk 19.07.2010 22:11

http://ru.wikipedia.org/wiki/%D0%9F%...BD%D0%B8%D1%8F

Цитата:

Паради́гма программи́рования — это совокупность идей и понятий, определяющая стиль написания программ. Парадигма, в первую очередь, определяется базовой программной единицей и самим принципом достижения модульности программы. В качестве этой единицы выступают определение (декларативное, функциональное программирование), действие (императивное программирование), правило (продукционное программирование), диаграмма переходов (автоматное программирование) и др. сущности. В современной индустрии программирования очень часто парадигма программирования определяется набором инструментов программиста, а именно, языком программирования и используемыми библиотеками.

Парадигма программирования определяет то, в каких терминах программист описывает логику программы. Например, в императивном программировании программа описывается как последовательность действий, а функциональном программировании представляется в виде выражения и множества определений функций (слово определение (англ. definition) следует понимать в математическом смысле). В популярном объектно-ориентированном программировании программу принято рассматривать как набор взаимодействующих объектов. ООП есть по сути императивное программирование, дополненное принципом инкапсуляции данных и методов в объект (принцип модульности) и наследованием (принципом повторного использования разработанного функционала).

Nirth 19.07.2010 22:15

Но обмен данными между Классами не противоречит Парадигме вобщем =) он противоречит конкретной ( ООП + Инкапсулирование ) композиции программирования =)

mikhailk 19.07.2010 22:19

Имхо, обмен данными между объектами через глобальные переменные в определенном смысле противоречит парадигме ООП, поскольку по сути является "АНТИинкапсуляцией". :) Однако, к чему этот философский спор и именно тут? :D

Я считаю, что если потребовались глобальные переменные, то это означает неправильное проектирование, а если они появляются в уже готовых приложениях, то это 99% - костыли. Но они предусмотрены разработчиками языка - и это тоже факт.

Nirth 19.07.2010 23:26

А чем еще заниматся в понедельник вечером?

По делу – передавать сообщения между объектами для новичков – оптимально либо через события, либо через реализацию Observer, примеры которой можно найти на Википедии и туче других сайтов

mikhailk 20.07.2010 00:59

Ну да :)
Паттерн Observer - это именно для новичков :)

Котяра 20.07.2010 01:25

Цитата:

Сообщение от mikhailk (Сообщение 923478)
Ну да :)
Паттерн Observer - это именно для новичков :)

Ъ флэшеры не поняли вашей иронии))

Nirth 20.07.2010 02:10

Observer это 3 класса, для новичка будет неплхой тренировкой, реализовать 3 класса на AS.

Если мы говорим вообще о первом опыте программирования, человеку стоит пока меньше думать об абстракция, и просто пописать функции, и вызвать их, смотреть что делают, из кадра.


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

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