- •Объектно-ориентированное программирование
- •Объектно - ориентированное программирование, достоинства ооп. Принцип действия программ управляемых событиями.
- •Основные понятия
- •События
- •События в Delphi
- •Модульное программирование.
- •Нисходящее программирование.
- •Структурное программирование.
- •Понятия объекта, класса объектов.
- •Основные понятия объектно-ориентированного программирования: инкапсуляция, наследование и полиморфизм.
- •Данные типа класс, объявление класса, объекты.
- •Данные типа запись, оператор присоединения, правила использования.
- •Методы объекта и их реализация с помощью процедур и функций..
- •Конструкторы и деструкторы.
- •Палитра компонентов. Окно Формы. Инспектор объектов. Окно редактора кода (Среда delphi).
- •Файл проекта. Модуль формы. Файл ресурсов. Файл параметров проекта. Модули. Связь между файлами проекта. (Среда delphi).
- •Визуальные компоненты. Свойства компонентов, динамическое изменение свойств. События и делегирование.
- •Компоненты ввода-вывода и редактирования при разработке приложений.
- •Меню. Создание главного и контекстного меню. Создание приложений с использованием меню.
- •Данные строкового типа. Стандартные подпрограммы для строкового типа.
- •Иерархия объектов. Характеристики объектов. Абстрактный класс. Визуальные компоненты.
- •Создание списков и таблиц. Кнопочные компоненты, переключатели Формы. Модальные формы sdi и mdi приложения.
- •Использование файла ресурсов.
- •Обработка исключительных ситуаций. Стандартные классы исключений.
- •Способы хранения и обработки данных. Связанные списки Использование строковых массивов.
- •Потоки.
- •Процедуры и функции для преобразования данных.
- •Компонент Memo, назначение, правила использования, основные свойства компонента. Ввод и вывод числовых данных с помощью компонента Memo.
- •События. Переменные и их типы.
- •Константы, выражения и функции. Перегрузка функций.
- •Динамические данные. Указатели. Ссылочный тип. Динамические массивы.
- •Организация ссылок на ресурсы Internet, связей между компьютерами.
- •Объявления переменных. Встраиваемые функции.
- •Интерфейсы и реализация.
- •Свойство Canvas. Назначение, свойства объекта Canvas.
- •Основные методы класса Tcanvas для программного построения изображений.
- •Построение изображений в delphi: компоненты Bevel, Shape, назначение, свойства.
- •Создание изображений в Delphi: компонент Image, назначение, свойства.
- •Данные типа файл, типы файлов, объявление файловых переменных. Действия с файлами, связь с внешним файлом.
- •Библиотека dll, назначение, структура библиотеки, правила записи. Использование подпрограмм из dll библиотеки в проекте Delphi.
- •Окна для вывода сообщений (MessageDlg), назначение, принципы использования.
- •Внедрение объектов. Анимация, мультимедиа. Подпрограммы.
- •Ввод и вывод файлов в delphi. Процедуры открытия файлов для чтения, записи, добавления. Закрытие файлов. Текстовые файлы, назначение, правила использования.
Использование файла ресурсов.
Файлы ресурсов — это полезный механизм для отделения локализуемой информации от кода. Строковые ресурсы ссылаются на текст, применяемый в таких элементах пользовательского интерфейса приложения, как меню, диалоговые окна, информационные и предупреждающие сообщения и сообщения об ошибках. Если приложение предназначено для пользователей региона, отличающегося от места разработки приложения, эти ресурсы должны быть локализованы.
Файл ресурсов используется для отображения дополнительных сведений в шаблоне формы. Файлы ресурсов включаются в форму при сохранении и публикации шаблона формы.
В шаблон формы можно добавить следующие типы файлов ресурсов.
- Файлы HTML Файлы формата HTML можно использовать для отображения сведений в пользовательской области задач.
- Файлы XML Файлы формата XML можно использовать для заполнения элементов управления «Список», «Поле со списком» или «Раскрывающийся список». При использовании файла ресурсов формы, основанные на шаблоне формы, открываются быстрее, чем формы, использующие подключение данных для заполнения этих элементов.
Обработка исключительных ситуаций. Стандартные классы исключений.
Обработка исключительных ситуаций (англ. exception handling) — механизм языков программирования, предназначенный для описания реакции программы на ошибки времени выполнения и другие возможные проблемы (исключения), которые могут возникнуть при выполнении программы и приводят к невозможности (бессмысленности) дальнейшей отработки программой её базового алгоритма.
Условно классы исключения можно разделить на три типа:
- Контролируемые исключения могут происходить при нормальном выполнении системы и в большинстве своем характеризуют такие ситуации, как ошибки соединения с внешним сервисом, неверный пользовательский ввод и т.д.
- Некотролируемые исключения – это исключения, которые возникают вследствие выполнения некорректного кода. Эти исключения, как правило, могут быть перехвачены, но исправлению подлежат лишь в единичных случаях. К таким исключениям относят исключения возникающие при обращении по нулевому указателю, вызове несуществующего или защищенного метода, в результате неверного приведения типов и т.д.
- Фатальные исключения описывают ошибки, большую часть которых приложение не должно перехватывать. К ним относятся такие ситуации, как нехватка памяти, переполнение стека, попытка оперирования уже уничтоженным потоком приложения, внутренняя ошибка виртуальной машины или интерпретатора и многие другие.
Допустим, что у вас есть участок кода, где может произойти ошибка. Как сделать так, чтобы программа не зависла при ее возникновении? Очень просто. Надо заключить этот код в блок проверки исключений, и тогда ваша программа выдержит даже "цунами".
Итак, простейший блок исключений выглядит следующим образом:
tru
//Здесь ты пишешь код, в котором может произойти ошибка
except
//Если ошибка произошла, то выполнится этот код
end;
Рассмотрим простейший пример.
tru
х:=у/0;
except
//Здесь можно вывести сообщение об ошибке.
end;
х:=0;
Между tru и except у нас стоит маленькое действие— деление на ноль. Компьютер не умеет делать такие вещи (на ноль делить нельзя), поэтому произойдет ошибка и выполнится код между except и end. Если бы не было блока tru, то после возникновения ошибки процедура закончила бы выполнение, и все остальные операторы не были бы выполнены, как, например, в нашем случае — х:=о. При использовании tru ... except не будут выполнены только операторы между строкой, которая стала причиной ошибки, и except. После оператора except ... end все будет выполняться, как будто ничего не произошло. Если бы мы поменяли 0 на любое другое число, то ошибки бы не было, и код между except и end никогда не выполнился бы. Такой блок можно использовать не только для вывода сообщения о про изошедшей ошибке, он и исправить ситуацию. Например, в нашем случае, если между tru и except произошла ошибка, то между except и end можно присвоить переменной х значение по умолчанию на случай ошибки и продолжить выполнять процедуру с этим значением.
Теперь давайте разберемся с еще одним типом исключительных ситуаций — tru . . . finally.
tru
//Здесь пишется код, в котором может произойти ошибка
finally
//Этот код выполнится в любом случае
end;
Между tru и finally вы пишете свой сомнительный код, в котором может произойти ошибка. А между finally и end пишется код, который должен выполниться вне зависимости от результата кода между tru и finally. В этом случае мы не можем информировать пользователя об ошибке, потому что в разделе finally мы не знаем, произошла ошибка или нет. Зато работа с памятью упрощается