Чтение онлайн

на главную - закладки

Жанры

Технологии программирования

Костерин В В

Шрифт:

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

• Первоначально алгоритм или эвроритм должен представлять одну типовую структуру СЛЕДОВАНИЕ (одно действие со смыслом "выполнить все действия программы"). Далее до достижения элементарных действий (элементарных операторов языка программирования или элементарных операций) отдельные структуры СЛЕДОВАНИЕ декомпозируются с соблюдением принципа от общего к частному одной из трех стандартных структур: ЦЕПОЧКА

СЛЕДОВАНИЙ; ЦЕПОЧКА АЛЬТЕРНАТИВ; ПОВТОРЕНИЕ.

• Переход на новый язык программирования рекомендуется начинать с разработки стандарта кодирования типовых вычислительных структур.

• Алгоритм во многом определяется структурой данных.

• Тесты — необходимый атрибут разработки алгоритма.

• Обобщающий тест или тесты — минимальный набор тестовых данных, охватывающих все возможные случаи вычислений.

• Алгоритмы из старых книг лучше понимаются после их рефакторинга.

КОНТРОЛЬНЫЕ ВОПРОСЫ

1. Перечислите основные недостатки каждого из способов описания алгоритмов.

2. Что такое функциональное описание?

3. Для чего предназначена проектная процедура разработки функциональных описаний?

4. Изложите требования к способу мышления пользователя проектной процедурой разработки функциональных описаний.

5. В каких случаях программисты могут применять проектную процедуру?

6. В каких случаях не программисты могут применять проектную процедуру?

7. Каковы основные характеристики структур СЛЕДОВАНИЕ, АЛЬТЕРНАТИВА и ПОВТОРЕНИЕ?

8. Каков порядок основных шагов (этапов) выполнения проектной процедуры?

9. Приведите пример описания внешних и внутренних данных программы.

10. Зачем нужна модель "черного ящика"?

11. Назовите тесты, разрабатываемые до программирования. Назначение. Содержание. Формы.

12. Назовите признаки структуры ЦЕПОЧКА СЛЕДОВАНИЙ.

13. Назовите порядок детализации одиночного СЛЕДОВАНИЯ.

14. Назовите порядок детализации ЦЕПОЧКИ СЛЕДОВАНИЙ.

15. Назовите признаки структур вида АЛЬТЕРНАТИВА.

16. Назовите порядок детализации ЦЕПОЧКИ АЛЬТЕРНАТИВ.

17. Запишите пример кодировки альтернатив с одним и двумя действиями.

18. Запишите пример кодировки альтернатив с тремя и более действиями.

19. Назовите признаки структуры ПОВТОРЕНИЕ.

20. Назовите порядок детализации структур универсальных циклов ДО и ПОКА.

21. Запишите пример кодировки структуры НЕУНИВЕРСАЛЬНЫЙ ЦИКЛ-ДО.

22. Запишите пример кодировки структур УНИВЕРСАЛЬНЫЕ ЦИКЛЫ ДО и ПОКА.

23. Как производится доказательство корректности алгоритмов при выполнении проектной процедуры.

24. Дополните описание процесса "Кипячение воды в чайнике" наглядными рисунками.

Глава 6

АРХИТЕКТУРА ПРОГРАММНЫХ СИСТЕМ

6.1. ПОНЯТИЕ АРХИТЕКТУРЫ ПРОГРАММНОЙ СИСТЕМЫ

Разработка архитектуры системы — это процесс разбиения большой системы на более мелкие части. Для обозначения этих частей придумано множество названий: программы, компоненты, подсистемы…

Процесс разработки архитектуры — этап, необходимый при проектировании систем или комплексов, но необязательный при

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

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

Примеры систем: ОС, СУБД, система продажи авиабилетов и др.

Примеры программ: редактор текстов, компилятор, программы посылки запросов от кассира и др.

Понятие архитектуры программной системы можно проиллюстрировать на следующем примере. Пусть имеется на неком предприятии некая САПР. Допустим, что предприятие достаточно крупное, и САПР будет являться целым комплексом различных программных продуктов, причем зачастую различных производителей. Архитектурой этой системы будет являться описание связей этих программных средств в одно целое. Глазами программиста: САПР — комплекс комплексов программ.

6.2. СИСТЕМЫ ИЗ ОТДЕЛЬНЫХ ПРОГРАММ

Программная система может состоять из отдельных разработанных разными организациями выполняемых программ. Объединение функций этих программ в целую единую программу может привести к нехватке оперативной памяти машины, а сама разработка может быть экономически неоправданной.

Близкий аналог этой системы — система, управляемая командным файлом. Простейшая архитектура такой системы реализуется последовательным вызовом каждой из программ. Программы обмениваются данными через файлы, записанные на диске, или через элементы данных, которые находятся в оперативной памяти ЭВМ по известным абсолютным адресам.

Уже в конце 70-х годов этим способом можно было быстро реализовать весьма удобный ввод данных в программу. Применительно к более поздней операционной системе MS DOS достаточно было написать текстовый файл maket.txt с текстами пояснений сути данных и символом "?" обозначить поля вводимых данных. Далее готовился командный файл с последовательностью команд:

1) удаление файла work.txt с диска;

2) копирование файла maket.txt в файл work.txt;

3) запуск готовой программы текстового редактора с параметром work.txt;

4) запуск программы пользователя обработки данных (входная информация программы — файл work.txt, выходная информация программы — файл result.txt);

5) запуск готовой программы просмотра текстовых файлов с параметром result.txt.

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

Поделиться:
Популярные книги

Ненаглядная жена его светлости

Зика Натаэль
Любовные романы:
любовно-фантастические романы
6.23
рейтинг книги
Ненаглядная жена его светлости

Кодекс Крови. Книга IХ

Борзых М.
9. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга IХ

В теле пацана 6

Павлов Игорь Васильевич
6. Великое плато Вита
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
В теле пацана 6

Кодекс Охотника. Книга XV

Винокуров Юрий
15. Кодекс Охотника
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XV

Брак по-драконьи

Ардова Алиса
Фантастика:
фэнтези
8.60
рейтинг книги
Брак по-драконьи

Горькие ягодки

Вайз Мариэлла
Любовные романы:
современные любовные романы
7.44
рейтинг книги
Горькие ягодки

Идеальный мир для Лекаря 6

Сапфир Олег
6. Лекарь
Фантастика:
фэнтези
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 6

Эксперимент

Юнина Наталья
Любовные романы:
современные любовные романы
4.00
рейтинг книги
Эксперимент

В теле пацана

Павлов Игорь Васильевич
1. Великое плато Вита
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
В теле пацана

Кодекс Крови. Книга III

Борзых М.
3. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга III

Шестое правило дворянина

Герда Александр
6. Истинный дворянин
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Шестое правило дворянина

Третий. Том 3

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Третий. Том 3

Боги, пиво и дурак. Том 3

Горина Юлия Николаевна
3. Боги, пиво и дурак
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Боги, пиво и дурак. Том 3

Live-rpg. эволюция-4

Кронос Александр
4. Эволюция. Live-RPG
Фантастика:
боевая фантастика
7.92
рейтинг книги
Live-rpg. эволюция-4