У вас вопросы?
У нас ответы:) SamZan.net

I Конструкторы и деструкторы статические виртуальные и динамические методы

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 28.12.2024

Билет10

1ВОПРОС Объектная модель в Delphi. Конструкторы и деструкторы, статические, виртуальные и динамические методы. Интерфейсы в Delphi.

Формула объекта

Объект = Данные + Операции

Классы объектов

Каждый объект всегда принадлежит некоторому классу объектов. Класс объектов - это обобщенное (абстрактное) описание множества однотипных объектов. Объекты являются конкретными представителями своего класса, их принято называть экземплярами класса. Классы

Для поддержки ООП в язык Delphi введены объектные типы данных, с помощью которых одновременно описываются данные и операции над ними. Объектные типы данных называют классами, а их экземпляры - объектами.

Классы объектов определяются в секции type глобального блокаtype

 TDelimitedReader = class

В некотором смысле объекты похожи на программные модули, для использования которых необходимо изучить лишь интерфейсную часть, раздел реализации для этого изучать не требуется. Поэтому дальше от описания класса мы перейдем не к реализации методов, а к созданию на их основе объектов.

Объекты

Чтобы от описания класса перейти к объекту, следует выполнить соответствующее объявление в секции var:

var

Reader: TDelimitedReader;

При работе с обычными типами данных этого объявления было бы достаточно для получения экземпляра типа. Однако объекты в среде Delphi являются динамическими данными, т.е. распределяются в динамической памяти. Поэтому переменная Reader - это просто ссылка на экземпляр (объект в памяти), которого физически еще не существует. Чтобы сконструировать объект (выделить память для экземпляра) класса TDelimitedReader и связать с ним переменную Reader, нужно в тексте программы поместить следующий оператор:

Reader := TDelimitedReader.Create;

Create - это так называемый конструктор объекта; он всегда присутствует в классе и служит для создания и инициализации экземпляров. При создании объекта в памяти выделяется место только для его полей. Методы, как и обычные процедуры и функции, помещаются в область кода программы; они умеют работать с любыми экземплярами своего класса и не дублируются в памяти.

После создания объект можно использовать в программе: получать и устанавливать значения его полей, вызывать его методы. Доступ к полям и методам объекта происходит с помощью уточненных имен, например:

Reader.NextLine;

Кроме того, как и при работе с записями, допустимо использование оператора with, например:

with Reader do

NextLine;

Если объект становится ненужным, он должен быть удален вызовом специального метода Destroy, например:

Reader.Destroy; // Освобождение памяти, занимаемой объектом

Destroy - это так называемый деструктор объекта; он присутствует в классе наряду с конструктором и служит для удаления объекта из динамической памяти. После вызова деструктора переменная Reader становится несвязанной и не должна использоваться для доступа к полям и методам уже несуществующего объекта. Чтобы отличать в программе связанные объектные переменные от несвязанных, последние следует инициализировать значением nil. Например, в следующем фрагменте обращение к деструктору Destroy выполняется только в том случае, если объект реально существует:

Reader := nil;

...

if Reader <> nil then Reader.Destroy;

Объекты могут выступать в программе не только в качестве переменных, но также элементов массивов, полей записей, параметров процедур и функций. Кроме того, они могут служить полями других объектов. Во всех этих случаях программист фактически оперирует указателями на экземпляры объектов в динамической памяти. Следовательно, объекты изначально приспособлены для создания сложных динамических структур данных, таких как списки и деревья. Указатели на объекты для этого не нужны. 

Методы

Процедуры и функции, предназначенные для выполнения над объектами действий, называются методами. Предварительное объявление методов выполняется при описании класса в секции interface модуля, а их программный код записывается в секции implementation. Однако в отличие от обычных процедур и функций заголовки методов должны иметь уточненные имена, т.е. содержать наименование класса.

нтерфейсы и их совместное использование классами 

 Ключевое слово Delphi interface позволяет создавать и использовать интерфейсы в ваших приложениях. Интерфейсы служат для расширения модели наследования в VCL, позволяя одному классу принадлежать нескольким  интерфейсам, а также нескольким классам - наследникам различных базовых классов использовать один интерфейс. Интерфейсы полезны в тех случаях, когда наборы операций, такие как потоки, используются большим количеством объектов.

Таким образом, интерфейсы - это средства для обеспечения взаимодействия между разными объектами.

Интерфейсы похожи на классы, которые содержат в себе только абстрактные методы и четкие определения их функциональности. Определение метода интерфейса включает в себя параметры и типы параметров, возвращаемый тип, а также ожидаемое поведение. Методы интерфейса семантически или логически связаны с отражением цели интерфейса. Существует соглашение об интерфейсах, гласящее, что каждый интерфейс должен быть назван в соответствии с задачей, которую он будет выполнять. Например, интерфейс iMalloc предназначен для распределения, освобождения и управления памятью. Приведем простой пример объявления интерфейса (листинг 1.14):

Листинг 1.14

type

IEdit = interface

procedure Copy; stdcall;

 procedure Cut; stdcall;

procedure Paste; stdcall;

