5.1 Понятие объектно-ориентированного

advertisement
Министерство образования и науки Российской федерации
Бузулукский гуманитарно-технологический институт (филиал)
федерального государственного бюджетного образовательного учреждения
высшего профессионального образования
«Оренбургский государственный университет»
Кафедра физики, информатики и математики
Литвинова С.А.
ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ
ПРОГРАММИРОВАНИЕ
Рекомендовано к изданию Редакционно-издательским советом федерального
государственного бюджетного образовательного учреждения высшего
профессионального
образования
«Оренбургский
государственный
университет» в качестве методических указаний к курсовой работе для
студентов, обучающихся по программе высшего профессионального
образования (бакалавриат) по направлению подготовки 050100.62
«Педагогическое образование»
Бузулук 2012
УДК 004.382.7
ББК 32.973.26 – 018.1
Л 64
Рецензент инженер 1 категории ООО «ТБинформ» Федянина Т.В.
Литвинова, С.А.
Объектно-ориентированное программирование: методические указания
к курсовой работе / С.А. Литвинова: Бузулукский гуманитарнотехнологический институт (филиал) ОГУ. – Бузулук: БГТИ (филиал)
ОГУ, 2012. – 44с.
Методические указания содержат общие понятие объектноориентированного программирования, краткие сведения о среде
программирования Delphi.
Методические указания предназначены для выполнения курсовой
работы по дисциплине «Объектно-ориентированное программирование»
для студентов направления подготовки 050100.62 «Педагогическое
образование»
УДК 004.382.7
ББК 32.973.26 – 018.1
© Литвинова С.А., 2012
© БГТИ (филиал) ОГУ, 2012
2
Оглавление
1 Общие указания ........................................................................................................ 5
2 Требования к содержанию структурных элементов текстовой части курсовой
работы ........................................................................................................................... 6
2.1 Титульный лист ..................................................................................................... 6
2.2 Задание ................................................................................................................... 7
2.3 Аннотация .............................................................................................................. 7
2.4 Содержание ............................................................................................................ 7
2.5 Введение ................................................................................................................. 7
2.6 Основная часть ...................................................................................................... 8
2.7 Заключение ............................................................................................................ 8
2.8 Список использованных источников .................................................................. 9
2.9 Приложения ........................................................................................................... 9
3 Оформление курсовой работы .............................................................................. 11
3.1 Оформление текста ............................................................................................. 11
3.2 Таблицы ................................................................................................................ 12
3.3 Иллюстрации ....................................................................................................... 15
3.4 Примеры библиографической записи ............................................................... 16
4 Примерные темы курсовых работ ........................................................................ 21
5 Основные теоретические сведения ...................................................................... 22
5.1 Понятие объектно-ориентированного программирования ............................. 22
5.2 Объекты и классы................................................................................................ 23
5.3 Инкапсуляция ...................................................................................................... 24
5.4 Наследование ....................................................................................................... 24
5.4.1 Виртуальные методы ....................................................................................... 25
5.4.2 Динамическое создание объектов .................................................................. 26
5.5 Полиморфизм ...................................................................................................... 26
5.6 Общие сведения о языке Delphi ......................................................................... 27
5.6.1 Окно формы ...................................................................................................... 30
3
5.6.2 Окно дерева объектов ...................................................................................... 31
5.6.3 Окно инспектора объектов .............................................................................. 31
5.6.4 Окно кода программы ...................................................................................... 34
5.7 Основные компоненты Delphi ........................................................................... 37
5.7.1 Стандартные компоненты ............................................................................... 38
6 Рекомендуемая литература ................................................................................... 41
Приложение А Образец оформления титульного листа ....................................... 43
Приложение Б Форма листа задания....................................................................... 44
4
1 Общие указания
Курсовая
работа
студента
–
заключительный
этап
изучения
определенной дисциплины. Цель работы – систематизация и закрепление
теоретических знаний, полученных за время обучения, а также приобретение и
закрепление
навыков
самостоятельной
работы.
Работа,
как
правило,
основывается на обобщении изученного студентом теоретического материала и
дальнейшего его практического осмысления и подготавливается к защите в
завершающий период теоретического обучения.
Тематика курсовых работ по дисциплинам определяется преподавателем
кафедры. При этом выбор основывается как на государственном стандарте, так
и на направлениях научно-исследовательской и учебно-методической работы.
Студенту предоставляется право выбора одной из предложенных тем,
при этом необходимо сообщить методисту или преподавателю номер
выбранной темы.
Курсовая работа должна быть подготовлена к защите в срок,
устанавливаемый деканатом. К защите курсовой работы представляется
своевременно выполненная студентом и отрецензированная преподавателем
работа.
К защите курсовой работы представляется:
– пояснительная записка;
– электронная реализация в виде программы и данных.
Пояснительная
записка
содержит
основной
текст,
графические
материалы (иллюстрации) и, при необходимости, приложения – разработанную
программу с исходным текстом на бумажном и дисковом носителе, исходные
данные и результаты.
Пояснительная записка включает следующие компоненты:
– титульный лист;
– задание на курсовую работу;
5
– оглавление, включающее наименование всех разделов и пунктов с
указанием номеров страниц;
– введение, в котором обосновывается актуальность темы, указываются
цель и задачи работы;
– теоретическую часть, освещающую теоретические аспекты темы (один
из вопросов);
– практическую часть, в которой разработка программы и ее результаты
(одна из задач);
– заключение с краткими выводами по результатам работы;
– список литературы.
Последовательность выполнения курсовой работы включает следующие
этапы:
– уточнение задания;
– анализ теоретических источников;
– выбор методов, структур и их обоснование;
– определение наборов исходных данных и алгоритмов их обработки;
–
решение
поставленной
задачи
на
компьютере
и
получение
результатов;
– анализ полученных результатов;
– оформление пояснительной записки.
2 Требования к содержанию структурных элементов текстовой
части курсовой работы
2.1 Титульный лист
Титульный лист является первым листом курсовой работы. Переносы
слов в надписях титульного листа не допускаются. На титульном листе
указывают классификационный код. Образец титульного листа представлен в
приложении А.
6
2.2 Задание
Задание на курсовую работу составляется и утверждается на кафедре.
Форма задания представлена в приложении Б.
2.3 Аннотация
Аннотация – это краткая характеристика работы с точки зрения
содержания и назначения работы. Аннотация приводится на русском языке и
является третьим листом работы.
2.4 Содержание
Структурный элемент «Содержание» включает введение, порядковые
номера и заголовки разделов, при необходимости подразделов, заключение,
список использованных источников, приложения с указанием их обозначений и
заголовков. После заголовка каждого из указанных структурных элементов
ставят отточие, а затем приводят номер страницы, на которой начинается
данный структурный элемент.
Элемент «Содержание» размещают после аннотации, начиная с нового
листа. Слово «Содержание» записывают в верхней части листа, посередине, с
прописной буквы.
2.5 Введение
В элементе «Введение» указывают цель работы, область применения
разрабатываемой предметной области, ее практическое значение.
7
Элемент «Введение» размещают на отдельном листе после содержания.
Слово «Введение» записывают в верхней части листа, посередине, с прописной
буквы.
2.6 Основная часть
Содержание основной части работы должно быть представлено в виде
двух разделов: теоретической части и практической. Теоретическая часть
описывает основные понятия о базах данных, моделях данных, системах
управления базами данных и СУБД Microsoft Office Access 2007. Практическая
часть должна отвечать заданию и требованиям, изложенным в методических
указаниях.
Основная часть состоит из разделов и подразделов. При оформлении
основной
части
используют
словосочетания
«Теоретическая
часть»
и
«Практическая часть». Теоретическая часть является первым разделом,
практическая – вторым. Элемент «Теоретическая часть» и «Практическая
часть» располагают на отдельных листах.
Пример оформления:
1 Теоретическая часть
…
2 Практическая часть
…
2.7 Заключение
Заключение должно содержать краткие выводы по результатам
выполненной
работы,
оценку
полноты
решения
поставленных
рекомендации по конкретному использованию результатов работы.
8
задач,
Элемент
«Заключение»
размещают
на
отдельном
листе
после
практической части. Слово «Заключение» записывают в верхней части листа,
посередине, с прописной буквы.
2.8 Список использованных источников
В список включают все источники, на которые имеются ссылки в тексте
работы. Сведения об источниках следует располагать в порядке появления
ссылок в тексте, нумеровать арабскими цифрами без точки и печатать с
абзацного отступа. Ссылки в тексте приводят в квадратных скобках.
Пример – [5], [7, 8, 9], [8-13, 44-56].
Допускается располагать сведения об источниках в списке:
− в алфавитном порядке;
− по разделам;
− по видам источников.
При составлении списка в алфавитном порядке и наличии в нем
источников на разных языках образуются дополнительные алфавитные ряды,
которые приводят в следующей последовательности: на русском языке, на
языках с кириллическим алфавитом, на языках с латинским алфавитом, на
языках с оригинальной графикой. Нумерация источников в списке сохраняется
сквозная.
Структурный
элемент
«Список
использованных
источников»
размещают после заключения. Словосочетание «Список использованных
источников» приводят в верхней части листа, посередине, с прописной буквы.
2.9 Приложения
Материал, дополняющий основную часть работы, оформляют в виде
приложений. В приложениях целесообразно приводить графический материал
большого объема и/или формата, таблицы большого формата.
9
Приложения следует оформлять как продолжение работы на листах,
следующих за списком использованных источников. Приложения выполняют
на листах формата А4.
Приложения обозначают прописными буквами русского алфавита,
начиная с А (за исключением букв Ё, З, Й, О, Ч, Ь, Ы, Ъ), которые приводят
после слова «Приложение». В случае полного использования букв русского
алфавита приложения обозначают арабскими цифрами. При наличии в работе
одного приложения оно обозначается «Приложение А».
Каждое приложение начинают с новой страницы с указанием наверху
посередине страницы с прописной буквы слова «Приложение» и его
обозначения. Под ним в скобках указывают статус приложения, например:
«(обязательное)», «(рекомендуемое)», «(справочное)».
Приложение
должно
иметь
заголовок,
который
располагают
симметрично относительно текста в виде отдельной строки, печатают
строчными буквами с первой прописной и выделяют полужирным шрифтом,
размер 14 пт.
Рисунки, таблицы, формулы, помещаемые в приложения, нумеруют
арабскими цифрами в пределах каждого приложения, например:
«…рисунок Г.8..».
Приложения должны иметь общую с остальной частью работы сквозную
нумерацию страниц.
В тексте работы на все приложения должны быть даны ссылки. При
ссылках на обязательные приложения используют слова: «…в соответствии с
приложением _», а при ссылках на рекомендуемые и справочные − слова:
«…приведен в приложении _».
Приложения располагают в порядке ссылок на них в тексте работы.
10
3 Оформление курсовой работы
3.1 Оформление текста
Текст выполняется на листах формата А4 (210х297 мм) по ГОСТ 2.301 с
применением печатающих устройств вывода ЭВМ (ГОСТ 2.004). На
компьютере текст должен быть оформлен в текстовом редакторе Microsoft
Word.
Тип шрифта: Times New Roman.
Шрифт основного текста – обычный, размер 14 пт.
Шрифт заголовков разделов, структурных элементов «Аннотация»,
«Содержание»,
«Введение»,
«Заключение»,
«Список
использованных
источников», «Приложение» – полужирный, размер 16 пт.
Шрифт заголовков подразделов – полужирный, размер 14 пт.
Межсимвольный интервал – обычный.
Межстрочный интервал – одинарный. Выравнивание текста по ширине.
Размеры шрифта для формул:
– обычный – 14 пт;
– крупный индекс – 10 пт;
– мелкий индекс – 8 пт;
– крупный символ – 20 пт;
– мелкий символ – 14 пт.
Абзацный отступ должен быть одинаковым по всему тексту и равен
15 мм.
Текст работы выполняется на листах формата А4, без рамки, с
соблюдением следующих размеров полей:
а) левое – не менее 30 мм;
б) правое – не менее 10 мм;
в) верхнее и нижнее – не менее 20 мм.
11
Страницы следует нумеровать арабскими цифрами, соблюдая сквозную
нумерацию по всему тексту.
Номер страницы проставляют в центре нижней части листа без точки.
Опечатки, описки и графические неточности, обнаруженные в процессе
выполнения, допускается исправлять подчисткой или закрашиванием белой
краской и нанесением на том же месте исправленного текста. Помарки и следы
не полностью удаленного прежнего текста не допускаются.
Объем работы должен составлять не менее 25 страниц основной части.
Изложение должно быть последовательным, логичным, конкретным.
Первая страница – титульный лист, вторая – задание, далее – аннотация,
оглавление и текст (номера первых двух страниц не указываются). Оглавление
создается автоматически средствами текстового редактора.
3.2 Таблицы
Таблицы применяют для лучшей наглядности и удобства сравнения
числовых значений показателей (параметров, размеров и т.п.).
Табличную форму целесообразно применять, если различные показатели
могут быть сгруппированы по какому-либо общему признаку (например,
физико-химические показатели), а каждый из показателей может иметь два
(или более) значения.
Таблицы оформляют в соответствии с рисунком 1. Слева над таблицей
размещают слово «Таблица». После него приводят номер таблицы в
соответствии с 8.5.3. При этом точку после номера таблицы не ставят.
При необходимости краткого пояснения и/или уточнения содержания
таблицы приводят ее наименование, которое записывают с прописной буквы
над таблицей после ее номера, отделяя от него тире. При этом точку после
наименования таблицы не ставят.
12
Горизонтальные линии, разграничивающие строки таблицы, допускается
не проводить, если их отсутствие не затрудняет пользование таблицей.
Рисунок 1 – Структура таблицы
Таблицы нумеруются арабскими цифрами сквозной нумерацией в
пределах всего текста основной части работы, за исключением таблиц
приложений.
Таблицы каждого приложения нумеруют арабскими цифрами отдельной
нумерацией,
добавляя
перед
каждым
номером
обозначение
данного
приложения и разделяя их точкой.
Если в работе одна таблица, то ее обозначают «Таблица 1» или,
например, «Таблица В.1» (если таблица приведена в приложении В).
Допускается нумеровать таблицы в пределах раздела. В этом случае
номер таблицы состоит из номера раздела и порядкового номера таблицы,
разделенных точкой.
Пример − Таблица 1.1
На все таблицы работы приводят ссылки в тексте или в приложении
(если таблица приведена в приложении). При этом пишут слово «таблица», а
затем указывают ее номер.
Заголовки граф (колонок) и строк таблицы приводят, начиная с
прописной буквы, а подзаголовки граф − со строчной буквы, если они
составляют одно предложение с заголовком, или с прописной буквы, если они
13
имеют самостоятельное значение. В конце заголовков и подзаголовков граф и
строк точки не ставят. Заголовки и подзаголовки граф указывают в
единственном числе. При приведении заголовка боковика или заголовков
(подзаголовков) других граф не допускается разделение граф в головке
таблицы диагональными линиями.
Заголовки граф, как правило, записывают параллельно строкам таблицы.
При необходимости допускается располагать заголовки граф перпендикулярно
строкам таблицы.
Таблицу, в зависимости от ее размера, помещают под текстом, в котором
впервые дана на нее ссылка, или на следующей странице, а при необходимости
− в приложении работы.
Допускается размещать таблицу вдоль длинной стороны листа. Если
таблица выходит за формат страницы, то таблицу делят на части, помещая одну
часть под другой, рядом или на следующей странице (страницах), при этом в
каждой части таблицы повторяют ее головку и боковик. При делении таблицы
на части допускается ее головку и боковик не повторять, а заменять
соответственно номером граф и строк. При этом нумеруют арабскими цифрами
графы и/или строки первой части таблицы.
При делении таблицы на части слово «Таблица», ее номер и
наименование помещают только над первой частью таблицы, а над другими
частями приводят словосочетание «Продолжение таблицы» с указанием номера
таблицы.
Графу «Номер по порядку» в таблицу не включают.
При необходимости нумерации показателей, включенных в таблицу,
порядковые
номера
указывают
в
первой
непосредственно перед их наименованием.
14
графе
(боковике)
таблицы
3.3 Иллюстрации
Иллюстрации (чертежи, графики, схемы, компьютерные распечатки,
фотоснимки, диаграммы) следует располагать в ВКР непосредственно после
текста, в котором они упоминаются впервые, или на следующей странице.
Иллюстрации могут быть в компьютерном исполнении, в том числе и
цветные.
Фотоснимки размером меньше формата А4 должны быть плотно
наклеены на листы белой бумаги формата А4.
Иллюстрации, за исключением иллюстраций приложений, нумеруют
арабскими цифрами сквозной нумерацией, приводя эти номера после слова
«Рисунок». Если рисунок один, то его обозначают «Рисунок 1».
Допускается нумеровать иллюстрации в пределах раздела, в этом случае
номер рисунка состоит из номера раздела и порядкового номера рисунка,
разделенных точкой.
Пример – Рисунок 1.1 – …, Рисунок 1.2 – …
Иллюстрации каждого приложения нумеруют арабскими цифрами
отдельной нумерацией, добавляя перед каждым номером обозначение данного
приложения и разделяя их точкой.
Пример – Рисунок А.3 –…
Допускается
не
нумеровать
мелкие
иллюстрации,
размещенные
непосредственно в тексте, и на которые в дальнейшем нет ссылок.
Иллюстрации при необходимости могут иметь наименование и
пояснительные
данные
(подрисуночный
текст).
Слово
«Рисунок»
и
наименование помещают после пояснительных данных. Точку в конце
наименования рисунка не ставят.
15
3.4 Примеры библиографической записи
Для произведений, созданных одним, двумя или тремя авторами,
применяется библиографическая запись под заголовком, содержащим имя
лица:
Семенов, В.В. Философия: итог тысячелетий. Философская психология /
В.В. Семенов; Рос. акад. наук, Пущин. науч. центр, Ин-т биофизики клетки,
Акад. проблем сохранения жизни. – Пущино: ПНЦ РАН, 2000. – 64 с. – ISBN 5201-14433-0.
Земсков, А.И. Электронные библиотеки: учебник / А.И. Земсков,
Я.Л. Шрайберг. – М.: Либерея, 2003. – 352 с. – (Альманах «Приложение к
журналу «Библиотека»). – ISBN 5-85129-184-2.
Бойделл, Т. Как лучше управлять организацией: учеб. пособие: пер. с
англ. / Т. Бойделл. – М.: ИНФРА-М ПРЕМЬЕР, 2005. – 202 с.
Силк, Дж. Большой взрыв. Рождение и эволюция Вселенной / Дж. Силк;
пер. с англ. А.Р. Полнарева. – М.: Мир, 1982. – 391 с.
Если
количество
авторов
четыре
и
более,
применяется
библиографическая запись под заглавием:
Теория зарубежной судебной медицины: учеб. пособие / В.Н. Алисиевич
[и др.]. – М.: Изд-во Моск. гос. ун-та, 1990. – 40 с.
Теория
зарубежной
судебной
медицины:
учеб.
пособие
/
В.Н. Алисиевич, С.Н. Смиронова, В.К. Авдеева, П.Н. Волкова; Моск. гос. ун-т.
– М.: МГУ, 1990. – 40 с.
Для многотомных изданий документ в целом описывается следующим
образом:
Гиппиус, З.Н. Сочинения: в 2 т. / Зинаида Гиппиус; [вступ. ст., подгот.
текста и коммент. Т.Г. Юрченко; Рос. акад. наук, Ин-т науч. информ. по
обществ. наукам]. – М.: Лаком-книга: Габестро, 2001. – 2 т. – (Золотая проза
серебряного века). – ISBN 5-85647-056-7.
16
Корецкий, Д.А. Подставная фигура: в 2 т. / Д.А. Корецкий. – М.:
ЭКСМО-пресс, 2000. – Т. 1. – 380 с.; Т. 2. – 348 с.
Для отдельного тома применяется следующая библиографическая
запись:
Казьмин, В.Д. Справочник домашнего врача: в 3 ч. / В. Казьмин. – М.:
АСТ: Астрель, 2002. – Ч. 2: Детские болезни. – 503 с. – ISBN 5-17-011143-6.
Казьмин, В.Д. Справочник домашнего врача. В 3 ч. Ч. 2. Детские
болезни / В. Казьмин. – М.: АСТ: Астрель, 2002. – 503 с. – ISBN 5-17-011143-6.
Библиографическая запись на сборники произведений:
Внешняя политика современной России: сб. ст. / Дипломат. акад. МИД
Рос. Федерации; под ред. А.Ю. Руднецкого. – М.: Междунар. отношения, 2000.
– 292 с.
Государственный
Эрмитаж
(Санкт-Петербург).
Отчетная
археологическая сессия (2002): тез. докл. / Гос. Эрмитаж. – СПб.: Изд-во Гос.
Эрмитажа, 2001. – 62 с. – ISBN 5-93572-047-7.
Воспитательный процесс в высшей школе России: межвуз. науч.-практ.
конф. 26-27 апр. 2001 г., Новосибирск: посвящ. 50-летию НГАВТ: материалы /
редкол.: А. Б. Борисов [и др.]. – Новосибирск: НГАВТ, 2001. – 157 с.
Воспитательный процесс в высшей школе России / редкол.: А.Б. Борисов
[и др.]. – Новосибирск: НГАВТ, 2001. – 157 с.
Примеры описания сборников без общего заглавия:
Гиляровский, В.А. Москва и москвичи; Друзья и встречи; Люди театра /
В.А. Гиляровский; вступ. ст. и примеч. А. Петрова; худож. И. Лыков. – М.:
ЭКСМО-пресс, 2001. – 638 с. – (Русская классика). – ISBN 5-04-008668-7.
Библиографическая запись на законодательные материалы:
Российская Федерация. Конституция (1993). Конституция Российской
Федерации: офиц. текст. – М.: Маркетинг, 2001. – 39 с. – ISBN 5-94462-025-0.
Российская Федерация. Законы. О воинской обязанности и военной
службе: федер. закон: [принят Гос. Думой 6 марта 1998 г.: одобр. Советом
17
Федерации 12 марта 1998 г.]. – 4-е изд. – М.: Ось-89, 2001. – (Актуальный
закон). – ISBN 5-86894-528-Х.
Конституция Российской Федерации. – М.: Маркетинг, 2001. – 39 с. –
ISBN 5-94462-025-0.
Гражданский
процессуальный
кодекс
РСФСР:
офиц.
текст:
по
состоянию на 15 нояб. 2001 г. / М-во юстиции Рос. Федерации. – М.:
Маркетинг, 2001. – 159 с. – ISBN 5-94462-191-5.
Библиографическая запись на описание правил:
Правила безопасности при обслуживании гидротехнических сооружений
и гидромеханического оборудования энергоснабжающих организаций: РД 15334.0-03.205–2001: утв. М-вом энергетики Рос. Федерации 13.04.01: ввод. в
действие с 01.11.01. – М.: ЭНАС, 2001. – 158 с. – ISBN 5-93196-091-0.
Правила устройства и безопасной эксплуатации подъемников (вышек):
ПБ 10-256-98: утв. Гостехнадзором России 24.11.98: обязат. для всех м-в,
ведомств, предприятий и орг., независимо от их орг.-правовой формы и формы
собственности, а также для индивидуал. предпринимателей. – СПб.: ДЕАН,
2001. – 110 с. – (Безопасность труда России). – ISBN 5-93630-132-Х.
Библиографическая запись на сериальные и продолжающиеся издания
(газеты, журналы, бюллетени, сборники и т. п.):
Успех : еженед. газ. / учредитель: ООО «С-инфо». – 1998, март – 2000. –
М.: С-инфо, 2000. – 24 полосы. – Прекр. на 2000, № 14.
Университетская книга
ежемес. журн. / учредитель: Изд. группа
«Логос». – 1997, янв. – М.: Изд-во Моск. гос. ун-та печати, 2004. – 68-72 с. –
ISSN 1726-6726. – 2004, № 1 (85) – 12 (96); 2005, № 1 (98) – 12 (109).
Вопросы инженерной сейсмологии: сб. науч. тр. / Рос. акад. наук, Ин-т
физики Земли. – Вып. 1 (1958). – М.: Наука, 2001. – Вып. 34. – 2001. – 137 с.;
вып. 35: Прогнозирование землетрясений. – 2001. – 182 с.; вып. 36. – 2002. –
165 с.
Библиографическая запись на электронные ресурсы в целом:
18
Художественная энциклопедия зарубежного классического искусства
[Электронный ресурс]. – Электрон. текстовые, граф., зв. дан. и прикладная
прогр. (546 Мб). – М. : Большая Рос. энцикл., 1996. – 1 электрон. опт. Диск (CDROM). – (Интерактивный мир).
Образование: исследовано в мире / под патронажем Рос. акад.
образования, Гос. науч. пед. б-ки. – М. : OIM.RU, 2000-2001. – Режим доступа:
http: // www.oim.ru. – 10.02.2001.
КонсультантПлюс:
Высшая
школа:
учеб.
пособие.
–
Электрон.
текстовые данные (400 Мб). – [М.]: КонсультантПлюс, 2004-2005. – Вып. 4: К
осеннему семестру 2005. – 1 электрон. опт. диск (CD-ROM).
Арбитражный процесс: учеб. для студентов юрид. вузов и факультетов /
под ред. В.В. Яркова. – 2-е изд., перераб. и доп. – М.: Волтерс Клувер, 2003. –
Режим доступа: http://www.consultant.ru.
Библиографическая запись на составную часть документа (статья,
раздел, глава из книг, газет, журналов, нормативный акт и др.) из
электронных ресурсов приводится следующим образом:
О дополнительных мерах социальной поддержки отдельных категорий
военнослужащих вооруженных сил Российской Федерации, проходящих
военную службу по контракту за границей: постановление Правительства Рос.
Федерации от 29.08.2007 № 543 // КонсультантПлюс: Высшая Школа: правовые
док. для студентов юрид., финансовых и экон. специальностей / ген. директор
компании Д.Б. Новиков. – [М.]: КонсультантПлюс, 2006. – Вып. 2: Осень 2004.
– 1 электрон. опт. диск (CD-ROM).
О дополнительных мерах социальной поддержки отдельных категорий
военнослужащих вооруженных сил Российской Федерации, проходящих
военную службу по контракту за границей: постановление Правительства Рос.
Федерации от 29.08.2007 № 543 // КонсультантПлюс: справочная правовая
система / разраб. НПО «Вычисл. математика и информатика». – М.:
КонсультантПлюс, 1997-2008. – Режим доступа: http://www.consultant.ru.
19
Об информации, информационных технологиях и о защите информации:
федер. закон от 27 июля 2006 г, № 149-ФЗ // Система ГАРАНТ. Энциклопедия
Российского законодательства / президент компании Д.В. Першеев; Центр
информац. технологий Моск. гос. ун-та. – М.: ГАРАНТ-СЕРВИС, 2008. – Спец.
вып. для студентов, аспирантов и преподавателей: Весенний семестр 2008. – 1
электрон. опт. диск (CD-ROM).
Об уточнении бюджета города Оренбурга на 2008 год: решение гор.
Совета от 19.03.2008 № 518 // Система ГАРАНТ Платформа F 1: ЭкспертГарант-Максимум с региональным законодательством / Центр информац.
технологий Моск. гос. ун-та. – Электрон. дан. и прогр. – М.: ГАРАНТ-СЕРВИС,
2008. – 1 электрон. опт. диск (CD-ROM).
Библиографическая запись на составную часть документа (статья,
раздел, глава из книг, газет, журналов, нормативный акт из сборников и др.):
Малый, А. Введение в законодательство Европейского сообщества /
А. Малый // Институты Европейского союза: учеб. пособие / А. Малый,
М.О’Нейл. – Архангельск, 2002. – Разд. 1. – С. 7–26.
Двинянинова,
Г.С.
Комплимент:
Коммуникативный
статус
или
стратегия в дискурсе / Г.С. Двинянинова // Социальная власть языка: сб. науч.
тр. / Воронеж. межрегион. ин-т обществ. наук, Воронеж. гос. ун-т, Фак. романогерман. истории. – Воронеж, 2001. – С. 101–106.
Об утверждении Федеральной целевой программы «Дети России» на
2003-2006 гг.: постановление Правительства Рос. Федерации от 03 окт. 2002 г.
№ 732 // Собр. законодательства Рос. Федерации. – 2002. – № 41. – С. 8795-8799
(ст. 3984).
Долгополов, Н. По-прежнему под грифом «Секретно» / Н. Долгополов //
Рос. газ. – 2006. – 11 янв. (№ 3). - С. 8−9.
Боголюбов,
А.Н.
О
вещественных
резонансах
в
волноводе
с
неоднородным заполнением / А.Н. Боголюбов, А.Л. Делицын, M.Д. Малых //
Вестн. Моск. ун-та. Сер. 3, Физика. Астрономия. – 2001. – № 5. – С. 23–25.
20
4 Примерные темы курсовых работ
1 Программа: «Решение алгебраических уравнений 1-й, 2-й, 3-й и 4-й
степени».
2 Программа: «Решение системы N линейных алгебраических
уравнений с N неизвестными».
3 Программа: «Операции с алгебраическими матрицами».
4 Программа: «Двоичный калькулятор».
5 Программа: «Восьмеричный калькулятор».
6 Программа: «Шестнадцатеричный калькулятор».
7 Программа: «Переводы единиц измерения».
8 Программа: «Оболочка для тестирования».
9 Программа: «Оболочка для анкетирования».
10 Программа: «Календарь с часами».
11 Программа: «Многофункциональные электронные часы».
12 Программа: «Многофункциональный секундомер».
13 Форма, ее свойства и примеры использования.
14 Возможности и примеры использования окон редактирования и
меток.
15 Возможности и примеры использования кнопок, флажков,
переключателей.
16 Возможности и примеры использования списков.
17 Возможности и примеры использования панелей.
18 Изобразительные возможности среды программирования.
19 Возможности среды программирования для работы с файлами.
20 и др. (самостоятельное определение темы)
21
5 Основные теоретические сведения
5.1 Понятие объектно-ориентированного программирования
Объектно-ориентированное программирование (ООП) – методология
программирования, которая основана на представлении программы в виде
совокупности
объектов,
каждый
из
которых
является
реализацией
определенного класса (типа особого вида), а классы образуют иерархию на
принципах наследуемости».
Элементы ООП появились в начале 70-х годов в языке моделирования
Симула (первый язык программирования, в котором были предложены
принципы объектной ориентированности), затем получили свое развитие, и в
настоящее
время
ООП
принадлежит
к
числу
ведущих
технологий
программирования.
Основная цель ООП, как и большинства других подходов к
программированию  повышение эффективности разработки программ. ООП
является одним из наиболее интересных направлений для профессиональной
разработки программ.
Использование ООП позволяет существенно не изменять программу,
сводя необходимую модификацию программы к её расширению и дополнению.
Изучение идей и методов ООП может существенно упростить разработку и
отладку сложных программ.
Обычно мы используем в своих программах процедуры и функции для
программирования тех сложных действий по обработке данных, которые
приходится выполнять многократно. Впоследствии начали использоваться
подпрограммы. Она может иметь формальные предметы, которые при
обращении к ней заменяются фактическими предметами. В этом случае есть
опасность вызова подпрограммы с неправильными данными, что может
привести к сбою программы и её аварийному завершению при выполнении.
Поэтому
естественным
обобщением
22
традиционного
подхода
к
программированию является объединение данных и подпрограмм (процедур и
функций), предназначенных для их обработки.
5.2 Объекты и классы
Базовыми в ООП являются понятие объекта и класса.
Объект  часть окружающей нас реальности, т. е. он существует во
времени и в пространстве. Формально объект определить довольно трудно. Это
можно сделать через некоторые свойства, а именно: объект имеет состояние,
поведение и может быть однозначно идентифицирован (другими словами,
имеет уникальное имя). Программа, написанная с использованием ООП,
состоит из объектов, которые могут взаимодействовать между собой.
Класс  множество объектов, имеющих общую структуру и общее
поведение. Класс  описание (абстракция), которое показывает, как построить
существующую во времени и пространстве переменную этого класса,
называемую объектом. Смысл предложений «описание переменных класса» и
«описание объектов класса» один и тот же.
Переменные объектного типа называют экземплярами объекта. Здесь
требуется уточнение  экземпляр можно лишь формально назвать переменной.
Его
описание
дается
в
предложение
описания
переменных,
но
в
действительности экземпляр  нечто большее, чем обычная переменная.
Объектный тип содержит не только поля, описывающие данные, но
также процедуры и функции, описания которых содержится в описании
объекта. Эти процедуры и функции называют методами. Методам объекта
доступны его поля. Следует отметить, что методы и их параметры
определяются в описании объекта, а их реализация даётся вне этого описания, в
том мест программы, которое предшествует вызову данного метода. Объект
описывается с помощью зарезервированных слов «object…end», между
которыми находиться описание полей и методов.
23
5.3 Инкапсуляция
Инкапсуляция является важнейшим свойством объектов, на котором
строится ООП. Инкапсуляция заключается в том, что объект скрывает в себе
детали, которые несущественны для использования объекта. В традиционном
подходе к программированию с использованием глобальных переменных
программист не был застрахован от ошибок, связанных с использованием
процедур, не предназначенных для обработки данных, связанных с этими
переменными. Инкапсуляция и является средством организации доступа к
данным только через соответствующие методы.
Инкапсуляция позволяет в максимальной степени изолировать объект от
внешнего
окружения.
Она
существенно
повышает
надежность
разрабатываемых программ, т.к. локализованные в объекте алгоритмы
обмениваются с программой сравнительно небольшими объемами данных,
причем количество и тип этих данных обычно тщательно контролируется. В
результате замена или модификация алгоритмов и данных, инкапсулированных
в объект, как правило, не влечет за собой плохо прослеживаемых последствий
для программы в целом. Другим немаловажным следствием инкапсуляции
является легкость обмена объектами, переноса их из одной программы в
другую.
5.4 Наследование
Наследование

