Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Структуризация информационной модели
Рассмотренная функциональная абстракция должна дополняться абстракцией данных. В классических языках (Алгол) - три способа структуризации данных: · типизация - средство разграничения видов данных и привязки к ним возможных операций - удобное средство контроля при компиляции и в период выполнения · агрегатирование - составные типы (массивы, записи) - сокращение пространства имен, индексация однородных объектов · локализация - ограничение видимости данных внутри процедур - упрятывание деталей, сокращение пространства имен и предотвращение конфликта имен.
Первые два способа ортогональны к функциональной абстракции (т.е., никак не связаны с ней). Третий способ хорошо соответствует идее сокрытия излишней информации, но подходит только для промежуточных, короткоживущих данных, привязанных к одной процедуре (локальные переменные перестают существовать после выхода из процедуры!). Долговременные данные, общие для нескольких процедур, приходится объявлять глобальными для всех процедур. Их недостаток - опасность неправильного использования.
Предыстория и идея абстрактных типов данных (АТД)
Тип данных – это множество значений данных вместе с множеством операций, определенных на них. Вопрос 2. В ранних языках были только стандартные типы данных (integer, char и пр.). В Паскале и С появились типы, задаваемые программистом: а) именуемые описания переменных стандартного типа (операторы type, typedef), б) перечислимые типы и диапазоны (type, enum), где задается свое множество именуемых значений (отображаемых на подмножество целых констант). В обоих случаях определяются производные типы, наследующие множество операций базового типа. Естественное развитие: дать возможность программисту определять свои операции. Как? – описывая их процедурами. При этом любые другие операции запрещаются путем инкапсуляции (упрятывания) данных. Таким образом осуществляется абстракция данных, аналогичная функциональной абстракции. Date: 2016-05-25; view: 432; Нарушение авторских прав |