Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
vodnev.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
122.42 Кб
Скачать

3. Программные компоненты. Их разновидность. Основная целевая направленность.

Программные компоненты взаимодействуют друг с другом посредством API. При этом обычно компоненты образуют иерархию — высокоуровневые компоненты используют API низкоуровневых компонентов, а те, в свою очередь, используют API ещё более низкоуровневых компонентов.

Программные компоненты системы реализованы в виде отдельных самостоятельных подпрограмм и могут работать независимо. Компоненты данных системы являются данными прямого доступа. [1]

Программные компоненты системы программирования выполняются под управлением операционной системы наравне с прикладными программами пользователей. [2]

Программным компонентам системы базы данных компонент сИ - стемы TIS Directory ( справочник) будет играть активную роль, и при этом, вероятно, появится возможность реализовать коллективное параллельное использование метаданных. [3]

Программными компонентами системы являются: управляющая программа, программа-библиотекарь, редактор текстов, процессор, информатор.

Билет 23

1. Восстановление памяти. Указатели. Эффективное средство работы с динамической информации. Создание неизменяемого экземпляра объекта.

Когда используется выделение памяти через «кучу», необходимо обеспечить специальные средства для возврата памяти, которая больше не нужна.

Как и в случае с динамически изменяемыми типами данных (которые будут рассматриваться в главе 10), аргументы за и против сборки мусора основаны на противопоставлении эффективности и гибкости программного обеспечения. Автоматизация сборки мусора может быть дорогой (с точки зрения компьютерных ресурсов), и она требует от исполнительной системы управления памятью. С другой стороны, в системах, в которых управление динамической областью памяти поручается программисту, типичными являются следующие ошибки:

-Попытка использовать память, которая еще не выделена.

-Выделенная память больше никогда не освобождается (проблема, известная как утечка памяти).

-Попытка использовать память, которая уже была освобождена.

-Память освобождается двумя независимыми процедурами, что приводит к освобождению одного и того же участка дважды.

Указатели — эффективное средство работы с динамической информацией, и по этой причине они используются практически во всех объектно-ориентированных языках.

2. Синтаксис пересылки сообщений в С++. Переменная this.

концепции методов и сообщений применимы к языку С++, собственно методы и сообщения (как термины) редко используются в текстах по C++. Метод принято называть функцией — членом класса (member function); о пересылке сообщений говорят как о вызове функции-члена.

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

Если theCard описан как экземпляр класса Card, то следующий оператор приказывает игральной карте отобразить себя в заданном окне в точке с координатами 25 и 37:

theCard.draw(win, 25, 37);

Даже если аргументы не требуются, круглые скобки все равно нужны, чтобы отличить вызов функции-члена от обращения к полям данных. Нижеследующий код определяет, лежит ли карта лицевой стороной вверх:

if ( theCard.faceUp() )

{

...

}

else

{

...

}

Внутри класса специальная переменная this представляет собой ссылку на этот же класс. При этом ее нельзя использовать вне класса. Эта переменная обеспечивает доступ к переменным и методам класса внутри самого класса.

3. Быстрое макетирование.

Доступ к устройству быстрого макетирования, если устройство поддерживает спецификацию драйвера 3D принтера SolidWorks, а драйвер установлен в системе.

Чтобы получить доступ к устройству быстрого прототипирования:

Выберите Файл > Print3D, выберите параметры из указанных ниже и нажмите OK.

Доступные параметры зависят от драйверов устройства печати.

Билет 24

1. Интуитивное описание наследования. Подкласс, подтип и принцип подстановки. Подтипы и строгий контроль типов данных.

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

В объектно-ориентированном программировании подкласс — это класснаследующий некоторые (или все) свойства от своего суперкласса.

Для простоты можно считать подкласс одним из «вариаций» своего суперкласса, как, например, «Мэнкс — порода кошек», а «квадрат — вид прямоугольника»:

  • Кошка имеет мех, четыре лапы и хвост

    • Мэнкс не имеет хвоста, но зато обладает всеми остальными перечисленными характеристиками

  • Прямоугольник имеет четыре стороны, длины которых равны w (длина) и h (ширина)

    • Квадрат обладает всеми характеристиками прямоугольника, причём w = h

2. Инкапсуляция в традиционных и ООЯ.

Инкапсуляция (лат. in capsula) — механизм языка программирования, предоставляющий возможность обрабатывать несколько единиц данных как одну единицу. 

3. полиморфизм и структура.

В языках программирования и теории типов полиморфизмом называется единообразная обработка разнотипных данных.

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

термин «ситуативный полиморфизм» для описания полиморфных функций, вызываемых для аргументов разных типов, но реализующих различное поведение в зависимости от типа аргумента (называемых также перегруженными функциями и перегруженными операторами).

В языке Систруктура (struct) — композитный тип данныхинкапсулирующий без сокрытия набор значений[en] различных типов. Порядок размещения значений в памяти задаётся при определении типа и сохраняется на протяжении времени жизни объектов, что даёт возможность косвенного доступа (например, через указатели)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]