это
еще
одно
базовое
понятие
объектно-
ориентированного программирования. Наследование позволяет определять
новые объекты, используя свойства прежних, дополняя или изменяя их.
Объект-наследник получает все поля и методы «родителя», к которым он может
добавить свои собственные поля и методы или заменить их своими методами.
Наследник не содержит описание полей и методов родителя. Имя последнего
24
указывается в круглых скобках после слова «object». Из методов наследника
можно вызывать методы родителя. Для создания наследника не требуется
иметь исходный текст объекта родителя. Объект-родитель может быть уже в
составе оттранслированного модуля.
Плюс в наследовании: если некий объект был уже определен и отлажен,
он может быть использован и в других программах. При этом может оказаться,
что новая задача отличается от предыдущей, и возникает необходимость
некоторой
модификации
как
данных,
так
и
методов
их
обработки.
Программисту приходится решать дилемму  создания объектов заново или
использовать
результаты
предыдущей
работы,
применяя
механизм
наследования. Первый путь менее эффективен, так как требует дополнительных
затрат времени на отладку и тестирование. Во втором случае часть этой работы
оказывается выполненной, что сокращает время на разработку новой
программы. Программист при этом может и не знать деталей реализации
объекта-родителя.
5.4.1 Виртуальные методы
Чтобы использовать виртуальный метод, необходимо в описании
объекта после заголовка метода добавить ключевое слово «virtual». Заголовки
виртуальных методов родителя и наследника должны в точности совпадать.
Инициализация экземпляра объекта, имеющего виртуальные методы,
должна выполняться с помощью специального метода  конструктора.
Конструктор обычно присваивает полям объекта начальные значения и
выполняет другие действия по инициализации объекта. В заголовке методаконструктора слово «procedure» заменяется словом «constructor». Действия
обратные действиям конструктора, выполняет ещё один специальный метод 
деструктор. Он описывается словом «destructor».
Конструктор выполняет действия по подготовке позднего связывания.
Эти действия заключаются в создании указателя на таблицу виртуальных
методов, которая в дальнейшем используется для поиска методов. Таблица
содержит адреса всех виртуальных методов. При вызове виртуального метода
25
по его имени определяется адрес, а затем по этому адресу передается
управление. У каждого объектного типа имеется своя собственная таблица
виртуальных методов, что позволяет одному и тому же оператору вызывать
разные процедуры. Каждый объект должен иметь свой собственный
конструктор, который вызывается для каждого экземпляра. В противном случае
возможен сбой в работе программы. Конструктор или деструктор, могут не
содержать операторов. Весь необходимый код в этом случае создается при
трансляции ключевых слов «construct» и «destruct».
5.4.2 Динамическое создание объектов
Переменные объектного типа могут быть динамическими, то есть
размещаться в памяти только во время их использования. Для работы с
динамическими объектами используются расширенный синтаксис процедур
«new» и «dispose». Обе процедуры в этом случае содержат в качестве второго
параметра
вызов
конструктора
или
деструктора
для
выделения
или
освобождения памяти переменной объектного типа.
Применение расширенного синтаксиса не только улучшает читаемость
исходного кода, но и генерирует более короткий и эффективный исполняемый
код.
5.5 Полиморфизм
Полиморфизм – это свойство родственных объектов (т.е. объектов,
имеющих одного родителя) решать схожие по смыслу проблемы разными
способами.
Два или более класса, которые являются производными одного и того
же базового класса, называются полиморфными. Это означает, что они могут
иметь общие характеристики, но так же обладать собственными свойствами.
В рамках ООП поведенческие свойства объекта определяются набором
входящих в него методов. Изменяя алгоритм того или иного метода в потомках
26
объекта, программист может придавать этим потомкам отсутствующие у
родителя специфические свойства. Для изменения метода необходимо
перекрыть его в потомке, т.е. объявить в потомке одноименный метод и
реализовать в нем нужные действия. В результате чего в объекте-родителе и
объекте-потомке будут действовать два одноименных метода, имеющих разную
алгоритмическую основу и, следовательно, придающие объектам разные
свойства. Это и называется полиморфизмом объектов.
5.6 Общие сведения о языке Delphi
Delphi (Делфи) – среда программирования, в которой используется язык
программирования Object Pascal.
Изначально язык был предназначен исключительно для разработки
приложений Microsoft Windows, затем был реализован также для платформ
Linux (как Kylix), однако после выпуска в 2002 году Kylix 3 его разработка
была прекращена, и, вскоре после этого, было объявлено о поддержке Microsoft
.NET. Реализация языка Delphi проектом Free Pascal позволяет использовать его
для создания приложений для таких платформ, как Mac OS X, Windows CE и
Linux.
Delphi  результат развития языка Турбо Паскаль, который, в свою
очередь, развился из языка Паскаль. Паскаль был полностью процедурным
языком, Турбо Паскаль начиная с версии 5.5 добавил в Паскаль объектноориентированные свойства, а Delphi  объектно-ориентированный язык
программирования с возможностью доступа к описанию классов и их членов в
компилируемом коде, также называемом интроспекцией. Так как все классы
наследуют функции базового класса TObject, то любой указатель на объект
можно преобразовать к нему, и воспользоваться методом ClassType и функцией
TypeInfo, которые и обеспечат интроспекцию. Также отличительным свойством
Дельфи от С++ является отсутствие возможности располагать объекты в стеке
27
(объекты, унаследованные из Турбо Паскаля, располагаться в стеке могут) – все
объекты попадают в динамически выделяемую область. Object Pascal, а затем и
язык Delphi являются функциональными наращиваниями Turbo Pascal. Об этом
говорят обозначения версий компилятора. Так, в Delphi 7 компилятор имеет
номер версии 15.0 (Последняя версия Borland Pascal / Turbo Pascal обозначалась
7.0, в Delphi 1 компилятор имеет версию 8.0, в Delphi 2  9.0, и т. д. Номер
версии 11.0 носит компилятор Pascal, входивший в состав среды C++Builder).
Delphi оказал огромное влияние на создание концепции языка C++ для
платформы .NET. Многие его элементы и концептуальные решения вошли в
состав С++. Одной из причин называют переход Андерса Хейлсберга, одного из
ведущих разработчиков Дельфи, из компании Borland Ltd. в Microsoft Corp.
Версия 1 была предназначена для разработки под 16-ти разрядную
платформу Win16;
Версии со второй компилируют программы под 32-х разрядную
платформу Win32;
Вместе с шестой версией Delphi вышла совместимая с ним по языку и
библиотекам среда Kylix, предназначенная для компиляции программ под
операционную систему Linux;
Версия восемь способна генерировать байт-код исключительно для
платформы
.NET. Это первая среда, ориентированная на разработку
мультиязычных приложений (лишь для платформы .NET);
Последующие версии (обозначаемые годами выхода, а не порядковыми
номерами, как это было ранее) могут создавать как приложения Win32, так и
байт-код для платформы .NET;
Delphi for .NET – среда разработки Delphi, а так же язык Delphi (Object
Pascal), ориентированные на разработку приложений для .NET. Первая версия
полноценной среды разработки Delphi для .NET – Delphi 8. Она позволяла
писать приложения только для .NET. В настоящее время, в Delphi 2006, можно
писать приложения для .NET используя стандартную библиотеку классов .NET,
VCL для .NET. В марте 2006 года компания Borland приняла решение о
28
прекращении
дальнейшего
совершенствования
интегрированных
сред
разработки JBuilder, Delphi и C++Builder по причине убыточности этого
направления.
Планируется
продажа
IDE-сектора
компании.
Группа
сторонников свободного программного обеспечения организовала сбор средств
для покупки у Borland прав на среду разработки и компилятор.
Однако в ноябре того же года было принято решение отказаться от
продажи IDE бизнеса. Тем не менее, разработкой IDE продуктов теперь будет
заниматься новая компания  CodeGear, которая будет финансово полностью
подконтрольна Borland. Borland продолжил развитие IDE систем под именем
Turbo: Turbo Delphi, Turbo Delphi for .NET, Turbo C#, Turbo C++ А в марте 2007
года CodeGear порадовала пользователей обновленной линейкой продуктов
Delphi 2007 for Win32 и выходом совершенно нового продукта Delphi 2007 for
PHP.
Delphi  это комбинация нескольких важнейших технологий:
 высокопроизводительный компилятор в машинный код;
 объектно-ориентированная модель компонент;
 визуальное (а, следовательно, и скоростное) построение приложений
