![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
CompWorm |
|
|||
![]() Допеределыватель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1689 Регистрация: 6.12.2004 Где: / |
||||
|
||||
k0rvin |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 |
Я выделил главное.
Этот пример не о межпроцессном взаимодействии, а об изменении внутреннего состояния процесса: переменная N меняет свое значение после обработки каждого поступившего сообщения. Поскольку обмен сообщениями считается ключевым в ООП по Кею, а в Эрланге этот обмен присутствует в избытке, получаем, что Эрланг вполне себе объектно-ориентирован "искаробки". -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||||
|
|||||||
Bulat |
|
|||
![]() татарский Нео ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 22.3.2006 Где: Альметьевск |
Ты просто выдернул из контекста наиболее подходящие строки и манипулируешь ими так, как тебе удобно ![]() Ключевые черты ООП: 1. Инкапсуляция 2. Наследование 3. Полиморфизм Вот попробуй реализовать наследование в ерланге. ![]() Опять же выдернул из контекста, а как насчет того, что потому же Кею - Все является объектом?? -------------------- менеджер по кодеврайтингу ![]() |
|||
|
||||
k0rvin |
|
||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 |
Это не ключевые черты, а механизмы, присутствующие в некоторых реализациях. Ну да ладно. Модули. В приведенном примере "клиент" не может получить доступа к N. Делегирование. Да и вообще сомнительной полезности вещь. Что мне мешает посылать одинаковые сообщения разным (по реализации) процессам и получать разное поведение? Ничего.
Это идеалистическое утверждение, нет такого языка, где все является объектом. Из практических соображений. -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||||||
|
|||||||||
Bulat |
|
|||
![]() татарский Нео ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 22.3.2006 Где: Альметьевск |
Таким образом мы получаем, что и эрланг не язык ООП. Так об чем тогда речь?? ![]() -------------------- менеджер по кодеврайтингу ![]() |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб |
k0rvin, А С++ есть обмен сообщениями? Прям из коробки? Без всяких осовских API.
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 |
Да, пожалуйста, реализовывай в своих классах только метод void dispatch(Message *m); и будет тебе обмен сообщениями. При чем тут API ОС? -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб |
А Message это что (в каком файле инклюдится?) А dispatch это откуда? Просто моя коробка немного другая, наверное
![]() Мне всегда казалось, что без транспортного уровня смысла в сообщениях немного. А транспорт (средство доставки сообщений) и идентификацию адресатов-отправителей определяет нам ос. -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 |
Тип "Сообщение". Например в самом простом виде это *void. В любом. В каком смысле откуда? Откуда методы у классов берутся? При чем тут это все, если мы говорим о языке. Грубо:
-------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб |
"Из коробки" и "Давайте я тут прямо вот все напишу" - разные вещи. Не?
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 |
А что в таком случае должно значить "из коробки"? Специальные ключевые слова? Но зачем? Их и так довольно много. -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб |
Это я про то, что
Если вспоминать про "а я тут и сам все напишу", то можно вспомнить про язык Форт. Его никто даже и не подозревает в ООП'ности с инкапсуляцией и наследованием, однако на самом форте можно написать вполне себе ООП, со всеми необходимыми половыми признаками. Это я про то, что определения - они такие определения. -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 |
Потому что ООП не имеет единственно верного или хотя бы четкого определения и кроме SmallTalk есть еще Simula, от которой C++-ное ООП и идет. Спорить, какое ООП самое правильное, нет никакого желания, так что да, -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
Bulat |
|
|||
![]() татарский Нео ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 22.3.2006 Где: Альметьевск |
![]() -------------------- менеджер по кодеврайтингу ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила раздела «Флейм» | |
|
Добро пожаловать в «Флейм». В разделе не действуют многие правила:
Строго запрещено:
Напоминаем о существовании волшебной кнопочки "Репорт". Если вы увидели сообщение, несовместимое с жизнью, просьба подвести на нее курсор и клацнуть левой клавишей мышки. Тем самым вы сможете призвать злого, но жутко справедливого джина-модератора, который нашлет порчу на злостного нарушителя. Кстати - счётчик сообщений здесь не растёт. Глас Винграда:
Глас Философии:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Sneg0k |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Флейм | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |