информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Где водятся OGRыЗа кого нас держат?Атака на Internet
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 С наступающим 
 Серьезная уязвимость в Apache Log4j 
 Крупный взлом GoDaddy 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / miscellaneous
Имя Пароль
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Кстати прикол 11.04.08 11:18  Число просмотров: 2221
Автор: PS <PS> Статус: Elderman
<"чистая" ссылка>
Рефакторю код одной системы, где событиям и сообщениям самое место.
В начале работы тихо офигел от того, что нет ни одного класса, в названии которых встретилось бы одно из этих слов!
Зато половина классов в названии содержат слово Notify ;)
Вот таким красивым способоми человек обошел проблему названий.

С моей точки зрения ответ на мой вопрос кроется несколько глуюбже, чем мы его попытались тут рассмотреть.
Дело в том, имхо, что как в самом вопросе, так и в его обсуждении произошло смешение двух понятий: объектов реального мира, и программных моделей этих объектов.
Ведь что такое "событие" в реальном мире? В словаре написано "то, что произошло, случилось". Однако, еще в школе нас учили не давать определения через "то что". А попробуйте дать определение событию без этого паттерна :) Дело в том, что слово "событие" выглядит как существительное, типа "яблоко" или "автомобиль". Однако при этом описывает не сущность в физическом мире, а некоторое действие. В трансформационной грамматике такие слова называются "номинализациями".
Это касательно реального мира. Теперь, что мы видим в программной модели. А здесь событием называют информацию о том ("о том" - выделенно и подчеркнуто) что произошло. Мы можем написать письмо о том..., мы можем послать сообщение о том..., мы можем сгенерировать эвент о том....
В отличии от реального мира, программное событие - это просто сообщение.
Дело в том, что в программном мире есть данные, и методы работающие с данными - существительные и глаголы :) Номинализаций в программном мире - нет. Любая номинализация, при попытке её "запрограммировать" превращается либо в метод, либо в данные.
Отсюда можно сделать вывод - слово Event, хоть и звучит красиво, но с точки зрения модели денных в программе - абсолютно бесполезно. Его синонимом (в программном мире) является слово message, использование которого не внесет путаницы ни при проектировании системы, ни при чтении кода.
<miscellaneous> Поиск 








Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2022 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach