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

Раздельно компилируемая единица может содержать


6. Раздельно компилируемая единица может содержать конструкцию, задающую контекст:

with Text_IO;

Ada

separate(Main)

procedure R is



end R;

Как это можно использовать?



7. Следующая программа на языке Ada не компилируется; почему?

package P is

      type T is (А, В, С, D);

end Р;

Ada

with P;

procedure Main is

     X: Р.Т;

begin

    if X = P. A then ...end if;

end Main;

Существуют четыре способа решить проблему; каковы преимущества и недостатки каждого из них: а) use-конструкция, б) префиксная запись, в) renames (переименование), г) конструкция use type в языке Ada 95?

Глава 14

 

Объектно-ориентированное программирование

 

 

 

 

14.1. Объектно-ориентированное проектирование

 

В предыдущей главе обсуждалась языковая поддержка структурирования про­грамм, но мы не пытались ответить на вопрос: как следует разбивать програм­мы на модули? Обычно этот предмет изучается в курсе по разработке програм­много обеспечения, но один метод декомпозиции программ, называемый объ­ектно-ориентированным программированием (ООП), настолько важен, что со­временные языки программирования непосредственно поддерживают этот метод. Следующие две главы будут посвящены теме языковой поддержки ООП.

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

1. Принять от кассира место назначения заказчика и дату отправления.

2. Отобразить на терминале кассира список доступных рейсов.

3. Принять от кассира предварительный заказ на конкретный рейс.

4. Подтвердить предварительный заказ и напечатать билет.

    Эти требования, естественно, находят отражение в проекте, показанном на рис. 14.1, с модулем для каждой функции и «главным» модулем, который вызывает другие.


Содержание раздела