Тема 7.Основные конструкции программирования. Структурное программирование. Процедурное программирование. Объектно-ориентированное программирование.
Язы́к программи́рования — формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, задающих внешний вид программы и действия, которые выполнит исполнитель (компьютер) под ее управлением.
Со времени создания первых программируемых машин человечество придумало более двух с половиной тысяч языков программирования. Каждый год их число увеличивается. Некоторыми языками умеет пользоваться только небольшое число их собственных разработчиков, другие становятся известны миллионам людей. Профессиональные программисты иногда применяют в своей работе более десятка разнообразных языков программирования.
Создатели языков по-разному толкуют понятие язык программирования. К наиболее распространённым утверждениям, признаваемым большинством разработчиков, относятся следующие:
Функция: язык программирования предназначен для написания компьютерных программ, которые применяются для передачи компьютеру инструкций по выполнению того или иного вычислительного процесса и организации управления отдельными устройствами.
Задача: язык программирования отличается от естественных языков тем, что предназначен для передачи команд и данных от человека к компьютеру, в то время как естественные языки используются для общения людей между собой. Можно обобщить определение «языков программирования» — это способ передачи команд, приказов, чёткого руководства к действию; тогда как человеческие языки служат также для обмена информацией.
Исполнение: язык программирования может использовать специальные конструкции для определения и манипулирования структурами данных и управления процессом вычислений.
Структу́рное программи́рование — методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков. Предложена в 70-х годах XX века Э. Дейкстрой, разработана и дополнена Н. Виртом.
В соответствии с данной методологией
Любая программа представляет собой структуру, построенную из трёх типов базовых конструкций:
последовательное исполнение — однократное выполнение операций в том порядке, в котором они записаны в тексте программы;
ветвление — однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия;
цикл — многократное исполнение одной и той же операции до тех пор, пока выполняется некоторое заданное условие (условие продолжения цикла).
В программе базовые конструкции могут быть вложены друг в друга произвольным образом, но никаких других средств управления последовательностью выполнения операций не предусматривается.
Повторяющиеся фрагменты программы (либо не повторяющиеся, но представляющие собой логически целостные вычислительные блоки) могут оформляться в виде т. н. подпрограмм (процедур или функций). В этом случае в тексте основной программы, вместо помещённого в подпрограмму фрагмента, вставляется инструкция вызова подпрограммы. При выполнении такой инструкции выполняется вызванная подпрограмма, после чего исполнение программы продолжается с инструкции, следующей за командой вызова подпрограммы.
Разработка программы ведётся пошагово, методом «сверху вниз».
Сначала пишется текст основной программы, в котором, вместо каждого связного логического фрагмента текста, вставляется вызов подпрограммы, которая будет выполнять этот фрагмент. Вместо настоящих, работающих подпрограмм, в программу вставляются «заглушки», которые ничего не делают. Полученная программа проверяется и отлаживается. После того, как программист убедится, что подпрограммы вызываются в правильной последовательности (то есть общая структура программы верна), подпрограммы-заглушки последовательно заменяются на реально работающие, причём разработка каждой подпрограммы ведётся тем же методом, что и основной программы. Разработка заканчивается тогда, когда не останется ни одной «затычки», которая не была бы удалена. Такая последовательность гарантирует, что на каждом этапе разработки программист одновременно имеет дело с обозримым и понятным ему множеством фрагментов, и может быть уверен, что общая структура всех более высоких уровней программы верна. При сопровождении и внесении изменений в программу выясняется, в какие именно процедуры нужно внести изменения, и они вносятся, не затрагивая части программы, непосредственно не связанные с ними. Это позволяет гарантировать, что при внесении изменений и исправлении ошибок не выйдет из строя какая-то часть программы, находящаяся в данный момент вне зоны внимания программиста.
Функциональное программирование объединяет разные подходы к определению процессов вычисления на основе достаточно строгих абстрактных понятий и методов символьной обработки данных. Сформулированная Джоном Мак-Карти (1958) концепция символьной обработки информации компьютером восходит к идеям Черча и других математиков, известным как лямбда-исчисление с конца 20-х годов XX века. Выбирая лямбда-исчисление как теоретическую модель, Мак-Карти предложил рассматривать функции как общее базовое понятие, к которому достаточно естественно могут быть сведены все другие понятия, возникающие при программировании. Существуют различия в понимании функции в математике и функции в программировании, вследствие чего нельзя отнести Си-подобные языки к функциональным, использующим менее строгое понятие. Функция в математике не может изменить вызывающее её окружение и запомнить результаты своей работы, а только предоставляет результат вычисления функции.
Процедурное (императивное) программирование является отражением архитектуры традиционных ЭВМ, которая была предложена фон Нейманом в 1940-х годах. Теоретической моделью процедурного программирования служит алгоритмическая система под названием Машина Тьюринга.
Процедурный язык программирования предоставляет возможность программисту определять каждый шаг в процессе решения задачи. Особенность таких языков программирования состоит в том, что задачи разбиваются на шаги и решаются шаг за шагом. Используя процедурный язык, программист определяет языковые конструкции для выполнения последовательности алгоритмических шагов. Процедурные языки программирования Ada,Basic, Си, КОБОЛ, Фортран, Модула-2, HAL/S, Pascal, ПЛ/1, Рапира, REXX.
Динамический язык позволяет определять типы данных и осуществлять синтаксический анализ и компиляцию «на лету», непосредственно на этапе выполнения. Динамические языки больше подходят для быстрой разработки приложений.
К динамическим языкам относятся: Perl, Tcl, Python, PHP, Ruby, Smalltalk, JavaScript. Visual Basic также обладает некоторыми динамическими чертами.
Объектно-ориентированный язык программирования (ОО-язык) — язык, построенный на принципах объектно-ориентированного программирования.
В основе концепции объектно-ориентированного программирования лежит понятие объекта — некоей субстанции, которая объединяет в себе поля (данные) и методы (выполняемые объектом действия).
- Учебно-методический комплекс дисциплины для обучающегося «Информатика» для всех специальностей
- Силлабус дисциплины для студентов
- 1. Информация о дисциплине
- 2. Краткое описание дисциплины.
- 3. Пререквизиты дисциплины
- 4. Постреквизиты дисциплины
- 5. Календарно-тематический план.
- 6. Литература для изучения
- 7. Критерии оценки
- 8. Требования преподавателя
- 2. Тезисы лекций
- Тема 1. Информатика – предмет и задачи. Основные категории и понятия информатики
- Роль информатики в информационном обществе
- Тема 2. Начала общей теории информации. Понятие информации.
- Тема 3. Арифметические основы информатики. Формы представления информации. Системы счисления. Действия в различных системах счисления.
- Тема 4. Логические основы информатики
- Тема 5 . Архитектура персонального компьютера. Информационно-логические основы построения
- Тема 6. Алгоритмические основы информатики
- 6.1 Понятие алгоритма, его основные свойства
- 6.2. Машина Тьюринга и машина Поста
- Устройство машины Тьюринга
- Описание машины Тьюринга
- Тема 7.Основные конструкции программирования. Структурное программирование. Процедурное программирование. Объектно-ориентированное программирование.
- Тема 8. Состояние и тенденции развития программного обеспечения
- Тема 9. Операционные системы. Роль операционной системы в организации работы пользователя на персональном компьютере. Операционные системы и их основные функции
- Классификация ос
- Тема 10. Операционная система ms-dos
- Тема 11. Операционные системы Windows. Концепция операционных систем Windows.
- Объекты Windows
- Тема 12. Сервисное программное обеспечение. Общие сведения об архивации файлов. Программы-архиваторы.
- Программы архивирования данных
- Тема 13. Прикладные программные продукты. Классификация прикладного программного обеспечения.
- Тема 14. Тестовый процессор ms Word
- 14.1. Система обработки текстов (основные возможности, классификация). Ms Word. Элементы экрана.
- Установка основных параметров шрифта
- 14.2. Оформление текста. Работа с таблицей. Вставка файла, рисунка. Редактор формул ms Equation.
- Математические операторы и операторы сравнения
- Тема 15. Табличный процессор ms Excel
- 15.1. Назначение основные возможности Excel. Элементы экрана
- Добавление пиктограмм в одно из пиктографических меню
- Рабочие таблицы Excel предназначены для анализа данных, представленных в строках и столбцах. Они хранятся в файлах, которые называются рабочими книгами.
- Правка Перейти адрес клетки переход в нужную клетку
- 15.2. Режим вычисления. Оформление таблиц. Оформление таблиц. Печать. Диаграмма.
- 15.3. Работа с большими таблицами. Справочная система ms Excel.
- Тема 16. Использование спп Power Point для создания бизнес плана. Информационные системы (ис). Создание презентации. Оформление.
- Тема 17. Основы технологии работы в субд ms Access
- Тема 18. Сеть Internet и ее применение. Основные понятия Internet. Программа Internet Explorer. Поиск информации. Поисковые системы. Почта.
- Тема 19. Компьютерные вирусы и приемы борьбы с ними (понятие компьютерного вируса, средства защиты, методика защиты).
- Лабораторная работа №4 Создание прайс-листа счёта
- Лабораторная работа №5 Статистические расчеты Microsoft Excel.
- Пуск – Программы - Microsoft Access
- 2.1.1 Запрос, отбирающий данные из одной таблицы по условию
- 2.2 Запросы, которые отбирают данные из нескольких таблиц
- 2.3 Модификация данных с помощью запросов
- 2.3.1 Запросы, которые изменяют значение группы записей
- Тема: Создание форм
- 3.1 Создание форм для просмотра и ввода данных
- 3.2.Создание форм с подчиненной формой
- Краткое описание семинарских и практических занятий (планы, задания для проведения семинарских и практических занятий, срсп, срс)
- Задания для самопроверки и подготовки к экзамену, в том числе тесты
- В) объединение
- 6. Перечень основной и дополнительной литературы, в том числе на электронных носителях
- Дополнительная литература
- Справочная литература
- Нормативная литература
- Интернет-источники
- Глоссарий