Объекты (классы) – не структуры данных ... Использование объектов в качестве структур данных – признак плохого проектирования ... Извне вам доступны только методы (функции), поэтому объекты про поведение, а не состояние ... ORM не отображают реляционные данные на объекты. Они отображают реляционные данные на структуры данных. Эти структуры – не объекты. Объекты группируют поведение, а не данные ... Функциональные программы, как и объектно-ориентированные являются композицией функций преобразования данных ... Термин «переменная» вообще не применим к функциональным ЯП, потому что однажды присвоив значение его нельзя изменить ... Апологеты ФП часто указывают на то что функции – объекты первого класса ... Ключевое отличие не в этом, а в отсутствии удобного оператора присваивания ... ООП навязывает дисциплину в работе с указателями на функции ...https://habr.com/ru/post/338136
У полиморфизма всего одно преимущество, но оно значительно. Это инверсия исходного кода и рантайм-зависимостей ... рантайм-зависимости и зависимости на уровне исходного кода однонаправленны. Вызывающий модуль зависит от вызываемого модуля. Но в случае полиморфизма вызывающий модуль все еще зависит от вызываемого в рантайме, но исходный код вызываемого модуля не зависит от исходного кода вызываемого модуля. Вместо этого оба модуля зависят от полиморфного интерфейса. Эта инверсия позволяет вызываемого модулю вести себя как плагину. Действительно, плагины так и работают. Архитектура плагинов крайне надежна, потому что стабильные и важные бизнес-правила могут храниться отдельно от подверженных изменениям и не столь важных правил ...
Секции, содержащие прямое изменение состояния, могут быть отделены от многопоточного доступа ... все принципы и паттерны.
Лаборатория анализа и синтеза. Ретроспектива и перспектива эпистемологического анархизма как концептуального плюрализма и радикального конструктивизма, позитивизма и прагматизма. Интеллектуальная практика культуры космополитизма. Метасемантика как идентификация метамодерна. Дидактическая кодификация. Метамоделирование. Лингва франка - интерфейс.
понедельник, 20 апреля 2020 г.
OO VS FP
Подписаться на:
Комментарии к сообщению (Atom)
Принцип единственной ответственности
ОтветитьУдалитьПринцип открытости/закрытости
Принцип подстановки Барбары Лисков
Принцип разделения интерфейса
Принцип инверсии зависимостей
https://ru.wikipedia.org/wiki/SOLID_(объектно-ориентированное_программирование)
Рассмотреть адресацию и контент ... все упирается в распределение памяти!
ОтветитьУдалитьhttps://www.semanticscholar.org/paper/Extended-Sparse-Distributed-Memory-and-Sequence-Snaider-Franklin/20298cddb815e5bcbc055415c6a62865c076b3b9
Все-таки эт слабое обощение. Все данные. И объекты и процессы. И все это структуры.
ОтветитьУдалитьhttps://sites.google.com/view/metatronix/библиотека/берс