из программных прототипов;
 масштабируемые средства для построения баз данных;
 компилятор в машинный код.
Компилятор,
встроенный
в
Delphi,
обеспечивает
высокую
производительность, необходимую для построения приложений в архитектуре
«клиент-сервер». Этот компилятор в настоящее время является самым быстрым
в мире, его скорость компиляции составляет свыше 120 тысяч строк в минуту
на компьютере 486DX33. Он предлагает легкость разработки и быстрое время
проверки готового программного блока, характерного для языков четвертого
поколения и в то же время обеспечивает качество кода, характерного для
компилятора 3GL.
Кроме
того,
Delphi
обеспечивает
быструю
разработку
без
необходимости писать вставки на Си или ручного написания кода (хотя это
29
возможно). В процессе построения приложения разработчик выбирает из
палитры компонент готовые компоненты как художник, делающий крупные
мазки кистью. Еще до компиляции он видит результаты своей работы  после
подключения к источнику данных их можно видеть отображенными на форме,
можно перемещаться по данным, представлять их в том или ином виде. В этом
смысле проектирование в Delphi мало чем отличается от проектирования в
интерпретирующей среде, однако после выполнения компиляции мы получаем
код, который исполняется в 10-20 раз быстрее, чем то же самое, сделанное при
помощи интерпретатора. Кроме того, компилятор компилятору рознь, в Delphi
компиляция производится непосредственно в родной машинный код, в то время
как существуют компиляторы, превращающие программу в так называемый pкод, который затем интерпретируется виртуальной p-машиной. Это не может не
сказаться на фактическом быстродействии готового приложения.
5.6.1 Окно формы
Окно формы представляет собой проект Windows-окна будущей
программы. Вначале это окно пусто. Точнее, оно содержит стандартные для
Windows интерфейсные элементы – кнопки вызова системного меню,
максимизации,
минимизации
и
закрытия
окна,
полосу
заголовка
и
очерчивающую рамку. Вся рабочая область окна обычно заполнена точками
координатной сетки, служащей для упорядочения размещаемых на форме
компонентов (вы можете убрать эти точки, вызвав с помощью меню Tools |
Environment options соответствующее окно настроек и убрав флажок в
переключателе Display Grid на окне, связанном с закладкой Preferences).
Значительную
часть
времени
программист
занят увлекательным
занятием, напоминающим работу с набором деталей конструктора Lego: он
«достает» из палитры компонентов, как из коробки с деталями, нужный
компонент и размещает его на «наборном поле» окна формы, постепенно
заполняя форму интерфейсными элементами. Собственно, именно в этом
процессе наполнения формы и заключается главная изюминка визуального
программирования. Программист в любой момент времени контролирует
30
содержание окна создаваемой программы и может внести в него необходимые
изменения.
5.6.2 Окно дерева объектов
Это окно появилось в версии 6 и предназначено для наглядного
отображения связей между отдельными компонентами, размещенными на
активной форме или в активном модуле данных. Щелчок по любому
компоненту в этом окне активизирует соответствующий компонент в окне
формы и отображает свойства этого компонента в окне Инспектора объектов.
Двойной щелчок приводит к срабатыванию механизма Code Insight, который
вставляет в окно кода заготовку для обработчика события OnClick. Наконец,
компонент можно «перетащить» в окне и таким образом поменять его
владельца (свойство parent). В предыдущих версиях такую замену можно было
сделать только с помощью межпрограммного буфера обмена Clipboard.
5.6.3 Окно инспектора объектов
Любой размещаемый на форме компонент характеризуется некоторым
набором параметров: положением, размером, цветом и т.д. Часть этих
параметров, например, положение и размеры компонента, программист может
изменять, манипулируя с компонентом в окне формы. Для изменения других
параметров предназначено окно Инспектора объектов. Это окно содержит две
страницы – Properties (Свойства) и Events (События). Страница properties
служит для установки нужных свойств компонента, страница Events позволяет
определить реакцию компонента на то или иное событие. Совокупность
cвойств отображает видимую сторону компонента: положение относительно
левого верхнего угла рабочей области формы, его размеры и цвет, шрифт и
текст надписи на нем и т. п.; совокупность событий – его поведенческую
сторону: будет ли компонент реагировать на щелчок мыши или на нажатие
клавиш, как он будет вести себя в момент появления на экране или в момент
изменения размеров окна и т. п.
Каждая страница окна Инспектора объектов представляет собой
двухколончатую таблицу, левая колонка которой содержит название свойства
31
или
события,
а
правая
–
конкретное
значение
свойства
или
имя,
обрабатывающей соответствующее событие.
Строки таблицы выбираются щелчком мыши и могут отображать
простые или сложные свойства. К простым относятся свойства, определяемые
единственным значением – числом, строкой символов, значением True (Истина)
или False (Ложь) и т. п. Например, свойство caption (Заголовок) представляется
строкой символов, свойства Height (Высота) и width (Ширина) – числами,
свойство Enabled (Доступность) –значениями True или False. Сложные свойства
определяются совокупностью значений. Слева от имени таких свойств
указывается значок «+», а щелчок мышью по этому символу приводит к
раскрытию
списка
составляющих
сложного
свойства.
Чтобы
закрыть
раскрытый список, нужно щелкнуть по значку «-» сложного свойства.
В
верхней
части
окна
Инспектора
объектов
располагается
раскрывающийся список всех помещенных на форму компонентов. Поскольку
форма сама по себе является компонентом, ее имя также присутствует в этом
списке. В отличие от предыдущих версий раскрывающийся список содержит не
только имена компонентов, но и их классы.
В локальном меню окна, которое появляется после щелчка по нему
правой кнопкой, имеется ряд опций, позволяющих настроить окно. В
частности, после выбора stay on Top, окно Инспектора объектов будет
«всплывать» над всеми другими окнами независимо от его активности. Такое
состояние окна удобно при частом его использовании, например, при
конструировании сложной формы, содержащей множество компонентов. Если
выбрать в локальном меню опцию Arrange и затем by Category, все строки окна
Инспектора объектов будут представлять собой раскрывающиеся списки
свойств, упорядоченные по категориям (рисунок 1).
32
Рисунок 1– Списки свойств упорядоченные по категориям
Любые категории можно сделать невидимыми. Для этого нужно в
локальном меню выбрать view и затем в дополнительном меню убрать флажок
слева от категории.
В отличие от предыдущих версий Delphi в версии 6 сложные свойства,
ссылающиеся на объекты, выделяются в окне Инспектора объектов цветом и
показываются на странице Events. Если такое свойство определено, слева от
него появляется кнопка «+», позволяющая увидеть (и при необходимости
изменить) свойства и обработчики событий связанного объекта. Для примера на
рисунке 2 показано, как с помощью окна Инспектора объектов, связанного с
формой Form1, определить обработчик OnClick для одной из опций связанного
с формой меню.
С помощью опции properties локального меню окна Инспектора
объектов можно отменить такую его функциональность, если в списке
SpeedSettings соответствующего диалогового окна выбрать Delphi 5 emulation.
33
Рисунок 2 – Установка обработчика OnClick опции меню для формы
Form1
5.6.4 Окно кода программы
Окно кода предназначено для создания и редактирования текста
программы. Этот текст составляется по специальным правилам и описывает
алгоритм работы программы. Совокупность правил записи текста называется
языком
программирования.
В
системе
Delphi
используется
язык
программирования Object Pascal, который представляет собой расширенную и
усовершенствованную версию широко распространенного языка Паскаль,
впервые предложенного швейцарским ученым Н. Виртом еще в 1970г. и
усовершенствованного сотрудниками корпорации Borland (созданные ими
языки назывались Turbo Pascal, Borland Pascal и Object Pascal). Несмотря на то,
что визуальная среда Delphi берет на себя многие рутинные аспекты
программирования, знание языка Object Pascal является непременным условием
для любого программиста, работающего в этой среде.
34
Первоначально окно кода содержит минимальный исходный текст,
обеспечивающий нормальное функционирование пустой формы в качестве
полноценного Windows-окна. В ходе работы над проектом программист вносит
в него необходимые дополнения, чтобы придать программе нужную
функциональность. Поскольку для создания даже простых программ вам
понадобится создавать и изменять (редактировать) код программы, ниже
описываются основные приемы работы с окном кода.
Сразу после открытия нового проекта в нем будут такие строки:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Frms, Dialogs;
type
TFormI = class(TForm) private
{ Private declarations } public
{ Public declarations } end;
var
Form1: TForm1;
implementation
{SR *.DFM}
end.
Эти строки Delphi автоматически вставляет в окно кода для новой
формы. Как уже говорилось, окно кода определяет поведенческую сторону
окна программы (т. е. окна, появляющегося после начала работы программы), а
окно формы - его внешние проявления. Оба окна тесно связаны друг с другом,
причем Delphi «хозяйничает» в его верхней части, вставляя необходимые
строки между
unit Unit1;
и implementation
35
Пока не стоит изменять эту часть текста. В дальнейшем можно будет
вставлять в окно текст программы между строками
{$R-*.DFM}
и
end.
в нижней части окна.
Чтобы вставить в окно новую строку (строки), нужно сначала, с
помощью клавиш курсора или щелкнув по окну мышью, поставить текстовый
указатель (мигающую вертикальную черту) на нужное место, а затем с
помощью
клавиатуры
ввести
текст.
Обычно
текст
кода
программы
располагается в нескольких строках. Для перехода на новую строку
используйте клавишу Enter. Если в процессе ввода вы ошиблись и тут же
заметили свою ошибку, удалите ошибочный символ клавишей Backspace
(продолговатая серая клавиша в правом верхнем углу зоны алфавитноцифровых клавиш или расположенная там же клавиша с левой стрелкой).
Клавиша Backspace удаляет символ слева от мигающего указателя, а клавиша
Delete - справа от него. Если понадобится удалить сразу всю строку текста,
поставьте в любое место строки мигающий указатель, нажмите клавишу Ctrl и,
не отпуская ее, клавишу с латинской буквой Y. Такое совместное нажатие
клавиш в дальнейшем будем обозначать символом «+»: Ctrl+Y. Чтобы отменить
последнее изменение текста, нажмите Ctrl+Z.
После сохранения проекта появляется целый перечень сохраняемых
файлов:
 DPR – файл проекта. Содержит он основной код программы, ссылки
