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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.02.2010, 22:21
lowka вне форума Посмотреть профиль Отправить личное сообщение для lowka Найти все сообщения от lowka
  № 11  
Ответить с цитированием
lowka

Регистрация: Sep 2006
Сообщений: 256
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Класс по-сути состоит из двух частей: интерфейс и реализация. Т.е. в других языках, на сколько я знаю в той же яве можно имплементить другой класс, т.е. пример (псевдокод):
в яве нельзя после в перечислении интерфейсов, реализуемых классом, написать класс - это логично в общем-то.
__________________
:emocry:

Старый 12.02.2010, 00:25
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 12  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Ну тогда не помню где, но где-то видел такое
__________________
Hell is the possibility of sanity

Старый 12.02.2010, 00:37
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 13  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Цитата:
Ну тогда не помню где, но где-то видел такое
В haXe было, только не для flash9.
Плюс реализовывать надо даже скрытые поля.
Вобщем, пользы маловато.

Старый 15.01.2011, 01:36
semenyakinVS вне форума Посмотреть профиль Отправить личное сообщение для semenyakinVS Найти все сообщения от semenyakinVS
  № 14  
Ответить с цитированием
semenyakinVS

Регистрация: Mar 2010
Сообщений: 137
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Собстенно говоря это почти то же самое, что и множественное наследование, только реализация не наследуется.
Нет. Главная прелесть множественного наследования заключается во включении всех отцовских свойств в класс-наследник. Увы, таким методом, как вы указали это не получится.


Последний раз редактировалось semenyakinVS; 15.01.2011 в 01:40. Причина: Цитату не так вставил
Старый 15.01.2011, 10:35
f.g.programmer вне форума Посмотреть профиль Отправить личное сообщение для f.g.programmer Найти все сообщения от f.g.programmer
  № 15  
Ответить с цитированием
f.g.programmer
 
Аватар для f.g.programmer

блогер
Регистрация: Sep 2010
Адрес: Россия
Сообщений: 137
Записей в блоге: 3
Частично задачу можно решить использую интерфейсы и композицию. Но возможно оно и к лучшему, что множественного наследования нет, ускоряя генерирование функционала, оно может значительно усложнить код.

Старый 15.01.2011, 15:40
JackFromChaos вне форума Посмотреть профиль Отправить личное сообщение для JackFromChaos Найти все сообщения от JackFromChaos
  № 16  
Ответить с цитированием
JackFromChaos
 
Аватар для JackFromChaos

блогер
Регистрация: Jan 2008
Адрес: Донецк
Сообщений: 162
Записей в блоге: 2
Отправить сообщение для JackFromChaos с помощью Skype™
Композиция рулит. Поверьте, множественное наследование это зло, и java и c# не случайно от него отказались.
Вначале это может казаться прикольным... Но потом может привести к страшному бардаку... В общем зачастую компаниях запрещено использовать множественное наследование даже на c++
__________________
Искренне Ваш, Джек.

Старый 15.01.2011, 16:27
semenyakinVS вне форума Посмотреть профиль Отправить личное сообщение для semenyakinVS Найти все сообщения от semenyakinVS
  № 17  
Ответить с цитированием
semenyakinVS

Регистрация: Mar 2010
Сообщений: 137
Цитата:
Сообщение от JackFromChaos Посмотреть сообщение
Поверьте, множественное наследование это зло, и java и c# не случайно от него отказались.
Они отказались от этого просто потому, что не всем она понятна и не все способны реализовывать качественный код с использованием множественного наследования.

Цитата:
Сообщение от JackFromChaos Посмотреть сообщение
В общем зачастую компаниях запрещено использовать множественное наследование даже на c++
Зря.

Цитата:
Сообщение от JackFromChaos Посмотреть сообщение
Композиция рулит // Вначале это [множественное наследование] может казаться прикольным... Но потом может привести к страшному бардаку...
Композиция в смысле множественного наследования – плохая, как мне кажется, идея. Зачастую возникает ситуация, когда необходим объект не только описывающий два разных интерфейса, но и хранящий два набора свойств, связанных с этими интерфейсам. Использование включения тут возможно, но оно не способно отобразить логику, лежащую в основе подобного решения. Если помимо наследуемых свойств у нас имеются ещё включения, то может возникнуть не меньший бардак, чем при некорректном использовании множественного наследования.

Если судить по такой логике, можно обойтись вообще без наследования, только включая – что иногда приходилось делать в AS1.


Последний раз редактировалось semenyakinVS; 15.01.2011 в 16:27. Причина: Исправил кое-какие слова
Старый 15.01.2011, 17:41
JackFromChaos вне форума Посмотреть профиль Отправить личное сообщение для JackFromChaos Найти все сообщения от JackFromChaos
  № 18  
Ответить с цитированием
JackFromChaos
 
Аватар для JackFromChaos

блогер
Регистрация: Jan 2008
Адрес: Донецк
Сообщений: 162
Записей в блоге: 2
Отправить сообщение для JackFromChaos с помощью Skype™
"Это приводит нас ко второму правилу объектно-ориентированного программирование: предпочитайте композицию наследованию классов"(с) Банда четырех.
Вообще почитайте "Приемы объектно ориентированного проектирование - паттерны проектирования". Глава введение, раздел "наследования и композиция".
Хотя, конечно, дело вкуса, и каждый волен поступать так, как ему больше нравится...

Но я не думаю, что от множественного наследования отказались только потому, что оно слишком сложно...
Как минимум слишком неоднозначно, как должен работать полиморфизм, если в 2 родительских классах есть виртуальные методы с одинаковой сигнатурой. А для архитектуры и наглядности - это очень, очень плохо, имхо.
Это как математике, главное не запомнить формулу, а понимать ее логику... А тут получается нет логики, а только формула. В результате программист зависит не от логики, а от реализации компилятора...
__________________
Искренне Ваш, Джек.

Старый 15.01.2011, 19:15
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 19  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
А мне было бы круто просто наследовать от EventDispatcher`а вторым классом, чем реализовывать IEventDispatcher.

Старый 15.01.2011, 19:24
Nemez вне форума Посмотреть профиль Отправить личное сообщение для Nemez Найти все сообщения от Nemez
  № 20  
Ответить с цитированием
Nemez
 
Аватар для Nemez

Регистрация: Jun 2010
Сообщений: 189
Покажите, пож., пример реализации IEventDispatcher. В хелпе непонятно как-то ((.

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

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

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


 


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


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