Языки программирования. Практический сравнительный анализ


Языки программирования. Практический сравнительный анализ - стр. 249


Замечание. Наша классификация данных отражает характеристики данных, обычно охватываемые концепцией типа. Но данные различаются и по другим факторам. Один из них - отношение данного и модуля программы. Очень четко такое отношение отражено в языке Том [13] понятием  класса данного. Выделены глобальные данные, параметры, локальные и синхропараметры. Аналогичные понятия имеются, конечно, и в других ЯП.

Вопрос. Как Вы думаете, разумно ли объединить понятие класса и типа?

Подсказка. Не забудьте, в частности, о концепции уникальности типа.

 

4.18. Предварительный итог по основным абстракциям и модели А.

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

В отличие от традиционных ЯП (Фортрана, Алгола, Бейсика и др.), язык Ада ориентирован скорее на данные, чем на операции. В нем в первую очередь поддерживается такой стиль программирования, когда проектируется не столько программа, сколько комплекс программных услуг, опирающийся на ключевую структуру данных.

Решая наши модельные задачи в таком стиле, мы одновременно вникали в суть целой серии основных абстракций программирования (чисел, дискретных диапазонов, асинхронных процессов, массивов и записей, ссылок и динамических объектов).

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

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

Упражнение. Приведите примеры перечисленных видов связываний.

Вопрос. Как Вы думаете, чем отличается модель А от языка Ада?




- Начало -  - Назад -  - Вперед -