Cтраница 4
Модульный принцип построения ППП ( модульное программирование) имеет ряд преимуществ: параллельная работа нескольких программистов над большой программой; упрощение сегментации, проектирования, изменения и тестирования больших программ; создание и широкое использование библиотек наиболее употребительных модулей. Основная трудность реализации модульного программирования связана с отсутствием четких правил вычленения модулей и их сопряжения. Эта задача обычно решается на основе инженерного анализа ПП. [46]
Рассматриваются структура и реализация системы модульного программирования МОПР, основными компонентами которой являются: программа-библиотекарь, процессор, управляющая программа, редактор, информатор, архивы, библиотеки модулей, файлы паспортов и информации. Приводятся примеры опытной эксплуатации системы. [47]
Отметим, что призыв к модульному программированию не нов. При создании концептуальной модели крупных операционных систем общего назначения, которые, как полагают сегодня, трудно поддерживать, модифицировать и отлаживать, модульность выступала одним из основополагающих принципов. [48]
В основу разработки системы положена технология модульного программирования, что во многом способствует совершенствованию профессиональной культуры, организации и упорядочению труда программистов. [49]
Я подчеркиваю важность функционального подхода, модульного программирования и эффективного кодирования потому, что работа доставляет J мне наслаждение, но в то же время меня вряд ли можно назвать работо-маном. Читателю, знакомому с математикой, можно предложить следующий эксперимент, подтверждающий мои мысли. Инженер входит в комнату и видит, что в углу горит огонь, а рядом лежит куча песка. Он засыпает огонь песком и выходит из комнаты. Физик в той же ситуации окружает огонь кольцом из песка и наблюдает явление. Математик же, поняв, что задача имеет решение, сразу выходит из комнаты. [50]
Программы, создаваемые в рамках концепции модульного программирования, в соответствии со сказанным выше должны быть стандартны, доступны различным пользователям. Так как не известно заранее, куда будет загружена такая программа, требуется реализация возможности ее загрузки и выполнения в произвольном месте памяти. [51]
Процедура обращения к страничной виртуальной памяти. [52] |
Сегментная организация находит широкое применение в модульном программировании, при котором с целью упрощения понимания, написания и контроля программы и отдельных ее частей для реализации каждой функции используется отдельный программный модуль. Модуль определяется функцией, которую он выполняет, а не размерами, которые могут быть разными для различных модулей. Сегментная организация виртуальной памяти позволяет каждому модулю занимать свою собственную сплошную область памяти, тогда как при страничной организации модуль разбивается на страницы. [53]
При программировании задачи был использован весь арсенал модульного программирования: передача параметров, переменные связи, общие области. Обратим внимание еще раз на последовательность действий. Вначале выявляется наиболее общая схема - функциональная структура, на основе которой фиксируются модули и устанавливаются связи модулей по управлению. Затем строится таблица информационных связей модулей, устанавливающая связи модулей по данным. Эга таблица является незаменимым средством при конкретизации модулей на псевдокоде. [54]