Информация об изменениях

Сообщение Re: Базовое отличие ООП от ФП от 09.12.2024 12:50

Изменено 09.12.2024 12:54 Alekzander

Re: Базовое отличие ООП от ФП
Здравствуйте, Разраб, Вы писали:

Есть такая идея, её озвучил папа ООП, Алан Кей, сославшись на Боба Бартона, что все сущности [относящиеся к одному уровню вложенности] надо уравнивать в правах. И получится что-нибудь крутое.

Когда что-нибудь (например, функции) становятся, как это называют, "гражданами первого класса", это оно и есть.

Ну вот, если посмотреть с этой точки зрения, то идеи ООП и ФП — это разные права граждан первого класса, которыми наделили функции. То есть, разные аспекты уравнивания.

ООП это когда функциям (а не только переменным) позволили прописаться в структурах.

ФП это когда функциям (а не только переменным) позволили быть переданными как параметры. Причём, стало можно определять по месту (при вызове) не только выражения, вычисляемые как значения обычных переменных, но и выражения, задающие функции (т.е. лямбды) .
Re: Базовое отличие ООП от ФП
Здравствуйте, Разраб, Вы писали:

Есть такая идея, её озвучил папа ООП, Алан Кей, сославшись на Боба Бартона, что все сущности [относящиеся к одному уровню вложенности] надо уравнивать в правах. И получится что-нибудь крутое.

Когда что-нибудь (например, функции) становятся, как это называют, "гражданами первого класса", это оно и есть.

Ну вот, если посмотреть с этой точки зрения, то идеи ООП и ФП — это разные права граждан первого класса, которыми наделили функции. То есть, разные аспекты уравнивания.

ООП это когда функциям (а не только переменным) позволили прописаться в структурах.

ФП это когда функциям (а не только переменным) позволили быть переданными как параметры. Причём, стало можно определять по месту (при вызове) не только выражения, вычисляемые как значения обычных переменных, но и выражения, задающие функции (т.е. лямбды).

В сумме получается C#, кумбайя, кумбайя Поэтому не надо их противопоставлять.