Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.12.16;
Скачать: [xml.tar.bz2];

Вниз

А что такое агрегация?   Найти похожие ветки 

 
Petr V. Abramov ©   (2007-11-19 16:17) [0]

В соседней ветке Сусл © спросил, слышал ли я про нее что-нибудь, а я не слышал. Не хочу дальше дураком расти, объясните, что это такое, кому не сложно.


 
БарЛог ©   (2007-11-19 16:18) [1]

А википедия на что?


 
Anatoly Podgoretsky ©   (2007-11-19 16:18) [2]

> Petr V. Abramov  (19.11.2007 16:17:00)  [0]

Он случайно не про множественное наследование против аггрегирование?


 
Johnmen ©   (2007-11-19 16:19) [3]

Хм... А онлайн словари никак?


 
clickmaker ©   (2007-11-19 16:30) [4]

наверно это процесс превращения в агрегат


 
Ломброзо ©   (2007-11-19 16:42) [5]


interface IInner
{
 void foo();
}

class Inner implements IInner
{
 public void foo()
 {
   print "Inner::foo()";
 }
}

class Outer implements IInner
{
 IInner _inner;
 Outer()
 {
   _inner = new Inner();
 }

 public void foo()
 {
   _inner.foo();
 }
}


 
pasha_golub ©   (2007-11-19 16:45) [6]


> Ломброзо ©   (19.11.07 16:42) [5]

Не по теме будет сказано, но как же эти ваши фигурные скобочки глаз ломают. Ну просто жуть. :)


 
clickmaker ©   (2007-11-19 16:45) [7]


> [6] pasha_golub ©   (19.11.07 16:45)
>
> > Ломброзо ©   (19.11.07 16:42) [5]
>
> Не по теме будет сказано, но как же эти ваши фигурные скобочки
> глаз ломают. Ну просто жуть

ниче ты не понимаешь в колбасных обрезках :)


 
Ломброзо ©   (2007-11-19 16:46) [8]

Бегом к офтальмологу! )


 
Kolan ©   (2007-11-19 17:17) [9]

> А что такое агрегация?

Это подтип отношения ассциации.


 
Kolan ©   (2007-11-19 17:25) [10]

Предвосхищая вопрос «а зачем она нужна?»
— Нужна она для моделирования отношения часть/целое.

А еще есть композиция, процитирую:

«
Композиция. Агрегирование является простой концепцией с достаточно глубокой семантикой. Простое агрегирование — чисто концептуальное отношение, оно лишь позволяет отличить „целое“ от „части“ (см. главу 5), но не изменяет смысла навигации по ассоциации между целым и его частями и не накладывает никаких ограничений на соотношение времен жизни целого и частей.

Однако существует вариация простого агрегирования — композиция, которая добавляет к семантике агрегирования новые важные особенности (для моделирования композиции используются атрибуты, см. главы 4 и 9). Композицией называется форма агрегирования с четко выраженным отношением владения, причем время жизни частей и целого совпадают. Части с нефиксированной кратностью могут быть созданы уже после самого композита, но, будучи созданы, живут и умирают вместе с ним. Впрочем, части могут быть удалены явным образом еще до уничтожения композита.

Это означает, что в случае композитного агрегирования объект в любой момент времени может быть частью только одного композита. Например, в оконной системе класс Frame (Рама) принадлежит только одному классу Window (Окно), тогда как при простом агрегировании „часть“ может принадлежать одновременно нескольким „целым“. Скажем, в модели дома объект Стена может принадлежать нескольким объектам Комната.

Кроме того, в композитном агрегировании целое отвечает за диспозицию своих частей, то есть композит должен управлять их созданием и уничтожением. Например, создав объект Frame в системе окон, вы должны присоединить его к объемлющему окну. Когда объект Window удаляется, он в свою очередь должен уничтожить принадлежащие ему объекты Frame.
»


 
Ломброзо ©   (2007-11-19 17:41) [11]

План Путина?


 
clickmaker ©   (2007-11-19 17:43) [12]


> [11] Ломброзо ©   (19.11.07 17:41)
> План Путина?

агрегация? или композиция?


 
Ломброзо ©   (2007-11-19 17:46) [13]

Не. Первый абзац цитаты потряс мой продолговатый мозг. Трижды заставил вчитаться.

Ради интереса глянул, что же про аггрегирование гласит MSDN:

"Aggregation means that the containing (outer) object creates the contained (inner) object as part of its creation process and the interfaces of the inner object are exposed by the outer".

Хоть и по-английски, но как-то понятнее.


 
clickmaker ©   (2007-11-19 17:49) [14]


