Rambler's Top100
"Knowledge itself is power"
F.Bacon
Поиск | Карта сайта | Помощь | О проекте | ТТХ  
 Базарная площадь
  
О разделе

Основная страница

Группы обсуждений


Тематический каталог обсуждений

Архив

 
 К н и г и
 
Книжная полка
 
 
Библиотека
 
  
  
 


Поиск
 
Поиск по КС
Поиск в статьях
Яndex© + Google©
Поиск книг

 
  
Тематический каталог
Все манускрипты

 
  
Карта VCL
ОШИБКИ
Сообщения системы

 
Форумы
 
Круглый стол
Новые вопросы

 
  
Базарная площадь
Городская площадь

 
   
С Л С

 
Летопись
 
Королевские Хроники
Рыцарский Зал
Глас народа!

 
  
ТТХ
Конкурсы
Королевская клюква

 
Разделы
 
Hello, World!
Лицей

Квинтана

 
  
Сокровищница
Подземелье Магов
Подводные камни
Свитки

 
  
Школа ОБЕРОНА

 
  
Арсенальная башня
Фолианты
Полигон

 
  
Книга Песка
Дальние земли

 
  
АРХИВЫ

 
 

Сейчас на сайте присутствуют:
 
  
 
Во Флориде и в Королевстве сейчас  15:25[Войти] | [Зарегистрироваться]
Обсуждение темы:
Оберон-технология: особенности и перспективы


Тематика обсуждения: Оберон-технология. Особенности, перспективы, практическое применение. 

Количество сообщений на странице

Порядок сортировки сообщений
Новое сообщение вверху списка (сетевая хронология)
Первое сообщение вверху списка (обычная хронология)

Перейти на конкретную страницу по номеру


Всего в теме 6256 сообщений

Добавить свое сообщение

Отслеживать это обсуждение

Обсуждение из раздела
Школа ОБЕРОНА

<<<... | 3586—3577 | 3576—3567 | 3566—3557 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 269


№ 3576   26-03-2007 20:18 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 3575« (Jack Of Shadows)
___________________________

Аспекты это функциональная надстройка поверх ОО системы.
Понятно что функциональному подходу еще одна функциональная же надстройка над ней не нужна.


Мысль понятна.
Спасибо!

Перерыв по технической причине (утро уже). :)
 AVC


№ 3575   26-03-2007 20:04 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 3574« (AVC)
___________________________
Чему именно обязаны аспекты в CLOS своим существованием: функциональности Лиспа или развитой в CLOS объектной системе?
По моему я уже ответил. Обьектной системе. В чисто функциональном подходе аспекты на черта не нужны.
Они становятся нужны только тогда когда вы создаете жесткую структуру ООП. Но при этом своим всепроникновением разрушают основные принципы ОО, инкапсуляцию, наследование.
Аспекты это функциональная надстройка поверх ОО системы.
Понятно что функциональному подходу еще одна функциональная же надстройка над ней не нужна.



№ 3574   26-03-2007 19:45 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 3573« (Jack Of Shadows)
___________________________

Ну а что касается аспектов как синтаксического сахара, то например в CLOS (обьектная система лиспа) они есть.

К сожалению, именно CLOS не дает мне окончательного ответа. :)
Чему именно обязаны аспекты в CLOS своим существованием: функциональности Лиспа или развитой в CLOS объектной системе?
 AVC


№ 3573   26-03-2007 19:38 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 3572« (AVC)
___________________________
Во многих ли ФЯ поддерживаются аспекты (хотя бы в качестве синтаксического сахара)?
Начать с того что в ФЯ аспекты на черта не сдались (также как и design patterns)
В ФЯ эта же самая функциональность реализуется через higher order functions.

Ну а что касается аспектов как синтаксического сахара, то например в CLOS (обьектная система лиспа) они есть.



№ 3572   26-03-2007 19:25 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 3569« (Jack Of Shadows)
___________________________

Они вытекают из принципа higher order functions.
По существу вы передаете метод класса (функцию) как параметр в другую функцию (аспект)
При чем делаете это в декларативном виде. ТО есть описываете взаимосвязи через pointcuts а не передаете методы явно в коде.