на все окна (формы) проекта и относящиеся к ним модули. В нем также
содержится код инициализации. Имеет одноименное название с проектом;
 PAS – pascal файл. Он содержит текст, который вы видите в окне
редактора кода так называемого модуля программы;
 DFM – delphi form. Представляет собой файл с полными данными о
проектировщике формы. Позиция, размер, расположенные компоненты и пр.
36
Форма приложения является неотъемлемой частью модуля PAS и имеет то же
название;
 DCU – двоичный файл модуля. Имеет одноименное название с
модулем;
 RES – ресурсный файл. Содержит в себе иконки, значки указателя
мыши, картинки, звуки;
 DOF, DSK – содержат настройки проекта;
 CFG – содержит настройки конфигурации проекта;
 EXE – откомпилированная программа. Сохраняется автоматически
при запуске проекта на выполнение. Обновляется в момент компиляции. Имеет
одноименное название проекта. Полностью самостоятельное приложение;
По ходу работы в среде Delphi могут автоматически создаваться файлы,
имеющие расширение, начинающееся символом ~. Это резервные копии
файлов, которые создаются при их повторном сохранении.
5.7 Основные компоненты Delphi
Для того, чтобы наполнить форму содержанием используем компоненты
Delphi.
Они
располагаются
на
соответствующих
вкладках
палитры
компонентов на главном окне.
Рисунок 3 – Вкладки компонентов Delphi
Все основные компоненты Delphi находятся на первых четырех
вкладках:
37
 Standard;
 Additional;
 Win32;
 System.