> "Aggregation means that the containing (outer) object creates
> the contained (inner) object as part of its creation process
> and the interfaces of the inner object are exposed by the
> outer".

это напоминает "оружие хранится в комнате для хранения оружия"


 
Kolan ©   (2007-11-19 17:51) [15]

> аггрегирование гласит MSDN:

это термин UML, поэтому если хотите истину ишите её на OMG.com.

creates the contained (inner) object as part of its creation process
В итоге тут описана композиция, насколько я понимаю&#133

ЗЫ
 UML язык не только для прогрпммирования(ООА/ООП), поэтому для программиривания многие понятия по сути одно и тоже. Обычно пользуются термином «композиция».


 
Kolan ©   (2007-11-19 17:54) [16]

Если пользоваться Together, то ему вообще побарабану, какая ассоциация, для него нет разницы&#133


 
clickmaker ©   (2007-11-19 18:00) [17]

если начать переводить с буржуйского слова "aggregate" & "composite", выяснится, что по сути это одно и то же

"собирать в одно целое; собираться"
"составление, формирование"


 
lookin ©   (2007-11-19 18:20) [18]

> [14] clickmaker ©   (19.11.07 17:49)
это напоминает "оружие хранится в комнате для хранения оружия"


Вовсе не такой удачный пример. На самом деле та англ. фраза четко определяет термин "аггрегация", уж как бы не звучало тавтологично само это определение... И потому свою функцию выполняет. А если необходимо, то можно чуточку переделать фразу: оружие (см.) хранится в комнате (см.) для хранения (см.) оружия. И все будет совсем тип-топ...


 
Черный Шаман   (2007-11-19 19:24) [19]


> Petr V. Abramov ©   (19.11.07 16:17)
>
> В соседней ветке Сусл © спросил, слышал ли я про нее что-
> нибудь, а я не слышал. Не хочу дальше дураком расти, объясните,
>  что это такое, кому не сложно.


Включение данных/объекта другого класса, как свойства (возможно с разрешением внешнего доступа).

Понавыдумывали слов всяких мудреных. В русском языке есть понятие включение, вот это оно и есть.


 
Черный Шаман   (2007-11-19 19:25) [20]


> Ломброзо ©   (19.11.07 16:46) [8]
>
> Бегом к офтальмологу! )


А вам срочно к проктологу...


 
Kolan ©   (2007-11-19 21:26) [21]

> В русском языке есть понятие включение, вот это оно и есть.

Причём тут русский язык? Ненадо подменять. Это язык UML, все жестко определено. Читайте спецификацию http://www.omg.org .


 
Сусл ©   (2007-11-19 23:49) [22]

флуд, Петр.
почитай GoF. Я УВЕРЕН, ЧТО ТЫ ЕГО НЕ ЧИТАЛ.

Hint: GoF - неплохое поисковое слово по сабжу


 
Константинов ©   (2007-11-20 01:25) [23]

Агрегация - способ "уплотнения" ан-лимит каналов Интернет-пользователей в канал с полосой меньшей суммы полос в N раз. Число N называется коэффициентом агрегации. :)
Пример: Есть полоса от интернет-провайдера = 2 мб/с. Вы ставите роутер и продаете восьмерым пользователям, указывая в договоре "ан-лимит на скорости 2 мб/с" и берете с них чуть дешевле, чем покупаете у провайдера. В результате, юзеры (иногда) видят пики до 2-х Мб/с, но все остальное время скорость доступа в сеть гораздо меньше заявленной.
Вы в шоколаде, юзеры довольны, провайдер курит бамбук (вы не нарушаете, как вам кажется, условий договора).

ЗЫ: Практически весь интернет-провайдинг построен на подобных схемах. Дабы все это не превратилось в золотое дно, государством введено лицензирование услуг связи. Без лицензии и кучи очень геморрных разрешительных документов, подобный бизнес - уголовно наказуемое деяние. Опасно для здоровья. :)


 
Kolan ©   (2007-11-20 09:02) [24]

> Агрегация — способ «уплотнения» ан-лимит каналов

Мда&#133 облать применения термина нодо было автору саюжа уточнить&#133



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2007.12.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.51 MB
Время: 0.043 c
11-1181489135
=BuckLr=
2007-06-10 19:25
2007.12.16
Про DeleteLines


4-1180351823
Lex_!
2007-05-28 15:30
2007.12.16
Список оборудования в системе


15-1195243254
tesseract
2007-11-16 23:00
2007.12.16
CMS vs Delphi for PHP


15-1195046851
vasIZmax
2007-11-14 16:27
2007.12.16
Оптимизация по Парето (имхо, неэффективно решается)


4-1180097579
buben
2007-05-25 16:52
2007.12.16
Замена буфера обмена





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский