Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Структуризация информационной модели





 

Рассмотренная функциональная абстракция должна дополняться абстракцией данных.

В классических языках (Алгол) - три способа структуризации данных:

· типизация - средство разграничения видов данных и привязки к ним возможных операций - удобное средство контроля при компиляции и в период выполнения

· агрегатирование - составные типы (массивы, записи) - сокращение пространства имен, индексация однородных объектов

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

 

Первые два способа ортогональны к функциональной абстракции (т.е., никак не связаны с ней). Третий способ хорошо соответствует идее сокрытия излишней информации, но подходит только для промежуточных, короткоживущих данных, привязанных к одной процедуре (локальные переменные перестают существовать после выхода из процедуры!). Долговременные данные, общие для нескольких процедур, приходится объявлять глобальными для всех процедур. Их недостаток - опасность неправильного использования.

 

Предыстория и идея абстрактных типов данных (АТД)

 

Тип данных – это множество значений данных вместе с множеством операций, определенных на них. Вопрос 2. В ранних языках были только стандартные типы данных (integer, char и пр.). В Паскале и С появились типы, задаваемые программистом:

а) именуемые описания переменных стандартного типа (операторы type, typedef),

б) перечислимые типы и диапазоны (type, enum), где задается свое множество именуемых значений (отображаемых на подмножество целых констант). В обоих случаях определяются производные типы, наследующие множество операций базового типа. Естественное развитие: дать возможность программисту определять свои операции. Как? – описывая их процедурами. При этом любые другие операции запрещаются путем инкапсуляции (упрятывания) данных. Таким образом осуществляется абстракция данных, аналогичная функциональной абстракции.







Date: 2016-05-25; view: 432; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию