Уровень абстракции
-
Определение уровня абстракции
- Уровень абстракции скрывает детали подсистемы для упрощения взаимодействия и независимости от платформы.
- Уровень абстракции в информатике обобщает концептуальные модели или алгоритмы, не связанные с конкретной реализацией.
-
Упрощение и повторное использование
- Хороший уровень абстракции упрощает повторное использование, выделяя полезные концепции или шаблоны проектирования.
- Упрощение достигается за счет защиты пользователей от сложности лежащих в основе элементов.
-
Иерархия уровней абстракции
- Уровни абстракции могут быть объединены в иерархию, где каждый слой зависит от другого и требует функционирования нижележащих слоев.
-
Примеры программных моделей с уровнями абстракции
- Модель OSI включает семь уровней абстракции, каждый из которых инкапсулирует различные части цифровых коммуникаций.
- OpenGL предоставляет абстрактную графическую модель устройства для рисования графических элементов.
-
Компьютерная архитектура и уровни абстракции
- В компьютерной архитектуре система состоит из нескольких уровней абстракции: программное обеспечение, программируемая логика, оборудование.
- Программируемая логика часто рассматривается как часть аппаратного обеспечения, а логические определения могут быть частью программного обеспечения или встроенного ПО.
-
Ввод-вывод и абстракция
- В Unix операции ввода-вывода представлены как потоки байтов, что обеспечивает независимость от устройства.
- Операционная система выполняет преобразование для чтения и записи байтов на устройство.
-
Графика и абстракция
- Графические библиотеки, такие как OpenGL, предоставляют абстрактный интерфейс для рисования графических элементов, скрывая детали реализации устройства.
-
Дополнительные понятия
- API, ABI, компилятор и другие инструменты используются для абстрагирования исходного кода от машинного кода.
- Операционная система является уровнем абстракции между программой и оборудованием.
Полный текст статьи: