
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.67] |
![]() |
|
Страницы: (21) [1] 2 3 ... 20 21 ( Перейти к последнему сообщению ) |
Сообщ.
#1
,
|
|
|
Цитата Объектно-ориентированное программирование — чрезвычайно плохая идея, которая могла возникнуть только в Калифорнии. — Эдсгер Вибе Дейкстра Чем быстрее вы забудете ООП, тем лучше для вас и ваших программ |
Сообщ.
#2
,
|
|
|
А что такое ООП?
|
![]() |
Сообщ.
#3
,
|
|
ya2500, не читай. Автор прекрасный тролль, не более чем.
|
Сообщ.
#4
,
|
|
|
Qraizer, а ты знаешь, что такое ООП?
|
Сообщ.
#5
,
|
|
|
Может сразу перейдем к коммерческому коду?
|
![]() |
Сообщ.
#6
,
|
|
Знаю, D_KEY.
|
Сообщ.
#7
,
|
|
|
Я достаточно далёк от ООП, но хотелось бы и какого-то такого:
![]() ![]() class a; // суть описана. Я понимаю, что надо "class A{}; A a;". a.SetFunc( "getSqrt(x)", "return -sqrt(x);" ); b = a.GetFunc( "getSqrt", 4); // b = -2 А может даже: ![]() ![]() a.SetFunc(...) b = a.getSqrt(4); Добавлено И ещё: ![]() ![]() b = 4.getSqrt(a); |
Сообщ.
#8
,
|
|
|
Цитата D_KEY @ Никто не знает что такое ООП, потому что каждый обзывает этим термином то, что ему захочется. Для кого-то эрланг вполне себе ООП, а для кого-то и плюсы не ООП. Qraizer, а ты знаешь, что такое ООП? Добавлено Цитата Славян @ Я достаточно далёк от ООП, но хотелось бы и какого-то такого: ![]() ![]() class a; // суть описана. Я понимаю, что надо "class A{}; A a;". a.SetFunc( "getSqrt(x)", "return -sqrt(x);" ); b = a.GetFunc( "getSqrt", 4); // b = -2 А может даже: ![]() ![]() a.SetFunc(...) b = a.getSqrt(4); Добавлено И ещё: ![]() ![]() b = 4.getSqrt(a); Все что вы описали есть в Ruby. В смысле возможность динамически добавлять методы и то что все является объектами, включая базовые типы. Не особо такого хочется на самом деле. |
![]() |
Сообщ.
#9
,
|
|
Цитата Славян @ но хотелось бы и какого-то такого: Ога. Особенно весело будет, если строка в SetFunc будет генерироваться каким-либо методом, который тоже был сгенерирован через SetFunc ![]() |
Сообщ.
#10
,
|
|
|
Ну это так, первое, что пришло в голову.
![]() |
Сообщ.
#11
,
|
|
|
Цитата Славян @ Я достаточно далёк от ООП, но хотелось бы и какого-то такого: Интерпретировать и исполнять данные как код - не по фэншую. Но все же, если хочется можно скрестить лямбды, std::map и std::any. Да, можно будет выбирать и вызывать лямбды по текстовому ключу. Но, имхо, это изват и тормоза. Да и зачем все это? Добавлено В С++17 ввели std::optional ... Де жа вю! Из Раста скомуниздили штоле? ![]() |
Сообщ.
#12
,
|
|
|
Цитата applegame @ Никто не знает что такое ООП Неправда! Qraizer знает: Цитата Qraizer @ Знаю, D_KEY. Добавлено Цитата JoeUser @ В С++17 ввели std::optional ... Де жа вю! Из Раста скомуниздили штоле? ![]() Нет. Из раста вообще пока никто ничего еще не комуниздил. Рано. Был boost.optional. До того было во многих языках. Идет скорее из функционального программирования. Добавлено Цитата applegame @ Для кого-то эрланг вполне себе ООП, а для кого-то и плюсы не ООП. А для кого-то этот вообще с языком не связано. |
Сообщ.
#13
,
|
|
|
Цитата applegame @ Все что вы описали есть в Ruby. Да даже в C++ можно запилить что-то подобное. Проблема есть в возвращаемом значении, но можно что-нибудь придумать. |
![]() |
Сообщ.
#14
,
|
|
Цитата applegame @ Вероятно, ты имел в виду "знать ООП", а не "знать, что такое ООП". Что это такое, вполне себе чётко описано в определении, и оно языконезависимое. Другое дело, что любой язык предоставляет средства выражения ООП, по-разному отображающие эту парадигму на его грамматику. Включая те, которые вообще не поддерживают ООП какими-либо своими специальными конструкциями. И вот уметь это использовать – совсем другой вопрос. Никто не знает что такое ООП, потому что каждый обзывает этим термином то, что ему захочется. |
Сообщ.
#15
,
|
|
|
Цитата Qraizer @ Что это такое, вполне себе чётко описано в определении В каком? |