![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
sidiakin |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 90 Регистрация: 16.10.2005 |
Вот появился новый яп GO и там нет поддержки ООП. Этож получается что ООП себя не оправдало?
|
|||
|
||||
irinazanuda |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 911 Регистрация: 23.6.2010 |
У гламурной, великовозрастной, но "косящей под лолитку" и оттого слегка шепелявящей поэтессы, берут интервью: - А муза у вас есть? - Ох, - вздыхает поэтесса, - а муза у меня нет... Добавляет, после слезливой паузы: - Вот такая в зизни зопа! |
|||
|
||||
CompWorm |
|
|||
![]() Допеределыватель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1689 Регистрация: 6.12.2004 Где: / |
посерчай по форуму, уже обсуждалось, что ООП - это лишь инструмент, при том не всегда нужный. например (Мне) чисто математические задачи удобно решать без ООП. если верит твоим словам, то видимо конкретно в ГО он не нашел применения. Это сообщение отредактировал(а) CompWorm - 14.8.2013, 02:37 |
|||
|
||||
ТарасАтавин |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 26.8.2013 |
ООП - парадигма. Не всегда нужная, но часто необходимая.
Это сообщение отредактировал(а) ТарасАтавин - 11.9.2013, 20:25 -------------------- Не так всё плохо, как оно есть на самом деле. |
|||
|
||||
Wowa |
|
|||
Эксперт ![]() Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград |
Не для всех целей ООП нужно.
|
|||
|
||||
ТарасАтавин |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 26.8.2013 |
Нафиг ООП в сиквеле? Или в прологе? В то же время есть задачи, которые проще решить в объектной парадигме, чем в любой другой. Не для всех целей? Эйси. И для таких целей есть языки или с поддержкой ООП в числе других парадигм, или вообще без поддержки ООП. Но для некоторых то целей нужна.
-------------------- Не так всё плохо, как оно есть на самом деле. |
|||
|
||||
CompWorm |
|
|||
![]() Допеределыватель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1689 Регистрация: 6.12.2004 Где: / |
ТарасАтавин, повторюшка дядя хрюшка
![]() |
|||
|
||||
k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 |
-------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
Bulat |
|
|||
![]() татарский Нео ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 22.3.2006 Где: Альметьевск |
Разработчки Erlang: "What is OOP?". ![]() -------------------- менеджер по кодеврайтингу ![]() |
|||
|
||||
ТарасАтавин |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 26.8.2013 |
Объясните мне, каким боком прикрутить ООП, например, к прологу, эрлангу, или к сиквелу? Или как исключить ООП из умл?
Это сообщение отредактировал(а) ТарасАтавин - 6.12.2013, 06:37 -------------------- Не так всё плохо, как оно есть на самом деле. |
|||
|
||||
Bulat |
|
|||
![]() татарский Нео ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 22.3.2006 Где: Альметьевск |
К эрлангу точно никак. Там просто нет такого понятия - переменная. Декларативное программирование. -------------------- менеджер по кодеврайтингу ![]() |
|||
|
||||
ТарасАтавин |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 26.8.2013 |
Вика утверждает, что функциональное. А декларативное - это пролог.
-------------------- Не так всё плохо, как оно есть на самом деле. |
|||
|
||||
Bulat |
|
|||
![]() татарский Нео ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 22.3.2006 Где: Альметьевск |
это подмножество, множества, которое называется Есть парадигма, которая называется - декларативное программирование. В нее входит и функциональное и логическое программирование(пролог) ![]() -------------------- менеджер по кодеврайтингу ![]() |
|||
|
||||
k0rvin |
|
||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 |
Это смотря как посмотреть.
Это не мешает. =)
-------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||||||
|
|||||||||
Bulat |
|
|||
![]() татарский Нео ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 22.3.2006 Где: Альметьевск |
Мне довелось маленько пописать на эрланге, а не только смотреть. =) А полиморфизм был и "до ООП". Можно взять любой процедурный ЯП и своими силами реализовать. И как же пример, типа межпроцессового взаимодействия, раскрывает ООП?? ООП в эрланге нет, но это не значит, что задачи решаемы путем ООП(императивного программирования) невозможно решать путем декларативного. Об это кстати и статья. Просто разные подходы к решению задач. А вообще, отсутствие именно такого понятия как переменная иногда о-о-очень мешает, вот там классы, объекты - не так, а перемнная все же бывает нужна. ![]() -------------------- менеджер по кодеврайтингу ![]() |
|||
|
||||
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. |