Языки программирования - концепции и принципы

Неограниченными приватными типами следует оставить


Неограниченными приватными типами следует оставить лишь «небольшие» объекты, которые, вероятно, не подверг­нутся другим изменениям, кроме добавления или изменения поля в записи.

    Обратите внимание, что если приватный тип реализован с помощью ука­зателя, то в предположении, что все указатели представлены одинаково, уже не важно, каков тип указуемого объекта. В языке Ada такое предположение фактически делается и, таким образом, указуемый тип может быть определен в теле пакета. Теперь изменение структуры данных благодаря косвенности доступа не требует даже перекомпиляции единиц с конструкцией with:

package Airplane_Package is

      type Airplanes is private;



private

type Airplanes_info;                           -- Незавершенное объявление типа

type Airplanes is access Airplanes_info;

end Airplane_Package;

package body Airplane_Package is

    type Airplanes_info is                    -- Завершение в теле

record

         Database: array(1..1000) of Airplane_Data;

         Current_Airplanes: Integer O..Database'Last;

end record;

end Airplane_Package;

ADT является мощным средством структурирования программ благодаря чет­кому отделению спецификации от реализации:

• Используя ADT, можно делать серьезные изменения в отдельных компо­нентах программы надежно, не вызывая ошибок в других частях про­граммы.

  • ADT может использоваться как инструмент управления разработкой: архитектор проекта разрабатывает интерфейсы, а каждый член группы программистов реализует один или несколько ADT.

• Можно выполнить тестирование и частичную интеграцию,   применяя вырожденные реализации отсутствующих тел пакетов.

В главе 14 мы подробнее поговорим о роли ADT как основы объектно-ори­ентированного программирования.

13.5. Как писать модули на языке C++

 

Язык C++ — это расширение языка С, и поэтому здесь тоже существует поня­тие файла как единицы структурирования программ.

Содержание  Назад  Вперед