Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика (лекция).docx
Скачиваний:
43
Добавлен:
17.07.2019
Размер:
44.65 Кб
Скачать

Инструментарий технологии программирования.

ИТП-совокупность программ и программных комплексов предназначеных для разработки, отладки и внедрения ПО.

ИТП включает в себя: языки,системы программирования…..

Программирование- это создания компьютерных программ с помощью языков программирования.

Технология программирования включает в себя:

  1. Анализ задачи

  2. Проектирование- как разработку комплекса алгоритмов.

  3. Кодирование и компиляцию – написание исходного текста на языке и преобразование его в исполняемый код с помощью компилятора.

  4. Тестирование и отладку- выявление и устранение ошибок в программах

  5. Испытания и сдачу программ.

  6. Сопровождение программ.

Существуют следующие основные методологии разработки ПО:

  1. Структурное программирование.

  2. Объектно-ориентированное программирование.

3 положения:

  1. Любая программа представляет собой структуру,построенную из трёх типов конструкций: последовательное исполнение, ветвление,цикл.

  2. Повторяющиеся фрагменты программы могут оформляться в виде подпрограмм.

  3. Разработка программ ведётся пошагово, методом «сверху вниз».

Объектно-ориентированное программирование(ООП) – методология программирования, в которой основными являются понятия «объект» и «класс».

Основные принципы ООП: абстракция,наследование,инкапсуляция и полиморфизм.

Абстракция – характеристика сущности, которая отличает ее от других сущностей. Абстракция применяется для определения фундаментальных понятий ОПП,

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

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

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

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

Полиморфизм – возможность объектов с одинаковой спецификацией иметь различную реализацию.

Язык программирования это формализованный язык для описания алгоритма решения задач на компьютере.

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

Языки высокого уровня делятся на:

  1. алгоритмические ( отражающие структуру алгоритма, пример: Алгол) .

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

  3. объектно-ориентированные поддерживающие методологию объектного ориентирования программирования (ООП).Примеры: паскаль, с++…

  4. проблемно-ориентированные предназначены для решения задач определённого класса: языки запроса(SQL),языки программирования для интернет(Pere,PHP),языки моделирования(UML) и т.д.

Программа подготовленная на языке высокого уровня проходит этап трансляции. Трансляция может выполнятся с использованием компиляторов и интерпретаторов.

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

Интерпретаторы выполняют пооператорный анализ и выполнение программ. Только после того как предыдущий оператор выполнен интерпретатор переход к выполнению следующего. Если один и тот же оператор должен выполнятся в программе многократно интерпретатор каждый раз выполняет его, так как будто бы встретил впервые. Поэтому интерпретатор программ, требующая постоянно большого объёма повторяющихся вычислений может работать медленно. Для переноса программы с одного компьютера на другой требуется установка такого же интерпретатора. Существенное преимущество интерпретатора заключается в том что программу можно остановить в любой момент времени, проанализировав содержимое в памяти выполнить сколь угодно сложную обработку данных контролируя состояние аппаратно программной среды что обеспечивает более надёжную работу программы.

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