К началу 90-х годов нашего столетия уже сложились следующие виды технологий:
Сущность процедурного программирования заключается в первоначальной разработке отдельных частей программы, из которых собирается программа более высокого иерархического уровня. Отсюда ее второе название — «снизу-вверх».
Дальнейшим развитием этой технологии является модульное программирование. Первично разрабатываемыми элементарными частями программы являются модули. Модуль — универсальный элемент ПО, который может применяться самостоятельно, или в пакете программ. Универсальность модуля достигается за счет выполнения ряда требований при конструировании модулей.
Рассмотрим основные характеристики модуля.
Модуль состоит из тела модуля и его паспорта.
Паспорт модуля — совокупность важнейших внутренних и внешних характеристик, который включает следующие понятия:
1) идентификатор модуля (название);
2) язык программирования;
3) Списки аргументов промежуточных величин;
Стадии и этапы разработки программ
4) описание данных в терминах языка;
5) указатель схем реализации;
6) указатель зависимостей индексов;
7) список вызываемых подмодулей и библиотек;
8) указатель операторов ввода- вывода;
9) машинные ресурсы, необходимые для работы модуля;
10) наиболее существенные параметры, определяющие продолжительность расчетов.
Для реализации положительных возможностей модульной структуры модули должны обладать свойствами структурной замкнутости и функциональной определенности.
Структурная замкнутость заключается в независимости структуры всего пакета от конструкции отдельного модуля. Таким образом, модуль является элементом, внутреннее устройство которого не влияет на устройство прикладной программы в целом.
Функциональная определенность заключается в том, что каждый модуль предназначен для выполнения определенных функций, свойственных только данному модулю, который выполняет некоторый этап решения задачи, имеющий цельный, завершенный физический смысл.
Среди свойств модуля иногда называют и монолитность [6 прик прог], определяющую обязательную степень свободы, которой должен обладать любой модуль, т.е. не должны накладываться какие-либо ограничения на внутреннее устройство модуля.
Однако практика разработки сложных программ показала, что иногда трудно синтезировать эффективную модульную структуру — это привело к разработке технологии «сверху-вниз».
Алгоритм решения задачи с помощью, технологии «сверху-вниз» представляется в виде иерархической системы, элементы которой должны выбираться так, чтобы они по возможности соответствовали структурным единицам предметной области.
Структурное программирование позволяет достигать максимальной выразительности и восприимчивости программ, что значительно облегчает выявление и устранение ошибок и гарантирует более совершенную отладку. Одно из важнейших требований структурного программирования — редактирование текста на алгоритмическом языке высокого уровня, обеспечивающее надлежащую наглядность структуры программы.
Программа на делфи. Этапы создания прикладных программ.
Дальнейшее развитие и концептуальную завершенность идеи структурного программирования нашли в HIPO-технологии, которая предполагает сочетание принципов структурного программирования с другими элементами технологии программирования. Эта технология введена фирмой IBM и предполагает, кроме сочетания принципов «сверху-вниз» и структурного программирования, два других обязательных компонента: применения библиотек развития и принципа организации бригад (групп) программистов.
R-технология является сочетанием изложенных выше принципов с технологическим ПО, реализованным в виде специального программного комплекса программиста (RTK-комплекс). В отличие от выше рассмотренных технологий она органически включает использование ЭВМ для достижения целей различных технологических этапов: декомпозиции исходной программы, ее кодирования, отладки и разработки документации. Для описания структуры сложных программ R-технология предполагает использование специализированного R-языка, позволяющего описывать несколько иерархических уровней и имеет практически неограниченные возможности для распараллеливания программ.
Дальнейшее развитие вычислительной техники и вычислительной математики привело к тому, что акцент в программировании стал смещаться с процедур в сторону организации данных. Оказалось, что эффективная разработка сложных программ нуждается в действенных способах контроля правильности использования данных. Контроль должен осуществляться как на стадии компиляции, так и при прогоне программ, в противном случае, как показала практика, резко возрастают трудности создания крупных программных проектов. Отчетливое осознание этой проблемы привело к созданию таких языков программирования как Паскаля, Модулы-2, Си и др., имеющих более или менее развитые структуры данных.
Начиная с языка Симула-67, в программировании наметился новый подход, который получил название объектно-ориентированное программирование (ООП). Его руководящая идея заключается в стремлении связать данные с обрабатывающими эти данные процедурами в единое целое — объект. Характерной чертой объектов является инкапсуляция (объединение) данных и алгоритмов их обработки, в результате чего и данные и процедуры во многом теряют самостоятельное значение. Фактически ООП можно рассматривать как модульное программирование нового уровня, когда вместо во многом случайного, механического объединения процедур и данных акцент делается на их смысловую связь.
Какими мощными средствами располагает ООП наглядно демонстрирует, например, библиотека Turbo Vision для языка Турбо Паскаль.
Следует отметить, что преимущества ООП в полной мере проявляются лишь при разработке достаточно сложных программ. Более того, инкапсуляция придает объектам совершенно особое свойство «самостоятельности», максимальной независимости от остальных частей программы. Правильно сконструированный объект располагает всеми необходимыми данными и процедурами их обработки, чтобы успешно реализовать требуемые от них действия.
Попытки использовать ООП для программирования несложных алгоритмов, связанных например с расчетными вычислениями по готовым формулам, чаще всего выглядят искусственными нагромождениями ненужных языковых конструкций.
Основными принципами ООП являются инкапсуляция, наследование и полиморфизм. Их мы рассмотрим позднее.
Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:
Источник: studopedia.ru
Этапы разработки прикладных программ пользователя.
1. Постановка задачи. Характеристика решаемой задачи, описание входной, выходной и нормативно-справочной информации, описание контрольного примера. Характеристика выбранной программы:
-определение цели задачи
-установление состава и форм представления информации
-установление периодичности решения задачи
-установление взаимосвязи решаемой задачи с другими задачами
-определение условий прекращения задачи
-определение предпосылок автоматизации решения задачи
-определение форм и методов контроля достоверности информации.
-наименование входного сообщения
-установление источника информации
-установление формы информации
-определение сроков и частоты поступления информации
-классификация нормативно-справочной информации
-определение содержания справочников
-установление перечня выходных сообщений
-установление сроков выдачи сообщений
-определение периодичности выдачи сообщений
-определение получателей информации
Описание контрольного примера:
-описание порядка решения задачи
-описание всех способов решения задачи
-перечисление всех штатных и нештатных ситуаций, возникающих при решении задач и описание действий в каждом случае.
2. Экономико-математическое описание и выбор метода решения задачи. Обеспечивает её однозначное понимание пользователем и разработчиком программы. Используются математические, матичные и графические модели.
3. Алгоритмизация решения задачи. Разработка оригинального или адаптация уже известного алгоритма (точное предписание, определяющее вычислительный процесс, ведущий от начальных данных к конечному результату).
4. Составление и адаптация программы. Завершающий этап технологического процесса разработки программы. Процессы тестирования и отладки программы. Устранение ошибок.
АЛГОРИТМ: ОСНОВНЫЕ СВОЙСТВА, СПОСОБЫЗАДАНИЯ.
Алгоритм – это система точно сформулированных правил, определяющих процесс преобразования доступных исходных данных в желаемый результат за конечное число шагов.
Свойства алгоритма – это набор характеристик, атрибутов, отличающих алгоритм от любых других предписаний и обеспечивающих его автоматическое выполнение.
1. Дискретность – разбиение процесса обработки информации на более простые этапы.
2. Определённость (детерминированность) – характеризует однозначность выполнения каждого отдельного шага преобразования информации.
3. Результативность (конечность) – завершение работы алгоритма в целом за конечное число шагов.
4. Массовость – пригодность алгоритма для решения определённого класса задач.
Алгоритмизация – процесс сведения задач к последовательности этапов, выполняемых друг за другом так, что результаты предыдущих этапов используются при выполнении следующих.
Программа – этот тот же алгоритм, записанный на специальном алгоритмическом языке программирования, который может восприниматься в ЭВМ.
Исполнитель алгоритма – автоматическое устройство или человек, способный выполнить определённый набор команд.
Программирование – процесс теоретической и практической деятельности, связанной с созданием программ.
Язык программирования – формализованный язык для описания алгоритма решения задач на компьютере.
Способы задания алгоритма:
1. Словесный (без формул и таблиц).
2. Формульно-словесный (более компактный, словесные описания сочетаются с формулами).
3. Графический (представление алгоритма в виде блок-схемы).
4. Операторный (в виде последовательности операторов)
5. В виде таблицы решений (вспомогательный характер).
6. На алгоритмическом языке.
СТРУКТУРЫАЛГОРИТМОВ.
Основные структуры алгоритмов – ограниченный набор блоков и стандартных способов их соединения для выполнения типичных последовательностей действий.
1. Следование – последовательное расположение блоков и групп блоков, в программе –последовательное расположение операторов.
2. Разветвление – необходимость в зависимости от заданного условия выполнить или одно, или другое действие.
3. Обход – частный случай разветвления, когда одна из ветвей не содержит никакого действия.
4. Цикл «до» — необходимость выполнения какого-либо вычисления несколько раз до выполнения некоторого заданного условия.
5. Цикл «пока» — проверка условия производится до выполнения тела цикла.
6. Множественный выбор – обобщение разветвления, в зависимости от значений переменной I выполняется одно из нескольких действий.
7. Комбинированный – использование нескольких основных структур, комбинации которых даёт всё многообразие алгоритмов.
Источник: poisk-ru.ru
Процесс разработки прикладного программного обеспечения
Сегодня любой пользователь ПК регулярно использует в своей работе программное обеспечение. Даже обычное перемещение курсора – это тоже результат работы специального ПО. Как же происходит разработка программ, которые раскрывают перед пользователями массу возможностей?
Теоретические основы и разновидности
Итак, работа компьютера происходит за счет использования аппаратного и программного обеспечения. К первому относятся электронные компоненты и устройства, а ко второму – различные программы, которые необходимы для переработки данных и осуществления множества других действий. Таким образом, под прикладным ПО понимаются компьютерные программы, которые создаются для пользователя либо самим пользователем, позволяющие задавать компьютеру определенные задачи.
Основные разновидности и группы
Прикладное ПО делится на две группы – общего и профессионального назначения. К первой относятся:
- Текстовые редакторы;
- Электронные таблицы;
- Графические редакторы;
- Аудиоплееры;
- Игры;
- Переводчики и т.д.
Вторая группа включает:
- Электронные учебники;
- CAT-программы;
- СУБД;
- Системы видео- и аудиомонтажа;
- Бухгалтерские и финансово-аналитические системы и пр.
Основные этапы создания прикладного ПО
При работе над написанием прикладной программы реализуется ряд этапов, к числу ключевых среди которых относятся следующие:
Определение цели. Подразумевает установление характеристики выбранной задачи, описание информации и описание итогового примера.
17 декабря, 2015 / от ru-user Теги: по, прикладное программное обеспечение, разработка
Поделиться записью
- Поделиться Facebook
- Поделиться Twitter
- Поделиться LinkedIn
Источник: ru.intechcore.com