- •Назовите структурные операторы, применяемые в Object Pascal, и их особенности
- •Использовании подпрограмм в Object Pascal и их разновидности
- •Различных механизмах передачи параметров в под программы Delphi
- •Перечислите области видимости элементов классов, применяемые в Object Pascal
- •Расскажите о правилах описания методов в классах и их особенностях
- •Объясните понятия статических, перегружаемых и абстрактных методов
- •Опишите правила наследования классов.
- •Поясните сущность полиморфизма
- •Расскажите о возможностях определения типа объекта во время выполнения программы и приведение типов объектов
- •Опишите жизненный цикл экземпляра класса, расскажите о конструкторе экземпляров класса
- •Расскажите о деструкторе класса экземпляров класса
- •Деструкторе класса экземпляров класса
- •Описание и использование специальных свойств| объекта property
- •Опишите механизм сообщений в ос Windows
- •Расскажите о методах обработки исключительных ситуаций
- •Расскажите о классах, предназначенных для хранения информации в виде списков
- •Основные свойства и методы классов-списков
- •Опишите возможности и особенности хранения строковых массивов в классах-наследниках tStrings
- •Поясните понятие потока и объясните преимущество использования потоков по отношению к традиционным методам чтения/записи данных
- •Расскажите о строчных потоках, построенных на основе оперативной памяти
- •Поясните понятие графического контекста Windows
- •Форматы графических файлов, поддерживаемых Delphi
- •Расскажите о файлах, соответствующих каждой форме приложения в Delphi
- •Опишите структуру приложения на Delphi, расскажите о видах интерфейса приложения с точки зрения расположения его окон на экране
- •Опишите процесс построения приложения в Delphi
- •Опишите основные инструменты среды разработчика Delphi
- •Опишите жизненный цикл экземпляров классов
- •Расскажите о механизме интерфейсов в Delphi
- •Расскажите об интерфейсах (Interface и (Unknown))
- •Расскажите о правилах именования компонентов и автоматическое именование их Средой разработчика
- •Поясните разницу между свойством принадлежности компонентов и свойством визуальной принадлежности
- •Расскажите о взаимосвязях компонентовчерез механизм уведомлений
- •Расскажите о визуальных компонентах-оболочкахи легковесных компонентах
- •Расскажите об организации структуры элементов управления в окне
- •Расскажите об методах расположения визуальных компонентов на экране и управления их размерами
- •Расскажите о свойствах видимости и доступности визуальных компонентов
- •Расскажите о компонентах, предназначенных для вывода на экран текстовой информации
- •Расскажите о компонентах, предназначенных для ввода текстовой информации
- •При помощи каких компонентов можно обеспечить возможность ввода пользователем числовых значений?
- •При помощи каких компонентов можно вывести на экран какое-либо графическое изображение?
- •Расскажите о возможностях элементов управления — кнопок
- •Приведите правила создания компонентов во время выполнения программы
- •Поясните понятие диалогового компонента
- •Поясните разницу между модальными и немодальными диалогами
- •Поясните понятие формы и основы использования форм в Delphi
- •Опишите жизненный цикл формы
- •Расскажите об основах организации многооконных приложений в Delphi
- •Поясните понятие фрейма
- •Расскажите о депозитарии форм
- •Опишите основные методы, применяемые в Delphi для управления окружением программы
- •Расскажите про использование dll в программных продуктах
- •Расскажите про многопоточные приложения
- •Расскажите об особенностях модели сом
- •Расскажите про модель сообщений компонентов
Расскажите об использовании вариантных переменных в Delphi
Ответ: Вариантные переменные не имеют конкретного типа данных на этапе компиляции, а в процессе выполнения программы могут хранить данные разных типов. Описываются такие переменные в обычном порядке с типом данных Variant.
Во время выполнения программы в вариантных переменных могут храниться данные любого типа, за исключением: структурных: записей и статических массивов, однако поддерживаются специальные вариантные массивы; ссылочных: типизированных и не типизированных указателей, а также указателей на экземпляры классов; множественных типов данных.
Опишите преимущества и недостатки вариантных переменных по сравнению с обычными типами данных
Ответ: Преимуществом использования вариантных переменных является удобство работы, которое проявляется в случаях, когда на этапе разработки программы неизвестны типы некоторых переменных. Еще одним плюсом является множество вспомогательных операций, выполняемых системой с вариантными переменными, например, автоматическое приведение типов.
Недостатками вариантов являются больший объем к занимаемой памяти и медленное выполнение операций с участием таких переменных. В качестве еще одного недостатка можно назвать отсутствие во время компиляции проверки на совместимость типов, что может вызывать ошибки времени выполнения программы. Причем такие ошибки носят динамический характер — они могут проявляться редко и при трудно определяемых условиях, что еще больше усугубляется оптимизатором компиляции Delphi.
Использовании вариантных массивов
Ответ: Вариантный массив — это один из видов вариантной переменной, информация в которой представляется в виде набора элементов и имеет индексный механизм доступа. Для создания вариантного массива используется функция-конструктор VarArrayCreate, в которой задается размерность массива, интервалы индексации и тип элементов. Элементы массива могут иметь любой вариантный тип, в том числе и являться вариантными массивами. Таким образом, в Delphi возможно построение многомерных массивов непрямоугольной формы и даже, неоднородных массивов, элементы которых имеют разные типы данных.
Использовании процедурных переменных
Ответ: Процедурные переменные — это переменные, являющиеся ссылками на подпрограммы. Описание процедурного типа определяет:
процедурой или функцией является подпрограмма, на которую указывает переменная;
является ли подпрограмма, на которую указывает ссылка, методом объекта;
сколько параметров должно быть указано при вызове подпрограммы из процедурной переменной, и какого они типа;
какое значение возвращает подпрограмма, если она является функцией.
Соответственно, процедурной переменной можно присвоить ссылку толь-
ко на ту подпрограмму, которая соответствует типу переменной по всем
этим параметрам.
Назовите структурные операторы, применяемые в Object Pascal, и их особенности
Ответ. В Object Pascal применяются следующие структурные операторы
(операторы, управляющие структурой программы):
* условный оператор if. .Then. . Else (возможно использование сокращенной формы if. .Then), предназначенный для выполнения фрагмента программы при истинности условия, или другого фрагмента программы в противном случае;
условный оператор множественного выбора Case. .Of. .Else (с сокращенной формой без секции Else), предназначенный для выполнения фрагмента программы из заданного набора при истинности одного из условий из заданного набора условий, или какого-либо фрагмента программы в случае ложности всех условий набора. Условиями в данном случае совпадение значения заданной в заголовке переменной с одним из значений заданного списка;
• оператор зацикливания со счетчиком циклов For. . То. . Do (с декрементной модификацией For. .DownTo. .Do), предназначенный для многократного повторения фрагмента программы, расположенного после ключевого слова DO;
условный оператор зацикливания с предусловием while. . Do, предназначенный для многократного повторения фрагмента программы, указанного после ключевого слова DO, пока является истинным условие, указанное в заголовке оператора;
условный оператор зацикливания с постусловием Repeat. .Until; предназначенный для многократного повторения фрагмента программы, пока
не станет истинным условие, указанное после ключевого слова until;
В качестве фрагментов программы, зацикливаемых при использовании операторов зацикливания, или выполняемых при истинности условий в условных операторах и условных операторах зацикливания, может применяться одна команда языка или вызов одной подпрограммы. Для выполнения нескольких команд применяются составные операторы — набор команд, заключенных в ключевые слова begin, .end.
Для досрочного прерывания зацикленного фрагмента программы используется оператор break. В этом случае управление передается команде,
следующей за прерванным оператором зацикливания.
Использовании подпрограмм в Object Pascal и их разновидности
Ответ: Подпрограмма — это логически законченная часть программы, описываемая отдельно от раздела описания логики программы и вызываемая по имени, уникальному в некоторой области видимости. Подпрограммы, так
же как и программы, имеют сложную структуру, включающую в себя разделы описания переменных, констант, типов и так далее (все они называются локальными, так как их область видимости ограничена процедурой). Подпрограммы в Object Pascal, представлены процедурами и функциями. Процедура является обычной подпрограммой, то есть фрагментом программы, имеющим параметры и выполняющим некоторый набор команд языка.
Функция, в отличие от процедуры, может возвращать значение (результат
работы) в подпрограмму, вызвавшую ее.
Опишите правила (синтаксис) описания параметров в подпрограммах
Ответ: Описание параметров подпрограмм происходит в их заголовках после имени и имеет следующий вид:
Procedure <Имя> (<Параметр 1>: <Тип параметра 1>; . . .;
<Параметр 2>: <Тип параметра 2>);
или для функций:
Function <Имя> (<Список параметров>): <Тип значения>;
Расскажите об использовании параметров по умолчанию
Ответ: В Object Pascal предусмотрена возможность использования параметров по умолчанию. Такие параметры находятся в конце списка параметров и их описания имеют следующий вид:
<Параметр>: <Тип параметра> = Значение по умолчанию>
Подпрограммы, использующие параметры по умолчанию вызываются либо с полным набором параметров, либо набором обязательных параметров и одним или несколькими параметрами, имеющими значения по умолчанию. Для того, чтобы передать некоторый параметр, задаваемый умолчанием, следует передать все параметры, находящиеся в списке параметров заголовка подпрограммы перед ним.