Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3768.doc
Скачиваний:
72
Добавлен:
13.11.2022
Размер:
15.23 Mб
Скачать

Глава 2. Программирование

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

А.П. Ершов

В жизни, в профессиональной деятельности человек встречается с множеством практических задач. Для решения большинства из них можно использовать мощный и надёжный помощник – компьютер. Решение задач с использованием компьютера состоит из нескольких этапов:

  1. постановка задачи;

  2. анализ объекта моделирования и построение информационной модели;

  3. алгоритмизация решения задачи – это выбор компьютерного исполнителя, выбор метода проектирования алгоритма, проектирование алгоритма. В этой работе мы предлагаем в качестве компьютерного исполнителя выбирать системы: Ершол, QBasic, Turbo Pascal, Turbo Delphi, Visual Basic.Net, Visual C#. Чаще всего алгоритм решения поставленной задачи на этом этапе описывается словесно или с использованием блок-схем;

  4. создание компьютерной модели – реализация алгоритма на компьютере, кодирование алгоритма для выбранного исполнителя;

  5. тестирование и отладка программы;

  6. анализ результатов моделирования;

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

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

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

Современными методологиями процедурного проектирования программ являются «Структурное программирование» и «Объектно-ориентированное программирование». Лучшими программистами 70-х годов (Дейкстра9, Вирт10, Хоар11 и др.) были разработаны строгие правила проектирования программ, которые получили название – структурная методология. Дейкстра в 1969 году на международной конференции впервые использовал термин «структурное программирование». Метод структурного программирования основан на предположении, что код в модуле легче пишется, читается, если он сконструирован из фиксированного набора базовых структур организации действий, управляющих структур, с ограниченным использованием оператора GOTO. Доказано, что организовать действия в любой сложной программе можно используя линейную комбинацию основных управляющих структур: следования, условных и циклических структур. Другим принципом структурной методологии является принцип «разделяй и властвуй», принцип декомпозиции. Декомпозиция используется для разбиения программы на компоненты (модули), которые затем могут быть объединены, позволяя решить основную задачу. Модуль12 – это конструкция, объединяющая и надежно скрывающая детали реализации определенной подзадачи, выполняемой модулем. Выполняемые локальные действия модулем должны быть гарантировано независимыми от влияния других частей основной программы при любых изменениях и коррекциях. Основные концепции структурного программирования: вся программа построена из модулей; модуль – это независимый блок, код которого физически и логически отделен от кода других модулей; каждый модуль имеет единственную точку входа/выхода; идентификаторы всех переменных и модулей должны быть смысловыми; идентификаторы, относящиеся к одному типу должны начинаться с одинакового префикса, указывающего этот тип; при кодировании использовать только стандартные управляющие конструкции; при оформлении программы использовать «ступенчатую» форму записи кода: вложенные операторы и серии команд, входящих в составные команды, при записи сдвигаются на несколько позиций влево относительно записи операторов, которым они принадлежат.

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

На практике при создании крупных проектов рекомендуется применять обе методологии разработки программ: «Структурное программирование» и «Объектно-ориентированное программи­рование». Целесообразно сначала применять объектно-ориен­тированный подход для создания общей иерархии объектов, отражающих сущность программируемой задачи, а затем использовать структурную методологию для упрощения разработки программного кода.

Схема взаимодействия пользователя и исполнителя

Как можно командовать исполнителем-инструментом? Почему составные команды организации действий в программах называются управляющими? Чтобы ответить на эти вопросы, учащиеся должны понимать, что программы составляются для компьютера, который без вмешательства человека может выполнять составленную программу, управляя исполнителем-инструментом (смотрите схему). Следовательно, в программе надо предусмотреть все возможные ситуации, возникающие при решении задачи, и запрограммировать какие команды компьютер должен отдать исполнителю-инструменту в возникающих ситуациях. Тогда при написании программ для компьютера и возникает необходимость в составных командах, управляющих командах организации действий: командах ветвления, командах цикла. Эти команды компьютер «научен» выполнять.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]