(С некоторым сомнением.) Допустим.
Во многих ли ФЯ поддерживаются аспекты (хотя бы в качестве синтаксического сахара)?
Если посмотреть с другой стороны, то довольно похоже на перехват сообщений в ООП.
Т.е. как бы ввели в систему обмена сообщениями своего "шпиона" и дали ему список инструкций, как поступать с сообщениями такого-то вида.
 AVC


№ 3571   26-03-2007 19:16 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 3566« (Jack Of Shadows)
___________________________

Можно и базовый класс конечно.
А вообще механизм навешивания аспектов чрезвычайно гибок.


Это да.
Больше всего напоминает мощный специализированный препроцессор.
Все это вызывает у меня определенные сомнения.
Метод, позволяющий менять любую деталь в отдельности, -- вряд ли хороший метод программирования, т.к. нет способа обеспечить программные инварианты.
Обязательно должны быть ограничения и какие-то "нельзя".
 AVC


№ 3570   26-03-2007 19:11 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 3563« (Илья Ермаков)
___________________________
>>>Тупик наследования реализации. "Уж сколько раз твердили миру" - скрывайте реализацию, наследуйтесь только по интерфейсам, создавайте объекты только через фабрики, делайте гомогенные иерархии...
Сколько лет в этом тупике, все никак не упрусь :)
>>>Не слушаются, а потом требуется новые средства в языке плодить, которые позволят "хакнуть" понавернутые иерархии наследования - и заткнуть в середину перехватчики для реализации аспектов...
Опять таки ни разу не потребовались.

"А вы на шкаф заберитесь"(с)Старый анекдот.
Ну почему постоянно приводят примеры безграмотного использования ООП и на этом основании делают вывод о его "неправильности"?
Не надо так эмоционально. А то я тоже могу еще громче кричать: "Уж сколько раз твердили миру" - не понимаешь задачу, нечего стучать по клавишам. Иерархии объектов должны соответствовать классу решаемых задач. Есть чужой модуль с нужной функциональностью, но без исходников - в топку, подведет в самый неподходящий момент. Мало иметь подходящий инструмент, нужно им правильно пользоваться.


№ 3569   26-03-2007 19:10 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 3568« (AVC)
___________________________
Они вытекают из принципа higher order functions.
По существу вы передаете метод класса (функцию) как параметр в другую функцию (аспект)
При чем делаете это в декларативном виде. ТО есть описываете взаимосвязи через pointcuts а не передаете методы явно в коде.


№ 3568   26-03-2007 19:02 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 3541« (Jack Of Shadows)
___________________________

>>>Аспекты это еще один функциональный механизм, который теперь болтами прикручивается к ООП.

Вопрос из одного только чистого любопытства.
А почему аспекты -- именно функциональный механизм?
Они как-то вытекают из принципа референциальной чистоты, как, например, возможность ленивых вычислений?
 AVC


№ 3567   26-03-2007 18:31 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 3563« (Илья Ермаков)
___________________________
Илья мы это уже слышали, в обсуждении конструкторов. Все через фабрики обьектов.
Действительно, при правильном проектировании проблем не бывает. :))
Так можно что хош отрицать. И конструктора, и аспекты, и сборшик мусора, и обработку исключений.
При правильном проектировании всего этого просто не должно быть :))



<<<... | 3586—3577 | 3576—3567 | 3566—3557 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 269


Добавить свое сообщение

Отслеживать это обсуждение

Дополнительная навигация:
Количество сообщений на странице

Порядок сортировки сообщений
Новое сообщение вверху списка (сетевая хронология)
Первое сообщение вверху списка (обычная хронология)

Перейти на конкретную страницу по номеру
  
Время на сайте: GMT минус 5 часов

Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter.
Функция может не работать в некоторых версиях броузеров.

Web hosting for this web site provided by DotNetPark (ASP.NET, SharePoint, MS SQL hosting)  
Software for IIS, Hyper-V, MS SQL. Tools for Windows server administrators. Server migration utilities  

 
© При использовании любых материалов «Королевства Delphi» необходимо указывать источник информации. Перепечатка авторских статей возможна только при согласии всех авторов и администрации сайта.
Все используемые на сайте торговые марки являются собственностью их производителей.

Яндекс цитирования