Скачать книгу

и готовую продукцию, если они имеют существенных различий в их свойствах.

      Вариации структур данных и операций

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

      Например, система управления персоналом позволяет вам создавать новые поля в карточке сотрудника. Но при этом, система определяет, что должна существовать определенная таблица «карточка сотрудника», а каждый сотрудник должен быть идентифицирован табельным номером.

      Таблица «карточка сотрудника», поля «табельный номер», «ФИО» и пр. – это и есть предопределенная структура данных. Возможность увеличения или уменьшения универсальности – добавление полей, удаление и изменение полей, реструктурирование таблицы и пр. и является реализацией универсальности системы, а её возможность к изменениям является свойством вариативности системы.

      Вариативность касается как возможностей в обработке данных, так и возможностей в использовании структур данных. Рассмотрим эти две составляющие раздельно.

      Означает ли максимальная гибкость в операциях, что система должна отойти от какой-либо структурированности программного кода? Нет, не означает. Это вопрос относится к понятию полноты вычислимости по Тьюрингу. Известно, что машина Тьюринга обладает полнотой вычислимости, то есть она может реализовать любой алгоритм. Следовательно, чтобы достичь достаточной вариативности по обрабатываемым алгоритмам, наш агент должен иметь возможность реализовать машину Тьюринга.

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

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