Автоматизация сбора и первичной обработки информации

80 данных. Каждый модуль существует независимо от других модулей. Между модулями имеется управляемый интерфейс. Предоставляемые Модулой возможности можно разделить на две группы. Во-первых, предоставляются возможности последовательного программирования, как и у Паскаля. Основным новшеством в Модуле явилась конструкция модуля для абстракции данных. Во-вторых, предоставляются конструкции для параллельного программирования в форме процессов и мониторов. В Модуле введена специальная нотация для описания процессов и обеспечения связи между ними с помощью специальных функций. Имеющийся в Модуле механизм межпроцессорной связи базируется на понятии монитора, позволяющего с помощью средств языка создавать модули взаимодействия с машинным оборудованием и управления периферийными устройствами. Исходной задачей Модулы был охват тех областей, в которых традиционно доминировало программирование на языке ассемблера. К 1980 году появились клоны языка Модула: процедурно – ориентированный Модула 2 и объектно – ориентированный Модула 3. В последнем в целях получения безопасного кода (как в Java и C#) исключено множественное наследование и перегрузка операторов. Ada. Язык Ada разрабатывался (в 1975 -79 гг.) специально для применения во встраиваемых системах и системах реального времени министерства обороны США. Обеспечивает получение высокой производительности за счет хорошо разработанных оптимизирующих компиляторов. Язык Ada дает прямой доступ к оборудованию и возможность вызова процедур на других языках ( что. однако, не приветствуется стандартом). Приложения получаются переносимыми за счет ежегодной аттестации компиляторов на удовлетворение стандарту. Однако, объектно – ориентированный подход на уровне языковых конструкций отсутствует. Отметим принципиальные отличия языка Ада от всех других языков программирования:  универсальность, включающая как ряд новых средств, предназначенных для создания больших и сверхбольших программных комплексов из модулей, так и традиционные средства с множеством технических усовершенствований;  поддержка методологии восходящей и нисходящей разработки программных комплексов за счет разделения спецификаций модулей и их реализаций; механизма раздельной компиляции и проверки правильности сопряжения модулей; концепции пакетов, поддерживающей абстрактные типы данных; концепции настройки как средства абстракции программ; концепции параллельно выполняемых модулей; средств взаимодействия с аппаратурой;  язык высокого уровня, спроектированный специально для разработки программ, работающих в реальном масштабе времени, предназначенных для управления объектами и встроенным спецоборудованием, обладающий при этом всеми средствами мощного языка общего назначения;  единственный сегодня действительно стандартизованный язык программирования, для которого, к тому же, имеется стандарты на средства поддержки разработок. Язык Ада предназначен, прежде всего, для разработки больших программных систем реального времени для встроенных компьютеров. Это, конечно, не отрицает его использования при решении задач вычислительного характера, системного программирования, параллельной обработки и т.д. Его можно рассматривать и как язык общего назначения, но направленность на разработку встроенного программного обеспечения все-таки превалирует. Программное обеспечение для встроенных систем должно работать быстро, обладать высокой точностью вычислений, занимать небольшую память. Но, и это самое главное, оно должно быть надежным. Одна из основных целей языка Ада как раз и заключается в повышении надежности программного обеспечения. В нем имеются средства, направленные на разработку больших программ повышенной надежности. С помощью этих средств большую программу можно разбить на небольшие легко обозримые модули, точно определить интерфейсы между ними, произвести

RkJQdWJsaXNoZXIy MTY0OTYy