function Undo: Boolean; stdcall;

end;

Нельзя создать экземпляр интерфейса при помощи интерфейса. Для получения экземпляра интерфейса вам нужно объявить его в классе, содержащем данный интерфейс.

Как уже было отмечено выше, использование интерфейсов позволяет нескольким классам использовать один интерфейс, игнорируя требование наличия одного базового класса-предка. Следует запомнить, что интерфейс - это тип с управляемым временем жизни, т. е., он автоматически, при инициализации, принимает значение nil, обладает счетчиком ссылок и автоматически уничтожается, при выходе за пределы своей области видимости.

2ВОПРОССхема обмена данными при работе с базой данных. Структура локальных информационных систем. Этапы проектирования баз данных

При работе пользователя с базой данных над её содержимым выполняются следующие основные операции: выбор, добавление, модификация (замена) и удаление данных.

Цикл взаимодействия пользователя с БД с помощью приложения можно разделить на следующие основные этапы:

  1.  Пользователь терминала (1) в процессе диалога с приложением формулирует запрос (2) на некоторые данные из БД.
  2.  Приложение (3) на программном уровне средствами языка манипулирования данными формулирует запрос (4), с которым обращается к СУБД.
  3.  Используя свои системные управляющие блоки и таблицы, СУБД с помощью словаря данных определяет местоположение требуемых данных и обращается (5) за ними к ОС.
  4.  Программы методов доступа файловой системы ОС считывают (6) из внешней памяти искомые данные и помещают их в системные буферы СУБД.
  5.  Преобразуя полученные данные к требуемому формату, СУБД пересылает их (7) в соответствующую область программы и сигнализирует (8) о завершении операции каким-либо образом (например, кодом возврата).
  6.  Результаты выбора данных из базы приложение (3) отображает (9) на терминале пользователя (1).

Структура локальных информационных систем.

Функциональные части информационной системы могут размещаться на одном или на нескольких компьютерах. Рассмотрим варианты организации ИС на одном ПК. Соответствующую ИС обычно называют локальной или однопользовательской. Организация функционирования локальной ИС на одном компьютере в среде некоторой операционной системы (ОС) возможна с помощью «полной» СУБД, приложения и «усечённой» (ядра) СУБД, независимого приложения.

Первый способ обычно применяется в случаях, когда в дисковой памяти компьютера помещается вся СУБД и она часто используется для доработки приложения. Взаимодействие пользователя с СУБД происходит напрямую через пользовательский (терминальный) интерфейс СУБД либо с помощью приложения. Приложение выполняется в режиме интерпретации. Основное достоинство схемы – простота разработки и сопровождения БД и приложений при наличии развитых соответствующих средств разработки и сервисных средств. Недостатком этой схемы являются затраты дисковой памяти на хранение программы СУБД.

Приложение с ядром СУБД используют для достижения следующих целей:

  •  уменьшения объема занимаемого СУБД пространства жёсткого диска и оперативной памяти;
  •  повышения скорости работы приложения;
  •  защиты приложения от модификации со стороны пользователя (обычно ядро не содержит средств разработки приложений).

Примером такого подхода является использование модуля FoxRun системы FoxBase+. Из современных СУБД отметим Microsoft Access, включающую дополнительный пакет Microsoft Access Developer's Toolkit. С его помощью можно создавать переносимую на дискетах «укороченную» (run-time) версию Microsoft Access, не содержащую инструментов разработки.

Достоинствами использования ядра СУБД по сравнению с использованием полной версии СУБД являются: меньшее потребление ресурсов памяти компьютера, ускорение работы приложения и возможность защиты приложения от модификации. К основным недостаткам можно отнести все ещё значительный объём дисковой памяти, необходимой для хранения ядра СУБД, и недостаточно высокое быстродействие работы приложений (выполнение приложения происходит путём интерпретации).

При третьем способе организации ИС исходная программа предварительно компилируется – преобразуется в последовательность исполняемых машинных команд. В результате получается готовая к выполнению независимая программа, не требующая для своей работы ни всей СУБД, ни её ядра. С точки зрения выполнения основных функций хранения и обработки данных, такая программа мало отличается от приложения, работающего под управлением СУБД или её ядра. Основными достоинствами этого варианта являются экономия внешней и оперативной памяти компьютера, ускорение выполнения приложения и полная защита приложения от модификации (случай дисассемблирования и вставки своего кода и ему подобные в расчёт не берутся). К недостаткам можно отнести трудоёмкость доработки приложений, отсутствие возможности использовать стандартные средства СУБД по обслуживанию БД.

Этапы проектирования баз данных.

Этап 1. Определение сущностей.

Этап 2. Определение взаимосвязей между сущностями.

Этап 3. Задание первичных и альтернативных ключей, определение атрибутов сущностей.

Этап 4. Приведение модели к требуемому уровню нормальной формы.

Этап 5. Физическое описание модели.

3ВОПРОС АСУ ТП и диспетчерское управление. Компоненты систем контроля и управления, их назначение. Компоненты SCADA-систем.