Их названия всплывают в виде подсказок при наведении мышки на
пиктограммы. Чтобы перенести компонент на форму, нужно щёлкнуть его
мышкой (при этом выбранный компонент выделяется), и затем щёлкнуть в том
месте формы, где его предполагается разместить. В дальнейшем компоненты
можно свободно перетаскивать по форме мышкой, «конструируя» нужный
интерфейс. Если, щёлкнув по компоненту, мы захотим отказаться от его
переноса на форму, то необходимо щёлкнуть по стрелке, расположенной слева
на вкладке. Выделение компонента снимется.
5.7.1 Стандартные компоненты
Первым компонентом в среде программирования Delphi является
страница Палитры Компонент.
На первой странице Палитры Компонент размещены 14 объектов
определенно важных для использования.
Набор
и
порядок
компонент
на
каждой
странице
являются
конфигурируемыми. При необходимости можно добавить к имеющимся
компонентам новые, изменить их количество и порядок.
Стандартные компоненты Delphi перечислены ниже с некоторыми
комментариями по их применению. При изучении данных компонент было бы
полезно иметь под рукой компьютер с тем, чтобы посмотреть, как они
работают и как ими манипулировать.
 TMainMenu позволяет поместить главное меню в программу. При
помещении TMainMenu на форму это выглядит, как просто иконка. Иконки
данного типа называют «невидимыми компонентом», поскольку они невидимы
во время выполнения программы. Создание меню включает три шага:
помещение TMainMenu на форму, вызов Дизайнера Меню через свойство Items
в Инспекторе Объектов, определение пунктов меню в Дизайнере Меню.
38
 TPopupMenu позволяет создавать всплывающие меню. Этот тип меню
