6. Документирование программы.
СП позволяет писать, редактировать, отлаживать и запускать программы на их выполнение в едином технологическом процессе.
Анализ, проектирование и алгоритмизация задачи.
Кодирование алгоритма. Трансляция программы
Компоновка программы. Тестирование и документирование программы
Рис. Технология получения исполняемой программы
Языки программирования
Язык программирования(ЯП) – комплекс правил кодирования алгоритма задачи.
Классификация ЯП
Классифицировать ЯП можно по разным признакам: уровню языка, способу реализации и стилю программирования.
Уровень языкаопределяется его близостью к естественному человеческому языку, чем ближе к нему, тем уровень ЯП выше, чем ближе к языку машинных команд, тем уровень ЯП ниже.
Языки низкого уровня(ЯПНУ) – это машинно-зависимые языки, которые можно применять на ограниченном подмножестве машин с одинаковой архитектурой и платформой.
Операторы языка близки к машинному коду и ориентированы на конкретные команды процессора. ЯПНУ применяют для написания системных приложений, драйверов устройств, модулей стыковки с оборудованием, когда важнейшими требованиями становятся возможность прямого доступа к аппаратным ресурсам, компактность и быстродействие.
ПримерЯПНУ: языки,автокод, ассемблерпозволяют программисту пользоваться мнемоническими кодами машинных команд конкретного компьютера.
Языки высокого уровня (ЯПВН)– машинно-независимые языки, применимые на любых компьютерах.
Языки программирования высокого уровня имеют синтаксис, близкий к естественному человеческому языку. Фразы состоят из слов (как правило, английского языка), чисел и знаков препинания. Отличием от естественного языка является жесткость правил написания фраз, нарушать которые нельзя, иначе программа не заработает.
Особенность: понятность и легкая обучаемость языку.
Примеры:Паскаль– очень популярный язык, разработан в 1970 г. швейцарцем Н. Виртом.
Бэйсик- язык для начинающих, 1964, Дартмутский колледж,
Си– разработан в начале 70-х годов для реализации разработки операционных систем, трансляторов, баз данных и других системных и прикладных программ. В нем заложены возможности непосредственного обращения к некоторым машинным командам и участкам памяти компьютера.
Фортран(1953 г.),Delphiи т.д.
Способ реализации ЯП.
Языки программированиямогут быть реализованы как компилируемые или интерпретируемые.
Программа на компилируемом языке при помощи специальной программы компилятора преобразуется (компилируется) в набор инструкций для данного типа процессора (машинный код) и далее записывается в исполнимый модуль, который может быть запущен на выполнение как отдельная программа. Файл исполняемого модуля обычно имеет расширение(ехе).
Другими словами, компилятор переводит исходный текст программы с языка программирования высокого уровня в двоичные коды инструкций процессора.
Если программа написана на интерпретируемом языке, то интерпретатор непосредственно выполняет (интерпретирует) исходный текст без предварительного перевода всей программы. При этом программа остаётся на исходном языке и не может быть запущена без интерпретатора. (С++).
Кратко говоря, компилятор переводит исходный текст программы на машинный язык сразу и целиком, создавая при этом отдельную машинно-исполняемую программу, а интерпретатор выполняет исходный текст прямо во время исполнения программы («интерпретируя» его своими средствами).
Разделение на компилируемые и интерпретируемые языки является условным. Так, для любого традиционно компилируемого языка, как, например, Паскаль, можно написать интерпретатор. Кроме того, большинство современных «чистых» интерпретаторов не исполняют конструкции языка непосредственно, а компилируют их в некоторое высокоуровневое промежуточное представление.
Для любого интерпретируемого языка можно создать компилятор — например, язык Лисп, изначально интерпретируемый, может компилироваться без каких бы то ни было ограничений. Создаваемый во время исполнения программы код может так же динамически компилироваться во время исполнения.
Преимущество. Как правило, скомпилированные программы выполняются быстрее и не требуют для выполнения дополнительных программ, так как уже переведены на машинный язык.
Недостатки. Вместе с тем, при каждом изменении текста программы требуется её перекомпиляция, что создаёт трудности при разработке. Кроме того, скомпилированная программа может выполняться только на том же типе компьютеров и, как правило, под той же операционной системой, на которую был рассчитан компилятор. Чтобы создать исполняемый файл для машины другого типа, требуется новая компиляция.
Программу на интерпретируемом языке можно запускать сразу же после изменения, что облегчает разработку и отладку программ. Однако интерпретируемые программы выполняются заметно медленнее, чем компилируемые, кроме того, они не могут выполняться без дополнительной программы-интерпретатора.
Классификация языков по стилю программирования
Процедурные языки
Процедурное или структурное программирование(программирование без GOTO) является отражением архитектуры традиционных ЭВМ, которая была предложена фон Нейманом в 1940-х годах.
Программа на процедурном языке программирования состоит из последовательности операторов (инструкций), задающих процедуру решения задачи. Основным является оператор присваивания, служащий для изменения содержимого областей памяти.
Концепция памяти как хранилища значений, содержимое которого может обновляться операторами программы, является фундаментальной в императивном программировании.
Выполнение программы сводится к последовательному выполнению операторов с целью преобразования исходного состояния памяти, то есть значений исходных данных, в заключительное, то есть в результаты. Таким образом, с точки зрения программиста имеются программа и память, причем первая последовательно обновляет содержимое последней.
Процедурный язык программирования предоставляет возможность программисту определять каждый шаг в процессе решения задачи.
Особенность таких языков программирования состоит в том, что задачи разбиваются на шаги и решаются шаг за шагом.
Пример: Pascal,Basic,Си,Фортран,КОБОЛ.
Функциональные языки
Функциональные языки– языки, в которых единственным действием является вызов функции.
Достоинства: краткость и простота.
Пример:язык Лисп. Он широко используется в системе автоматизированного проектированияAutoCADи называетсяAutoLISP.
Логические языки
Логические языки – языки программирования в терминах математической логики.
Логические языки используют для разработки систем искусственного интеллекта и экспертных систем.
Prolog - самый известный язык логического программирования.
Объектно-ориентированные языки
Объектно-ориентированные языки – языки, которые содержат объекты и позволяют разрабатывать хорошо структурированные, надежные и легко модифицируемые программы.
В основе концепции объектно-ориентированного программирования лежит понятие объекта— некоей субстанции, которая объединяет в себеданные (поля) и методы(выполняемые объектом действия).
Например, объект человекможет иметь поляимя,фамилияи методыестьиспать. Соответственно, в программе можем использовать операторыЧеловек.Имя:="Иван"иЧеловек.Есть(пища).
Свойство объектно-ориентированного программирования, которое может быть смоделировано с помощью таксометрической классификационной схемы (иерархии) называется Наследование.
Примеры: C# , C++ , Delphi, Java.
Федеральный тест
Компилятор– программа, которая выполняет синтаксический и определенный смысловой анализ всего исходного кода программы и затем при отсутствии ошибок переводит его на машинный язык – создает объектный код.
Модулемназывается специальная программная единица, предназначенная для создания библиотек и разделения больших программ на логически связанные блоки.
Paint– однооконный редактор растровой графики.
PhotoShop– многооконный редактор растровой графики.
CorelDraw- многооконный редактор векторной графики.
ChkDsk – стандартное приложение В ОС MS Windows, которое проверяет диски на ошибки файловой системы. Может исправлять ошибки.
Операторыприсваивания в языках программирования задают значения переменных.
1глоссарий.ру).
2Симонович
3Федеральный закон от 10 января 2002 г. №1-ФЗ «Об электронной цифровой подписи».
Yandex.RTB R-A-252273-3
- Тема 1. Основные понятия информатики
- Тема 2. История развития вычислительной техники
- (1946-1955)
- Второе поколение эвм. (1955-1965)
- (1965-1975)
- Четвертое поколение (1975…)
- Пятое поколение
- Компьютерные сети
- Конфигурация сети (архитектура, топология)
- Тема 3. Классификация компьютеров
- Платформа ibm-совместимых компьютеров или Wintel (операционная система Windowsи процессорIntel).
- Платформа Арр1е
- Тема 4. Устройство пк.
- 1998Год.
- 2003 Год.
- 2008 Год
- Тема 5. Периферийные устройства. Устройства ввода-вывода информации
- Тема 6. Организация информации в компьютерных системах
- Тема Программное обеспечение
- Служебное программное обеспечение (спо)
- Операционные системы
- Линейка профессиональных ос
- Ос альтернативные семейству Windows Unix(60-е годы)
- Linux(1991 г.)
- Сервисные системы (утилиты)
- Функционально ориентированные программы
- Виды фоп
- Состав microsoft office
- Текстовые процессоры (редакторы)
- Электронные таблицы
- Информационно-поисковые системы
- Профессионально ориентированные программы
- Системы программирования
- 6. Документирование программы.