АСУТП (автоматизированная система управления технологическим процессом) представляет собой многоуровневую человеко-машинную систему управления.

  •  Первый этап отражает внедрение систем автоматического регулирования (САР). Объектами управления на этом этапе являются отдельные параметры, установки, агрегаты;
  •  Второй этап - автоматизация технологических процессов. Объектом управления становится рассредоточенная в пространстве система
  •  Третий этап - автоматизированные системы управления технологическими процессами - характеризуется внедрением в управление технологическими процессами вычислительной техники.

От этапа к этапу менялись и функции человека (оператора/диспетчера), призванного обеспечить регламентное функционирование технологического процесса. Диспетчер в многоуровневой автоматизированной системе управления технологическими процессами получает информацию с монитора ЭВМ или с электронной системы отображения информации и воздействует на объекты, находящиеся от него на значительном расстоянии с помощью телекоммуникационных систем, контроллеров, интеллектуальных исполнительных механизмов.

От диспетчера уже требуется не только профессиональное знание технологического процесса, основ управления им, но и опыт работы в информационных системах, умение принимать решение (в диалоге с ЭВМ) в нештатных и аварийных ситуациях и многое другое. Диспетчер становится главным действующим лицом в управлении технологическим процессом.

Требование повышения надежности систем диспетчерского управления является одной из предпосылок появления нового подхода при разработке таких систем: ориентация на оператора/диспетчера и его задачи.

Компоненты систем контроля и управления и их назначение

Многие проекты автоматизированных систем контроля и управления (СКУ) для большого спектра областей применения позволяют выделить обобщенную схему их реализации, представленную на рис.1.

Как правило, это двухуровневые системы, так как именно на этих уровнях реализуется непосредственное управление технологическими процессами. Специфика каждой конкретной системы управления определяется используемой на каждом уровне программно - аппаратной платформой.

Нижний уровень - уровень объекта (контроллерный) - включает различные датчики для сбора информации о ходе технологического процесса,

Верхний уровень - диспетчерский пункт (ДП) - включает, прежде всего, одну или несколько станций управления, представляющих собой автоматизированное рабочее место

Графический интерфейс. Средства визуализации - одно из базовых свойств SCADA - систем.

Аппаратная реализация связи с устройствами ввода/вывода Для организации взаимодействия с контроллерами могут быть использованы следующие аппаратные средства: COM – порты

Компоненты SCADA-систем

Все современные SCADA-системы включают три основных структурных компонента  

Remote Terminal Unit (RTU) удаленный терминал, осуществляющий обработку задачи (управление) в режиме реального времени. Спектр его воплощений широк от примитивных датчиков, осуществляющих съем информации с объекта, до специализированных многопроцессорных отказоустойчивых вычислительных комплексов, осуществляющих обработку информации и управление в режиме жесткого реального времени.

Master Terminal Unit (MTU), Master Station (MS) диспетчерский пункт управления (главный терминал); осуществляет обработку данных и управление высокого уровня, как правило, в режиме мягкого реального времени; одна из основных функций обеспечение интерфейса между человеком-оператором и системой. В зависимости от конкретной системы MTU может быть реализован в самом разнообразном виде от одиночного компьютера с дополнительными устройствами подключения к каналам связи до больших вычислительных систем (мэйнфреймов) и/или объединенных в локальную сеть рабочих станций и серверов.

Communication System (CS) коммуникационная система (каналы связи), необходима для передачи данных с удаленных точек (объектов, терминалов) на центральный интерфейс оператора-диспетчера и передачи сигналов управления на RTU (или удаленный объект в зависимости от конкретного исполнения системы).




1. чиста теорія права Г
2. Тема5 Первая помощь при кровотечениях
3. Туреччина та Ізраїль
4. В лермонтовских тарханах
5. в1 код 22631 Помада Магия цвета код 12119 Помада Магия цвета код 22543 Помада 100 цвета код 21142 Пена для
6.  Введение Вопрос 1 Объект предмет и методы психологии как отрасли научного знания Материалисты ~ Лук
7. Управление земельным фондом
8. Политико-правовые взгляды И.А. Ильина и П.А. Сорокин
9. КОНТРОЛЬНАЯ РАБОТА По дисциплине- ОРГАНИЗАЦИЯ И НОРМИРОВАНИЕ ТРУДА ВАРИАНТ 13
10. Статья- Новозаветные корни православного учения о Таинствах
11. реферат дисертації на здобуття наукового ступеня кандидата юридичних наук Харків
12. .2003 ВВР 2004 N 13 ст
13.  теоретические основы анализа собственного капитала организации
14. экзаменационной сессии
15. Диагностика и патогенетическая терапия церебральных расстройств у новорожденных.html
16. Дворянский герой и Россия
17. геологические изыскания и создание геодезической разбивочной основы; расчистка территории строительств
18. Мы многонациональный народ Российской Федерации соединённые общей судьбой на своей земле утверждая права
19.  КЛАССИФИКАЦИЯ БУРИЛЬНЫХ МАШИН И СПОСОБОВ БУРЕНИЯ По назначению бурильные машины делятся на маш
20. Хабаровская государственная академия экономики и права Юридический факультет Кафедра трудового и пре