[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Несколько вопросов вразброс



05.07.2012 00:59, Artem Chuprina пишет:
> Артём Н. -> debian-russian@lists.debian.org  @ Wed, 04 Jul 2012 22:16:01 +0400:
> 
>  >> Я бы ещё добавил, что ОО-парадигма рождается из желания перейти от
>  >> классической модели императивного вычислителя, как единого конечного
>  >> автомата, к модели многих изолированных конечных автоматов, взаимодействующих
>  >> через чётко ограниченные интерфейсы. Точно так же в электронике от "паука"
>  >> на рассыпухе, пришли сначала к модульным схемам, а потом к ИС.
>  АН> Ну и? Это естественный, эволюционный процесс. Разве должно быть иначе?
> Естественный эволюционный процесс развивается параллельно по нескольким
> веткам.  В данном случае это существенно.
По каким? Я не очень понял, что здесь существенно...

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

>  АН> Объекты могут быть независимыми сущностями (собственно, так и есть,
>  АН> если они строго через интерфейсы взаимодействуют). Как объект
>  АН> реализован внутри - не важно (например, это может быть
>  АН> функциональная программа), порядок их взаимодействия тоже не очень
>  АН> важен (или он регулируется самими объектами).  Ну, возможно назвать
>  АН> это какой-нибудь сопрограммой, например, а не объектом. Но суть от
>  АН> этого разве поменяется?
> 
> Все это можно сделать.  Увеличение пользы где?  Если у тебя
> функциональная программа уже есть, то зачем тебе объект в виде
> функциональной программы?  Чего тебе в языке до введения объектов не
> хватало?
Хз. Просто я толком не знаю других парадигм. Объект мне кажется достаточно
простым и ясным. Например, функция не хранит данные, как объект...

> И так далее.  В итоге ты начинаешь вносить в язык, обладающий
> достаточной выразительной силой, парадигму, которая выразительную силу
> языка не увеличивает, а при неаккуратном употреблении и уменьшает.  А
> смысл?
Сейчас вы говорите так. А если вспомнить про Perl..? :-)


Reply to: