МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ имени ШАКАРИМА г. СЕМЕЙ
|
Документ СМК 3 уровня
| УМКД
| УМКД 042-39. 1.ХХ/03- 2013
|
УМКД
Учебно-методические материалы по дисциплине
«Объектно-ориентированное программирование на С++»
| Редакция №____от_____
|
УЧЕБНО-МЕТОДИЧЕСКИИ КОМПЛЕКС
ДИСЦИПЛИНЫ
«Объектно-ориентированное программирование на С++»
для специальности 6М011100 – «Информатика»
УЧЕБНО-МЕТОДИЧЕСКИЕ МАТЕРИАЛЫ
Семей
2014
СОДЕРЖАНИЕ
Глоссарий Лекции Практические занятия Самостоятельная работа магистранта 1 Глоссарий
Алфавит – совокупность символов, отображаемых на устройствах печати и экранах и/или вводимых с клавиатуры терминала Алгоритм – содержание и последовательность операций, четко определяющих решение задачи путем вычислительного процесса, преобразующего исходные данные в конечный результат Блок-схема – графическое изображение алгоритма, подлежащего программированию Глобальная переменная – переменная, областью определения которой является вся программа или блок с вложенными в него подблоками Жизненный цикл программного обеспечения – это весь период его разработки и эксплуатации, начиная с момента возникновения замысла и заканчивая прекращением ее использования. Зарезервированное слово слово, смысл которого зафиксирован правилами языка и по которому транслятор распознает основные языковые конструкции Инструментарий технологии программирования – это программные продукты, предназначенные для поддержки технологии программирования Императивное программирование — это исторически первая методология программирования, которой пользовался каждый программист, программирующий на любом из «массовых» языков программирования – Basic, Pascal, C. Она характеризуется принципом последовательного изменения состояния вычислителя пошаговым образом. Инкапсуляция - это сокрытие информации и комбинирование данных и функций (методов) внутри объекта. Компонент – программный модуль или объект, готовый для использования в качестве составного блока программы и которым можно визуально манипулировать во время разработки программы Лексика – совокупность правил образования цепочек символов (лексем), образующих идентификаторы (переменные и метки), операторы, операции и другие лексические компоненты языка Линейный алгоритм – алгоритм, в котором действия осуществляются последовательно друг за другом Логический алгоритм – алгоритм, в соответствии с которым решение поставленных задач сводится к логическим действиям Логический подходу к программированию программа представляет собой совокупность правил или логических высказываний. Кроме того, в программе допустимы логические причинно-следственные связи, в частности, на основе операции импликации. Машинный язык – язык программирования, предназначенный для представления программ и данных в форме, пригодной для непосредственного восприятия их устройствами вычислительной машины Машинно-ориентированный язык – язык программирования, отражающий структуру конкретного типа компьютера Методология программирования – совокупность методов, применимых в жизненном цикле программного обеспечения и объединенных общим философским подходом. Модульное программирование – способ разработки программ, при котором относительно независимые подзадачи программируются в виде отдельных программных модулей Модульное программирование — это такой способ программирования, при котором вся программа разбивается на группу компонентов, называемых модулями, причем каждый из них имеет свой контролируемый размер, четкое назначение и детально проработанный интерфейс с внешней средой. Модуль — 1) это совокупность команд, к которым можно обратиться по имени; 2) это совокупность операторов программы, имеющая граничные элементы и идентификатор (возможно агрегатный).
Методология структурного императивного программирования — подход, заключающийся в задании хорошей топологии императивных программ, в том числе отказе от использования глобальных данных и оператора безусловного перехода, разработке модулей с сильной связностью и обеспечении их независимости от других модулей. Методология ООП использует метод объектной декомпозиции, согласно которому структура системы (статическая составляющая) описывается в терминах объектов и связей между ними, а поведение системы (динамическая составляющая) - в терминах обмена сообщениями между объектами. Сообщения могут быть как реакцией на события, вызываемые как внешними факторами, так и порождаемые самими объектами. Наследование Построение иерархии порожденных объектов с возможностью для каждого такого объекта-наследника доступа к коду и данным всех порождающих объектов-предков. Нисходящее программирование – способ разработки программ, при котором программирование ведется методом «сверху-вниз», от общего к деталям Отладка программы – этап разработки программы, состоящий в локализации, выявлении и устранении программных ошибок, факт существования которых уже установлен Отладчик – программа, облегчающая программисту выполнение отладки разрабатываемых им программ Полиморфизм (полиморфизм включения) — присваивание действию одного имени, которое затем разделяется вверх и вниз по иерархии объектов, причем каждый объект иерархии выполняет это действие способом, подходящим именно ему. Проблемно-ориентированный язык – язык программирования, предназначенный для решения задач определенного класса Программа – 1) последовательность указаний (команд или описаний и операторов), задающая алгоритм вычислительной машине 2) завершенный продукт, пригодный для запуска своим автором на системе, на которой он был разработан.
Программирование – процесс создания программы Программный продукт — программа, которую любой человек может запускать, тестировать, исправлять и развивать. Программный комплекс — набор взаимодействующих программ, согласованных по функциям и форматам, точно определенным интерфейсам, и вкупе составляющих полное средство для решения больших задач. Процедура – поименованная часть программы, которая может выполнять некоторые четко заданные действия над условными данными, определяемыми с помощью формальных параметров Процедурно-ориентированные языки – это языки, в которых имеется возможность описания программы как совокупности процедур или подпрограмм Разветвляющийся алгоритм – алгоритм, в котором действие выполняется по одной из возможных ветвей решения задачи, в зависимости от выполнения условий Семантика – смысловое содержание конструкций, предложений языка, семантический анализ – это проверка смысловой правильности конструкции Семантический анализ – выявление несоответствий типов и структур переменных, функций и процедур Семантическая ошибка – ошибка в программе, не связанная с нарушением синтаксиса языка программирования (неправильное описание алгоритма решения задачи, неверное определение типа или значения переменных, несогласованность исходных данных с алгоритмом, неверное использование правильных синтаксических конструкций языка) Синтаксис – совокупность правил образования языковых конструкций, или предложений языка программирования – блоков, процедур, составных операторов, условных операторов, операторов цикла и пр. Синтаксическая конструкция – допустимое синтаксисом языка программирования сочетание символов или символов и зарезервированных слов Синтаксический анализ – проверка правильности конструкций, использованных программистом при подготовке текста Система программирования – совокупность средств разработки программ (языки программирования, текстовые редакторы, трансляторы, редакторы связей, библиотеки подпрограмм, утилиты и обслуживающие программы), обеспечивающих автоматизацию составления и отладки программ, подготовку соответствующей документации Синтаксическая ошибка – ошибка в программе, связанная с нарушением синтаксиса языка программирования (неправильное написание констант, переменных, выражений, операторов, процедур и других синтаксических конструкций) Структура данных – способ объединения, взаимосвязь или взаимное расположение нескольких элементов данных, рассматриваемых как одно целое Структурное программирование – методология программирования, направленная на создание логически простых и понятных программ. Структурное программирование основано на предположении, что логичность и понятность программы облегчает разработку, доказательство правильности и последующее сопровождение программы, а также обеспечивает ее надежность Стадия — часть действий по созданию программного обеспечения, ограниченная некоторыми временными рамками и заканчивающаяся выпуском конкретного продукта, определяемого заданными для данной стадии требованиями. Технология программирования изучает технологические процессы и порядок их прохождения – стадии (с использованием знаний, методов и средств). Технологический подход определяется спецификой комбинации стадий и процессов, ориентированной на разные классы программного обеспечения и на особенности коллектива разработчиков. Тестирование программы – процесс выполнения программы с целью обнаружения ошибок путем реального выполнения специально подобранных контрольных примеров Технология программирования – технология разработки программного средства как совокупность абсолютно всех технологических процессов его создания – от момента зарождения идеи о данном программном средстве до составления необходимой программной документации Трассировка программы – выполнение программы или ее участка, сопровождающееся выводом на экран, принтер или другой регистрацией в хронологической последовательности информации о событиях, связанных с выполнением программы Функция – поименованная часть программы, результатом выполнения которой является значение, присваиваемое имени функции Важнейшей характеристикой функционального подхода является то обстоятельство, что всякая программа, разработанная на языке функционального программирования, может рассматриваться как функция, аргументы которой, возможно, также являются функциями. Цикл с постусловием – цикл, у которого тело расположено перед проверкой условия Цикл с предусловием – цикл, у которого тело расположено после проверки условий Циклический алгоритм – алгоритм, в котором некоторая часть операций (тело цикла – последовательность команд) выполняется многократно Язык программирования – это формализованный язык для описания алгоритма решения задач на компьютере
Лекция №1. Введение в С++ программирование.