История изменений
Исправление monk, (текущая версия) :
В простых структурах данных и функциях этот принцип сам по себе выполняется.
Вот не сказал бы. В самопальных базах данных и даже сишных структурах нарушение SRP наблюдаю сплошь и рядом. Когда в одной таблице уживаются описание объекта, его использование в какой-то подсистеме и его связи. Например, «ФизическоеЛицо» с «ФИО», «ПоследняяПродажа» и «Должность».
В функциях тоже. save_form() с отображением изменений на экране и записью в базу — классический пример.
Всегда можно найти, почему две функции в интерфейсе - это чрезмерное нагромождение, потому нужно разделить функции на два интерфейса.
Интерфейс без ООП можешь считать списком экспортных функций в библиотеке. Или списком действий у бинарника.
Мне просто интересно узнать хотя бы одну модель из не класс-ориентированого софта, где применимы эти понятия вместе с принципом.
«Всё есть файл» (с).
Исходная версия monk, :
В простых структурах данных и функциях этот принцип сам по себе выполняется.
Вот не сказал бы. В самопальных базах данных и даже сишных структурах нарушение SRP наблюдаю сплошь и рядом. Когда в одной таблице уживаются описание объекта, его использование в какой-то подсистеме и его связи. Например, «ФизическоеЛицо» с «ФИО», «ПоследняяПродажа» и «Должность».
В функциях тоже. save_form() с отображением изменений на экране и записью в базу — классический пример.
Всегда можно найти, почему две функции в интерфейсе - это чрезмерное нагромождение, потому нужно разделить функции на два интерфейса.
Интерфейс без ООП можешь считать списком экспортных функций в библиотеке. Или списком действий у бинарника.
Мне просто интересно узнать хотя бы одну модель из не класс-ориентированого софта, где применимы эти понятия вместе с принципом.
«Все есть файл» (с).