появляется по щелчку правой кнопки мыши.
 TLabel служит для отображения текста на экране. Можно изменить
шрифт и цвет метки, если дважды щелкнете на свойство Font в Инспекторе
Объектов.
 TEdit – стандартный управляющий элемент Windows для ввода. Он
может быть использован для отображения короткого фрагмента текста и
позволяет пользователю вводить текст во время выполнения программы.
 TMemo – иная форма TEdit. Подразумевает работу с большими
текстами. TMemo может переносить слова, сохранять в Clipboard фрагменты
текста и восстанавливать их, и другие основные функции редактора. TMemo
имеет ограничения на объем текста в 32Кб, это составляет 10-20 страниц. (Есть
VBX и «родные»компоненты Delphi, где этот предел снят).
 TButton позволяет выполнить какие-либо действия при нажатии кнопки
во время выполнения программы. В Delphi все делается очень просто.
Поместив TButton на форму, Вы по двойному щелчку можете создать заготовку
обработчика события нажатия кнопки. Далее нужно заполнить заготовку кодом
(подчеркнуто то, что нужно написать вручную):
procedure TForm1.Button1Click(Sender: TObject);
begin
MessageDlg('Are you there?',mtConfirmation,mbYesNoCancel,0);
end;
 TCheckBox отображает строку текста с маленьким окошком рядом. В
