Re[5]: Недоучки по настоящему ООП не освоили (из-за Basic и
От: so5team https://stiffstream.com
Дата: 01.09.25 11:21
Оценка:
Здравствуйте, rg45, Вы писали:

S>>Речь не про проблему, а про определения и следование этим определениям.


R>А из какого определения (ООП или полиморфизма) следует, что полиморфное поведение должно быть реализовано только так, как показано у тебя в примере, а не, например, как в примере ниже?


R>Как по-мне, то это просто частный случай, а не нарушение каких-то общих требований.


А как по мне, так здесь есть откровенная тупизна и нежелание подумать хоть чуть-чуть за пределами привычного.

Вот в стартовом сообщении было сказано "настоящий ООП — был только в Smalltalk".
Попробуем посмотреть на это утверждение с позиции решения конкретной проблемы (мой исходный пример).
Эта проблема в SmallTalk не решается, хотя, казалось бы, мы же исключительно в рамках ООП находимся.
Т.е. типа "настоящий ООП" из SmallTalk-а не может помочь в чисто ООП-ной парадигме.

С другой стороны, есть язык Eiffel, в котором, емнип, этой проблемы нет как класса, т.к. там есть языковая фича по переименованию унаследованных методов. Что-то вроде:
class
  D
inherit
  A
    rename
      f as f_A
    end
  B
    rename
      f as f_B
    end
feature
  f_A
    do
      ...
    end
  f_B
    do
      ...
    end
end


При этом Eiffel, поскольку он не SmallTalk, а "настоящий ООП только в SmallTalk" -- значит настоящим ОО-языком типа быть не должен.
Зато эту самую проблему он решает искаропочными средствами без привлечения каких-либо промежуточных костылей.

Следовательно, к "настоящему ООП" из SmallTalk-а есть вопросики.

Но, блин, C++ники, сломя голову бросились защищать C++, типа "ну как же на нем такого не сделать, ну вот же ж у меня же ж..."
Тьфу, срамота.
Отредактировано 01.09.2025 11:30 so5team . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.