Скачать презентацию Системы программирования Средства создания программ Для создания Скачать презентацию Системы программирования Средства создания программ Для создания

lec_6_sem_2_inf.ppt

  • Количество слайдов: 12

Системы программирования Средства создания программ Системы программирования Средства создания программ

Для создания программы на выбранном языке программирования нужно иметь следующие компоненты: 1. Текстовый редактор Для создания программы на выбранном языке программирования нужно иметь следующие компоненты: 1. Текстовый редактор 2. Программа-компилятор переводится в машинный код. Компилятор обычно выдает промежуточный объектный код (двоичный файл, стандартное расширение. OBJ). 3. Объектный код обрабатывается специальной программой — редактором связей или сборщиком, который выполняет связывание объектных модулей и машинного кода стандартных функций, находя их в библиотеках, и формирует на выходе работоспособное приложение — исполнимый код для конкретной платформы. 4. Исполнимый код — это законченная программа, которую можно запустить на любом компьютере Как правило, итоговый файл имеет расширение. ЕХЕ или. СОМ.

Интегрированные системы программирования Все компоненты, необходимые для создания программ включаются в единую систему. В Интегрированные системы программирования Все компоненты, необходимые для создания программ включаются в единую систему. В стандартную поставку входят как минимум три последних компонента, но хорошая интегрированная система включает в себя и специализированный текстовый редактор, Среды быстрого проектирования В последние несколько лет в программировании наметился так называемый визуальный подход. В средах быстрого проектирования (Rapid Application Development, RAD-среды). Все необходимые элементы оформления и управления создаются и обслуживаются не путем ручного программирования, а с помощью готовых визуальных компонентов, которые с помощью мыши «перетаскиваются» в проектируемое окно.

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

Нисходящее проектирование. Наличие подпрограмм позволяет вести проектирование и разработку приложения сверху вниз — такой Нисходящее проектирование. Наличие подпрограмм позволяет вести проектирование и разработку приложения сверху вниз — такой подход называется нисходящим проектированием. Небольшие подпрограммы значительно проще отлаживать, существенно повышает общую надежность всей программы. что Подпрограммы бывают двух видов — процедуры и функции. Отличаются они тем, что процедура просто выполняет группу операторов, а функция вдобавок вычисляет некоторое значение и передает его обратно в главную программу (возвращает значение). Это значение имеет определенный тип (говорят, что функция имеет такой-то тип), а если никакого значения функция не вычисляет, то считается, что она возвращает значение типа «никакое» (void). Чтобы работа подпрограммы имела смысл, ей надо получить данные из внешней программы, которая эту подпрограмму вызывает. Подпрограммы вызываются, как правило, путем простой записи их названия с нужными параметрами. В Бейсике есть оператор CALL для явного указания того, что происходит вызов подпрограммы.

Подпрограммы могут быть вложенными — допускается вызов подпрограммы не только из главной программы, но Подпрограммы могут быть вложенными — допускается вызов подпрограммы не только из главной программы, но и из любых других подпрограмм. В некоторых языках программирования допускается вызов подпрограммы из себя самой. Такой прием называется рекурсией и потенциально опасен тем, что может привести к зацикливанию — бесконечному самовызову. Подпрограмма состоит из нескольких частей: заголовка с параметрами, тела подпрограммы (операторов, которые будут выполняться при ее вызове) и завершения подпрограммы. Как функция возвращает значение. После того как функция рассчитала нужное значение, ей требуется явно вернуть его в вызывающую программу. Для этого может использоваться специальный оператор (return) или особая форма оператора присваивания, когда в левой части указывается имя функции, а справа — возвращаемое значение.

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

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

Наследование позволяет создавать новые классы, повторно используя уже готовый исходный код и не тратя Наследование позволяет создавать новые классы, повторно используя уже готовый исходный код и не тратя времени на его переписывание. Свойство объектов переопределять методы наследуемого класса называется полиморфизмом.

Архитектура программных систем Автономные приложения. Работают на одном компьютере. Приложения в файл-серверной архитектуре. Компьютеры Архитектура программных систем Автономные приложения. Работают на одном компьютере. Приложения в файл-серверной архитектуре. Компьютеры пользователей системы объединены в сеть, при этом на каждом из них (на клиентском месте) запущены копии одной и той же программы, которые обращаются за данными к серверу — специальному компьютеру, который хранит файлы, одновременно доступные всем пользователям Особенность этой архитектуры в том, что все вычисления выполняются на клиентских местах, что требует наличия на них достаточно производительных ПК (это так называемые системы с толстым клиентом — программой, которая выполняет всю обработку получаемой от сервера информации). Приложения в клиент-серверной архитектуре Эта архитектура похожа на предыдущую, только сервер помимо простого обеспечения одновременного доступа к данным способен еще выполнять программы (обычно выполняются СУБД — тогда сервер называется сервером баз данных), которые берут на себя определенный объем вычислений

Приложения в многозвенной архитектуре Один сервер приложений, на котором выполняется вычислительная работа. Другой сервер Приложения в многозвенной архитектуре Один сервер приложений, на котором выполняется вычислительная работа. Другой сервер баз данных обрабатывает запросы пользователей, на третьем может быть установлена специальная программа — монитор транзакций, которая оптимизирует обработку транзакций и балансирует нагрузку на серверы. В большинстве практических случаев все серверы соединены последовательно — позвенно, и выход из строя одного звена если и не останавливает всю работу, то по крайней мере резко снижает производительность системы Приложения в распределенной архитектуре. Чтобы избежать недостатков рассмотренных архитектур, были придуманы специальные технологии, позволяющие создавать программу в виде набора компонентов, которые можно запускать на любых серверах, связанных в сеть. Компоненты как бы распределены по сети. Частный случай компонентного подхода — доступ к серверным приложениям из браузеров через Интернет

Алгоритмическое (модульное) программирование. Основная идея алгоритмического программирования — разбиение программы на последовательность модулей, каждый Алгоритмическое (модульное) программирование. Основная идея алгоритмического программирования — разбиение программы на последовательность модулей, каждый из которых выполняет одно или несколько действий. Единственное требование к модулю — чтобы его выполнение всегда начиналось с первой команды и всегда заканчивалось на самой последней