окошке можно поставить отметку, которая означает, что что-то выбрано.
Например, если посмотреть окно диалога настроек компилятора (пункт меню
Options | Project, страница Compiler), то можно увидеть, что оно состоит
преимущественно из CheckBox'ов.
 TRadioButton позволяет выбрать только одну опцию из нескольких.
Если опять открыть диалог Options | Project и выберете страницу Linker Options,
39
то можно видеть, что секции Map file и Link buffer file состоят из наборов
RadioButton.
 TListBox нужен для показа прокручиваемого списка. Классический
пример ListBox'а в среде Windows – выбор файла из списка в пункте меню File |
Open многих приложений. Названия файлов или директорий и находятся в
ListBox'е.
 TComboBox во многом напоминает ListBox, за исключением того, что
позволяет водить информацию в маленьком поле ввода сверху ListBox. Есть
несколько типов ComboBox, но наиболее популярен выпадающий вниз (dropdown combo box), который можно видеть внизу окна диалога выбора файла.
 TScrollbar – полоса прокрутки, появляется автоматически в объектах
редактирования,
ListBox'ах
при
необходимости
прокрутки
текста
для
просмотра.
 TGroupBox используется для визуальных целей и для указания
Windows, каков порядок перемещения по компонентам на форме (при нажатии
клавиши TAB).
 TPanel – управляющий элемент, похожий на TGroupBox, используется
