Сложный тип
Сложный (составной, композитный) тип — тип данных, объекты (переменные или постоянные) которого имеют внутреннюю структуру, доступную программисту.
В разных языках программирования набор базовых сложных типов может несколько отличаться (чаще по названию и деталям реализации). Есть, однако, объективные критерии — однотипность элементов и способ доступа, позволяющие выделить главные представители сложных типов (названия приводятся на примере Pascal, в котором Н.Вирт наиболее чётко сформулировал эти идеи).
- Массив (
array) — элементы только однотипные, доступ произвольный; - Запись (
record) — элементы возможно разных типов, доступ произвольный; - Файл (
file) — элементы однотипные, доступ последовательный (не путать с дисковым файлом).
Этот список не включает всех предопределённых в языках типов, но он отражает большинство моделируемых программистами структур данных.
Также на границе 1960—1970-х годов появилась возможность произвольного конструирования нужных структур из небольшого набора предопределённых типов. Чем адекватнее программист смоделировал обрабатываемые данные в рамках такого «конструктора», тем безошибочнее и долговечнее будет разработанная программа.