в декоративных целях. Чтобы использовать TPanel, просто поместите его на
форму и затем положите другие компоненты на него. Теперь при перемещении
TPanel будут передвигаться и эти компоненты. TPanel используется также для
создания линейки инструментов и окна статуса.
 TScrollBox
представляет
место
на
форме,
которое
можно
скроллировать в вертикальном и горизонтальном направлениях. Пока в явном
виде не отключить эту возможность, форма сама по себе действует так же.
Однако, могут быть случаи, когда понадобится прокручивать только часть
формы. В таких случаях используется TScrollBox.
40
6 Рекомендуемая литература
1 Бадд Т. Объектно-ориентированное программирование в действии /
Перев. с англ. Бадд Т. Объектно-ориентированное программирование в
действии. – СПб.: Питер, 1997. – 270с. – ISBN 5-88782-270-8.
2 Грэди Буч Объектно-ориентированный анализ и проектирование с
примерами приложений на С++ = Object-Oriented Analysis and Design with
Applications / Пер. И.Романовский, Ф.Андреев. – 2-е изд. – М., СПб.: Бином,
Невский диалект, 1998. – 560с. – ISBN 5-7989-0067-3.
3 Лаптев, В. В. C++. Объектно-ориентированное программирование. /
В.В. Лаптев. – СПб: Питер, 2008. – 464с. – ISBN: 978-5-91180-200-4.
4 Пышкин,
Е.В.
Основные
концепции
и
механизмы
объектно-
ориентированного программирования/ Е.В. Пышкин. – СПб.: БХВ-Петербург,
2005. – 640с. – ISBN 589-0-371-9752-44.
5 Нил Дж. Рубенкинг. Язык программирования Delphi для «чайников».
Введение в Borland Delphi 2006 Delphi for Dummies. – М.: Диалектика, 2007. –
336с. – ISBN 0-7645-0179-8.
6 Хавьер Пашеку. Программирование в Borland Delphi 2006 для
профессионалов. Delphi for .NET Developer’s Guide. – М.: Вильямс, 2006. –944с.
– ISBN 0-672-32443-X.
7 Шелест, В Программирование / В. Шелест. – СПб: БХВ-Петербург,
2002. – 592с. – ISBN 589-0-371-9874-34.
8 Ианова,
Г.С.,
Ничушкина,
Т.Н.,
Пугачев
Е.К.
Объектно-
ориентированное программирование / Г. С. Иванова, Т.Н. Ничушкина,
Е.К. Пугачев. – СПб: МГТУ им. Баумана, 2001 – 320с. – ISBN 589-0-332-969271.
9 Архангельский,
А.Я.
Программирование
в
Delphi.
/
А.Я. Архангельский. – М.: Нолидж, 2000, – 658с. –ISBN 093-04-0543-003-89.
10 Карчевская, М.П., Рамбургер, О.Л., Тархов, С.В., Хамзина, Е.А.
Разработка приложений в среде Borland Delphi: лабораторный практикум по
41
дисциплине «Информатика» / М.П. Карчевская, Е.А. Хамзина. – Уфа: УГАТУ,
2005, – 314с. – ISBN 563-6-890-2318-90.
11 Белов, В.В. Программирование в Delphi: процедурное, объектноориентированное, визуальное. / В.В. Белов. – М: Горячая Линия-Телеком, 2009.
– 240с.
12 Культин, Н.Б. Основы программирования в Delphi 7. / Н.Б. Культин.
– СПб.: БХВ-Петербург, 2005, – 291с. – ISBN 956-43-98340-0095-65.
13 Ревич, Ю. Нестандартные приемы программирования на Delphi. /
Ю. Ревич. – СПб.: БХВ-Петербург, 2005. –323с. – ISBN 009-78-734-0989-67.
14 Сухарев, О.Т. Основы Delphi. Профессиональный подход. /
О.Т. Сухарев. – СПб.: Питер Наука и Техника, 2004. – 582с. – ISBN 008-559045-00543-07.
15 Фленов, Р.О. Библия Delphi. / Р.О. Фленов. – СПб.: БХВ-Петербург,
2008. – 374с. – ISBN 0083-58-008-06065-04.
16 Шпак, Ю.А. Delphi 7 на примерах. / Ю. Шпак. – Киев: Юниор, 2003.
– 248с. – ISBN 008-43-226-0301-61.
17 Дарахвелидзе, П., Марков, Е. Программирование в Delphi 7. /
П. Дарахвелидзе, Е. Марков.– СПб.: БХВ-Петербург, 2003. – 248с. – ISBN 87605-9054-0542-41
18 Пачек, К. Программирование в Delphi 5. Руководство разработчика. /
К. Пачек Программирование в Delphi 5. – М.: Нолидж, 2000, 248с. ISBN 121976-003-9321-07.
19 Фаранов, В.В. Учебное пособие по Delphi 4. / В.В. Фаранов. – СПб.:
1999. – 193с. – ISBN 437-0431-945-780.
42
Приложение А
(справочное)
Образец оформления титульного листа
Министерство образования и науки Российской федерации
Бузулукский гуманитарно-технологический институт (филиал)
федерального государственного бюджетного образовательного учреждения
высшего профессионального образования
«Оренбургский государственный университет»
Факультет …
Кафедра физики, информатики, математики
КУРСОВАЯ РАБОТА
по дисциплине «Объектно-ориентированное программирование»
ТЕМА
БГТИ (филиал) ОГУ 050100.62 5012.__ ОО
Руководитель:
___________ Литвинова С.А.
«___» ______________ 2012г.
Исполнитель:
студент группы ________
________________Ф. И. О.
«___» ______________ 2012г.
Нормоконтроль:
___________ Максимова С.М.
«___» ______________ 2012г.
Бузулук 2012
43
Приложение Б
(справочное)
Форма листа задания
Министерство образования и науки Российской федерации
Бузулукский гуманитарно-технологический институт (филиал)
федерального государственного бюджетного образовательного учреждения
высшего профессионального образования
«Оренбургский государственный университет»
Факультет …
Кафедра физики, информатики, математики
Задание на курсовую работу
Тема
Перечень подлежащих разработке в работе вопросов:
…….
Перечень графического материала:
……..
Дата выдачи задания: «___» _________ 20__г.
Руководитель: __________ Литвинова С.А.
Исполнитель: ___________ ФИО студента
Срок защиты работы «___» ______ 20__г.
44
Download