Автоматизированное рабочее место отдела кадров предприятия

Принципы построения автоматизированных рабочих мест, локальных сетей и технологии клиент-сервер. Общее описание созданной программы, инструкция по вводу в эксплуатацию и работе с ней. Затраты на разработку программы, полученные методом калькуляции.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 14.05.2012
Размер файла 1,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

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

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

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

Специальной формой кольцевой топологии является логическая кольцевая сеть. Физически она монтируется как соединение звездных топологий. Отдельные звезды включаются с помощью специальных коммутаторов (англ. Hub -концентратор), которые по-русски также иногда называют “хаб”. В зависимости от числа рабочих станций и длины кабеля между рабочими станциями применяют активные или пассивные концентраторы. Активные концентраторы дополнительно содержат усилитель для подключения от 4 до 16 рабочих станций. Пассивный концентратор является исключительно разветвительным устройством (максимум на три рабочие станции). Управление отдельной рабочей станцией в логической кольцевой сети происходит так же, как и в обычной кольцевой сети. Каждой рабочей станции присваивается соответствующий ей адрес, по которому передается управление (от старшего к младшему и от самого младшего к самому старшему). Разрыв соединения происходит только для нижерасположенного (ближайшего) узла вычислительной сети, так что лишь в редких случаях может нарушаться работа всей сети.

1.5.13 Шинная топология

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

Шинная топология

Рабочие станции в любое время, без прерывания работы всей вычислительной сети, могут быть подключены к ней или отключены. Функционирование вычислительной сети не зависит от состояния отдельной рабочей станции.

В стандартной ситуации для шинной сети Ethernet часто используют тонкий кабель или Cheapernet-кaбeль с тройниковым соединителем. Выключение и особенно подключение к такой сети требуют разрыва шины, что вызывает нарушение циркулирующего потока информации и зависание системы.

Новые технологии предлагают пассивные штепсельные коробки, через которые можно отключать и / или включать рабочие станции во время работы вычислительной сети.

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

В ЛВС с прямой (не модулируемой) передачей информации всегда может существовать только одна станция, передающая информацию. Для предотвращения коллизий в большинстве случаев применяется временной метод разделения, согласно которому для каждой подключенной рабочей станции в определенные моменты времени предоставляется исключительное право на использование канала передачи данных. Поэтому требования к пропускной способности вычислительной сети при повышенной нагрузке снижаются, например, при вводе новых рабочих станций. Рабочие станции присоединяются к шине посредством устройств ТАР (англ. Terminal Access Point - точка подключения терминала). ТАР представляет собой специальный тип подсоединения к коаксиальному кабелю. Зонд игольчатой формы внедряется через наружную оболочку внешнего проводника и слой диэлектрика к внутреннему проводнику и присоединяется к нему.

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

Таблица 1.2 - Характеристики топологий вычислительных сетей

Характеристики

Топология

Звезда

Кольцо

Шина

Стоимость расширения

Незначительная

Средняя

Средняя

Присоединение абонентов

Пассивное

Активное

Пассивное

Защита от отказов

Незначительная

Незначительная

Высокая

Характеристики

Топология

Звезда

Кольцо

Шина

Размеры системы

Любые

Любые

Ограниченны

Защищенность от прослушивания

Хорошая

Хорошая

Незначительная

Стоимость подключения

Незначительная

Незначительная

Высокая

Поведение системы при высоких нагрузках

Хорошее

Удовлетворительное

Плохое

Возможность работы в реальном режиме времени

Очень хорошая

Хорошая

Плохая

Разводка кабеля

Хорошая

Удовлетворительная

Хорошая

Обслуживание

Очень хорошее

Среднее

Среднее

1.5.14 Методы доступа и протоколы передачи данных

В различных сетях существуют различные процедуры обмена информацией в сети. Эти процедуры называются протоколами передачи данных, которые описывают методы доступа к сетевым каналам данных.

Наибольшее распространение получили конкретные реализации методов доступа: Ethernet, Arcnet и Token-Ring.

1.5.15 Локальная сеть Token Ring

Этот стандарт разработан фирмой IBM. В качестве передающей среды применяется неэкранированная или экранированная витая пара (UPT или SPT) или оптоволокно. Скорость передачи данных 4 Мбит/с или 16Мбит/с. В качестве метода управления доступом станций к передающей среде используется метод - маркерное кольцо (Тоken Ring). Основные положения этого метода:

устройства подключаются к сети по топологии кольцо;

все устройства, подключенные к сети, могут передавать данные, только получив разрешение на передачу (маркер);

в любой момент времени только одна станция в сети обладает таким правом.

Типы пакетов.

В IВМ Тоkеn Ring используются три основных типа пакетов:

пакет управление/данные (Data/Соmmand Frame);

маркер (Token);

пакет сброса (Аbort).

Пакет Управление/Данные. С помощью такого пакета выполняется передача данных или команд управления работой сети.

Маркер. Станция может начать передачу данных только после получения такого пакета, В одном кольце может быть только один маркер и, соответственно, только одна станция с правом передачи данных.

Пакет Сброса. Посылка такого пакета называет прекращение любых передач. В сети можно подключать компьютеры по топологии звезда или кольцо.

1.5.16 Локальная сеть Arknet

Arknet (Attached Resource Computer NETWork ) - простая, недорогая, надежная и достаточно гибкая архитектура локальной сети. Разработана корпорацией Datapoint в 1977 году. Впоследствии лицензию на Аrcnet приобрела корпорация SМС (Standard Microsistem Corporation), которая стала основным разработчиком и производителем оборудования для сетей Аrcnet. В качестве передающей среды используются витая пара, коаксиальный кабель (RG-62) с волновым сопротивлением 93 Ом и оптоволоконный кабель. Скорость передачи данных - 2,5 Мбит/с. При подключении устройств в Аrcnet применяют топологии шина и звезда.

Этот метод получил широкое распространение в основном благодаря тому, что оборудование Arcnet дешевле, чем оборудование Ethernet или Token - Ring. Arcnet используется в локальных сетях с топологией "звезда". Один из компьютеров создает специальный маркер (сообщение специального вида), который последовательно передается от одного компьютера к другому.

Если станция желает передать сообщение другой станции, она должна дождаться маркера и добавить к нему сообщение, дополненное адресами отправителя и назначения. Когда пакет дойдет до станции назначения, сообщение будет "отцеплено" от маркера и передано станции.

Метод управления доступом станций к передающей среде - маркерная шина (Тоken Bus). Этот метод предусматривает следующие правила:

Все устройства, подключенные к сети, могут передавать данные;

только получив разрешение на передачу (маркер);

В любой момент времени только одна станция в сети обладает таким правом;

Данные, передаваемые одной станцией, доступны всем станциям сети.

Основные принципы работы.

Передача каждого байта в Аrcnet выполняется специальной посылкой ISU(Information Symbol Unit - единица передачи информации), состоящей из трех служебных старт/стоповых битов и восьми битов данных. В начале каждого пакета передается начальный разделитель АВ (Аlегt Вurst), который состоит из шести служебных битов. Начальный разделитель выполняет функции преамбулы пакета.

В Аrcnet определены 5 типов пакетов:

пакет IТТ (Information To Transmit) - приглашение к передаче. Эта посылка передает управление от одного узла сети другому. Станция, принявшая этот пакет, получает право на передачу данных;

пакет FBE (Free Buffeг Еnquiries) - запрос о готовности к приему данных. Этим пакетом проверяется готовность узла к приему данных;

пакет данных. С помощью этой посылки производиться передача данных;

пакет АСК (ACKnowledgments) - подтверждение приема. Подтверждение готовности к приему данных или подтверждение приема пакета данных без ошибок, т.е. в ответ на FBE и пакет данных;

пакет NAK ( Negative AcKnowledgments) - неготовность к приему. Неготовность узла к приему данных ( ответ на FBE ) или принят пакет с ошибкой.

В сети Arknet можно использовать две топологии: звезда и шина.

1.5.17 Локальная сеть Ethernet

Это метод доступа, разработанный фирмой Xerox в 1975 году, пользуется наибольшей популярностью. Он обеспечивает высокую скорость передачи данных и надежность. Позднее к этому проекту присоединились компании Digital Equipment Corporation (DEC) и Intel Corporation. В 1982 году была опубликована спецификация на Ethernet версии 2.0. На базе Ethernet институтом IEEE был разработан стандарт IEEE 802.3. Различия между ними незначительные.

Для данного метода доступа используется топология "общая шина". Поэтому сообщение, отправляемое одной рабочей станцией, принимается одновременно всеми остальными, подключенными к общей шине. Но сообщение, предназначенное только для одной станции (оно включает в себя адрес станции назначения и адрес станции отправителя). Та станция, которой предназначено сообщение, принимает его, остальные игнорируют.

Метод доступа Ethernet является методом множественного доступа с прослушиванием несущей и разрешением коллизий (конфликтов) (CSMA/CD - Carier Sense Multiple Access with Collision Detection).

Перед началом передачи рабочая станция определяет, свободен канал или занят. Если канал свободен, станция начинает передачу.

Ethernet не исключает возможности одновременной передачи сообщений двумя или несколькими станциями. Аппаратура автоматически распознает такие конфликты, называемые коллизиями. После обнаружения конфликта станции задерживают передачу на некоторое время. Это время небольшое и для каждой станции свое. После задержки передача возобновляется.

Реально конфликты приводят к уменьшению быстродействия сети только в том случае, если работает порядка 80-100 станций.

Основные принципы работы.

На логическом уровне в Ethernet применяется топология шина :

все устройства, подключенные к сети, равноправны, т.е. любая станция может начать передачу в любой момент времени( если передающая среда свободна);

данные, передаваемые одной станцией, доступны всем станциям сети.

1.6 Сетевые операционные системы для локальных сетей

Основное направление развития современных Сетевых Операционных Систем (Network Operation System - NOS ) - перенос вычислительных операций на рабочие станции, создание систем с распределенной обработкой данных. Это в первую очередь связано с ростом вычислительных возможностей персональных компьютеров и все более активным внедрением мощных многозадачных операционных систем: OS/2, Windows NТ, Windows 95. Кроме этого внедрение объектно-ориентированных технологий (ОLЕ, DСЕ, IDAPI) позволяет упростить организацию распределенной обработки данных. В такой ситуации основной задачей NOS становится объединение неравноценных операционных систем рабочих станций и обеспечение транспортного уровня для широкого круга задач: обработка баз данных, передача сообщений, управление распределенными ресурсами сети (directoгу/namе service).

В современных NOS применяют три основных подхода к организации управления ресурсами сети.

Первый - это Таблицы Объектов (Bindery). Используется в сетевых операционных системах NetWare v3.1х. Такая таблица находится на каждом файловом сервере сети. Она содержит информацию о пользователях, группах, их правах доступа к ресурсам сети (данным, сервисным услугам и т.п.). Такая организация работы удобна, если в сети только один сервер. В этом случае требуется определить и контролировать только одну информационную базу. При расширении сети, добавлении новых серверов объем задач по управлению ресурсами сети резко возрастает. Администратор системы вынужден на каждом сервере сети определять и контролировать работу пользователей. Абоненты сети, в свою очередь, должны точно знать, где расположены те или иные ресурсы сети, а для получения доступа к этим ресурсам - регистрироваться на выбранном сервере. Конечно, для информационных систем, состоящих из большого количества серверов, такая организация работы не подходит.

Второй подход используется в LANServer и LANMahager - Структура Доменов (Domain). Все ресурсы сети и пользователи объединены в группы. Домен можно рассматривать как аналог таблиц объектов (bindery), только здесь такая таблица является общей для нескольких серверов, при этом ресурсы серверов являются общими для всего домена. Поэтому пользователю для того чтобы получить доступ к сети, достаточно подключиться к домену (зарегистрироваться), после этого ему становятся доступны все ресурсы домена, ресурсы всех серверов и устройств, входящих в состав домена. Однако и с использованием этого подхода также возникают проблемы при построении информационной системы с большим количеством пользователей, серверов и, соответственно, доменов. Например, сети для предприятия или большой разветвленной организации. Здесь эти проблемы уже связаны с организацией взаимодействия и управления несколькими доменами, хотя по содержанию они такие же, как и в первом случае.

Третий подход - Служба Наименований Директорий или Каталогов (Directory Name Services - DNS) лишен этих недостатков. Все ресурсы сети: сетевая печать, хранение данных, пользователи, серверы и т.п. рассматриваются как отдельные ветви или директории информационной системы. Таблицы, определяющие DNS, находятся на каждом сервере. Это, во-первых, повышает надежность и живучесть системы, а во-вторых, упрощает обращение пользователя к ресурсам сети. Зарегистрировавшись на одном сервере, пользователю становятся доступны все ресурсы сети. Управление такой системой также проще, чем при использовании доменов, так как здесь существует одна таблица, определяющая все ресурсы сети, в то время как при доменной организации необходимо определять ресурсы, пользователей, их права доступа для каждого домена отдельно.

В настоящее время по оценке компании IDC наиболее распространенными являются следующие сетевые операционные системы:

NetWare v2.х и vЗ.х, Nowell Inc. 65%

LAN Server, IВМ Согр. 14%

LAN Manager, Microsoft Corp. 3%

VINES, Ваnуаn Systems Inc. 2%

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

1.6.1 NetWare 3.11, Nowell Inc

Отличительные черты:

самая эффективная файловая система среди современных NOS;

самый широкий выбор аппаратного обеспечения.

Основные характеристики и требования к аппаратному обеспечению:

центральный процессор: 38б и выше;

минимальный объем жесткого диска: 9 Мбайт;

объем ОП (Оперативной Памяти) на сервере: 4 МБайт - 4Гбайт;

минимальный объем ОП РС (Рабочей Станции) клиента: б40 Кбайт;

операционная система: собственная разработка Nowell;

протоколы: IРХ/SРХ;

мультипроцессорность: нет;

количество пользователей: 250;

максимальный размер файла: 4Гбайт;

шифрование данных: нет;

монитор UPS: есть;

ТТS: есть;

управление распределенными ресурсами сети: таблицы bindeгу на сервере;

система отказоустойчивости: дублирование дисков, зеркальное отражение дисков, SFT II,SFT III, поддержка накопителя на магнитной ленте, резервное копирование таблиц bindery и данных;

компрессирование данных: нет;

фрагментация блоков ( Block suballocations): нет4

файловая система клиентов: DOS, Windows, Мас(доп.), ОS/2(доп.), UNIX(доп.), Windows NT.

1.6.2 LAN Server, IВМ Согр

Отличительные черты:

использование доменной организации сети упрощает управление и доступ к ресурсам сети;

обеспечивает полное взаимодействие с иерархическими системами (архитектурой SNА).

Целостная операционная система с широким набором услуг. Работает на базе ОS/2, поэтому сервер может быть невыделенным (nondedicated). Обеспечивает взаимодействие с иерархическими системами, поддерживает межсетевое взаимодействие.

Выпускаются две версии LAN Server: Entry и Advanced. Advanced в отличие от Entry поддерживает высокопроизводительную файловую систему (High Perfomance File System - HPFS). Она включает системы отказоустойчивости (Fail Tolerances) и секретности (Local Security).

Серверы и пользователи объединяются в домены. Серверы в домене работают как единая логическая система. Все ресурсы домена доступны пользователю после регистрации в домене. В одной кабельной системе могут работать несколько доменов. При использовании на рабочей станции OS/2 ресурсы этих станций доступны пользователям других рабочих станций, но только одному в данное время. Администратор может управлять работой сети только с рабочей станции, на которой установлена операционная система OS/2. LAN Server поддерживает удаленную загрузку рабочих станций DOS, OS/2 и Windows (Remote Interface Procedure Load - RIPL).

К недостаткам можно отнести:

сложная процедура установки NOS;

ограниченное количество поддерживаемых драйверов сетевых адаптеров;

основные характеристики и требования к аппаратному обеспечению;

центральный процессор: 38б и выше;

минимальный объем жесткого диска: 4.6 МБайт для клиента (requestor)/7.2 МБайт для сервера;

минимальный объем ОП на сервере: 1.3 МБайт - 16 Мбайт;

минимальный объем ОП РС клиента: 4.2 Мбайт для OS/2, 640 КБайт для DOS;

операционная система: OS/2 2.х;

протоколы: NetBIOS, ТСР/IР;

мультипроцессорность: поддерживается;

количество пользователей: 1016;

максимальный размер файла: 2 Гбайт;

шифрование данных: нет;

монитор UPS: есть;

ТТS: есть;

управление распределенными ресурсами сети: домены;

система отказоустойчивости: дублирование дисков, зеркальное отражение дисков, поддержка накопителя на магнитной ленте, резервное копирование таблиц домена;

компрессирование данных: нет;

фрагментация блоков (Block suballocation): нет;

файловая система клиентов: DOS, Windows, Мас (доп.), OS/2, UNIX, Windows NT (доп.).

1.6.3 Windows NT Advanced Server 3.1, Microsoft Corp

Отличительные черты:

простота интерфейса пользователя;

доступность средств разработки прикладных программ и поддержка прогрессивных объектно-ориентированных технологий.

Всё это привело к тому, что эта операционная система может стать одной из самых популярных сетевых операционных систем.

Интерфейс напоминает оконный интерфейс Windows 3.1, инсталяция занимает около 20 минут. Модульное построение системы упрощает внесение изменений и перенос на другие платформы. Обеспечивается защищенность подсистем от несанкционированного доступа и от их взаимного влияния (если зависает один процесс, это не влияет на работу остальных). Есть поддержка удаленных станций - Remote Access Service (RAS), но не поддерживается удаленная обработка заданий.

Windows NT предъявляет более высокие требования к производительности компьютера по сравнению с NetWare.

Основные характеристики и требования к аппаратному обеспечению:

центральный процессор: 386 и выше, MIPS, R4000, DEC Alpha АХР;

минимальный объем жесткого диска: 90 Мбайт;

минимальный объем ОП на сервере: 16 Мбайт;

минимальный объем ОП РС клиента; 12 Мбайт для NТ/512 КБайт для DOS;

операционная система: Windows NT;

протоколы: NetBEUI, ТСР/IР, IРХ/SРХ, АррlеТаlk, АsyncBEUI;

мультипроцессорность: поддерживается;

количество пользователей: неограниченно;

максимальный размер файла: неограничен;

шифрование данных: уровень С-2;

монитор UPS: есть;

ТТS: есть;

управление распределенными ресурсами сети: домены;

система отказоустойчивости: дублирование дисков, зеркальное отражение дисков, RAID 5, поддержка накопителя на магнитной ленте, резервное копирование таблиц домена и данных;

компрессирование данных: нет;

фрагментация блоков (Block suballocation): нет;

файловая система клиентов: DOS, Windows, Мас, ОS/2, UNIX, Windows NT.

1.6.4 NetWare 4, Nowell Inc

Отличительная черта:

применение специализированной системы управления ресурсами сети (NetWare Directory Services - NDS) позволяет строить эффективные информационные системы с количеством пользователей до 1000. В NDS определены все ресурсы, услуги и пользователи сети. Эта информация распределена по всем серверам сети;

Для управления памятью используется только одна область (рооl), поэтому оперативная память, освободившаяся после выполнения каких-либо процессов, становится сразу доступной операционной системе (в отличие от NetWare 3).

Новая система управления хранением данных (Data Storage Managment) состоит из трех компонент, позволяющих повысить эффективность файловой системы:

Фрагментация Блоков или Разбиение Блоков Данных на Подблоки (Block Suballocation). Если размер блока данных на томе 64 КБайта, а требуется записать файл размером 65 КБайт, то ранее потребовалось бы выделить 2 блока по б4 Кбайта. При этом 6З Кбайта во втором блоке не могут использоваться для хранения других данных. В NetWare 4 система выделит в такой ситуации один блок размером 64 КБайта и два блока по 512 Байт. Каждый частично используемый блок делится на подблоки по 512 Байт, свободные подблоки доступны системе при записи других файлов;

Упаковка Файлов (File Compression). Долго не используемые данные система автоматически компрессирует, упаковывает, экономя таким образом место на жестких дисках. При обращении к этим данным автоматически выполняется декомпрессия данных;

Перемещение Данных (Data Migration). Долго не используемые данные система автоматически копирует на магнитную ленту либо другие носители, экономя таким образом место на жестких дисках.

Встроенная поддержка Протокола Передачи Серии Пакетов (Packet-Burst Migration). Этот протокол позволяет передавать несколько пакетов без ожидания подтверждения о получении каждого пакета. Подтверждение передается после получения последнего пакета из серии.

При передаче через шлюзы и маршрутизаторы обычно выполняется разбиение передаваемых данных на сегменты по 512 Байт, что уменьшает: скорость передачи данных примерно на 20%. Применение в NetWare 4 протокола LIP (Large Internet Packet) позволяет повысить эффективность обмена данными между сетями, так как в этом случае разбиение на сегменты по 512 Байт не требуется.

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

1.7 Среда Delphi как средство разработки ПО баз данных

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

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

Среди большого разнообразия продуктов для разработки приложений Delphi занимает одно из ведущих мест. Delphi отдают предпочтение разработчики с разным стажем, привычками, профессиональными интересами. С помощью Delphi написано колоссальное количество приложений, десятки фирм и тысячи программистов-одиночек разрабатывают для Delphi дополнительные компоненты.[4].

В основе такой общепризнанной популярности лежит тот факт, что Delphi, как никакая другая система программирования, удовлетворяет изложенным выше требованиям. Действительно, приложения с помощью Delphi разрабатываются быстро, причем взаимодействие разработчика с интерактивной средой Delphi не вызывает внутреннего отторжения, а наоборот, оставляет ощущение комфорта. Delphi-приложения эффективны, если разработчик соблюдает определенные правила (и часто - если не соблюдает). Эти приложения надежны и при эксплуатации обладают предсказуемым поведением.[4, 22].

Пакет Delphi - продолжение линии компиляторов языка Pascal корпорации Borland. Pascal как язык очень прост, а строгий контроль типов данных способствует раннему обнаружению ошибок и позволяет быстро создавать надежные и эффективные программы. Корпорация Borland постоянно обогащала язык. Когда-то в версию 4.0 были включены средства раздельной трансляции, позже, начиная с версии 5.5, появились объекты, а в состав шестой версии пакета вошла полноценная библиотека классов Turbo Vision, реализующая оконную систему в текстовом режиме работы видеоадаптера. Это был один из первых продуктов, содержавших интегрированную среду разработки программ.

В классе инструментальных средств для начинающих программистов продуктам компании Borland пришлось конкурировать со средой Visual Basic корпорации Microsoft, где вопросы интеграции и удобства работы были решены лучше. Когда в начале 70-х годов Н. Вирт опубликовал сообщение о Pascal, это был компактный, с небольшим количеством основных понятий и зарезервированных слов язык программирования, нацеленный на обучение студентов. Язык, на котором предстоит работать пользователю Delphi, отличается от исходного не только наличием множества новых понятий и конструкций, но и идейно: в нем вместо минимизации числа понятий и использования самых простых конструкций (что, безусловно, хорошо для обучения, но не всегда оправдано в практической работе), предпочтение отдается удобству работы профессионального пользователя. Как язык Turbo Pascal естественно сравнивать с его ближайшими конкурентами - многочисленными вариациями на тему языка Basic (в первую очередь с Visual Basic корпорации Microsoft) и с C++.[4, 6]. Turbo Pascal существенно превосходит Basic за счет полноценного объектного подхода, включающего в себя развитые механизмы инкапсуляции, наследование и полиморфизм. Последняя версия языка, применяемая в Delphi, по своим возможностям приближается к C++. Из основных механизмов, присущих C++, отсутствует только множественное наследование. (Впрочем, этим красивым и мощным механизмом порождения новых классов пользуется лишь небольшая часть программистов, пишущих на С++.)

Плюсы применения языка Pascal очевидны: с одной стороны, в отличие от Visual Basic, основанного на интерпретации промежуточного кода, для него имеется компилятор, генерирующий машинный код, что позволяет получать значительно более быстрые программы. С другой - в отличие от C++ синтаксис языка Pascal способствует построению очень быстрых компиляторов. [6].

Среда программирования представляет собой несколько отдельных окон: меню и инструментальные панели, Object Inspector (в котором можно видеть свойства объекта и связанные с ним события), окна визуального построителя интерфейсов (Visual User Interface Builder), Object Browser (позволяющее изучать иерархию классов и просматривать списки их полей, методов и свойств), окна управления проектом (Project Manager) и редактора.

Delphi содержит полноценный текстовый редактор типа Brief, назначения клавиш в котором соответствуют принятым в Windows стандартам, а глубина иерархии операций Undo неограниченна. Как это стало уже обязательным, реализовано цветовое выделение различных лексических элементов программы. Процесс построения приложения достаточно прост. Нужно выбрать форму (в понятие формы входят обычные, диалоговые, родительские и дочерние окна MDI), задать ее свойства и включить в нее необходимые компоненты (видимые и, если понадобится, неотображаемые): меню, инструментальные панели, строку состояния и т. п., задать их свойства и далее написать (с помощью редактора исходного кода) обработчики событий. Object Browser Окна типа Object Browser стали неотъемлемой частью систем программирования на объектно-ориентированных языках. Работа с ними становится возможной сразу после того, как вы скомпилировали приложение.

Projeсt Manager - это отдельное окно, где перечисляются модули и формы, составляющие проект. При каждом модуле указывается маршрут к каталогу, в котором находится исходный текст. Жирным шрифтом выделяются измененные, но еще не сохраненные части проекта. В верхней части окна имеется набор кнопок: добавить, удалить, показать исходный текст, показать форму, задать опции и синхронизировать содержимое окна с текстом файла проекта, т. е. с головной программой на языке Pascal.

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

Visual Component Library (VCL) Богатство палитры объектов для построения пользовательского интерфейса - один из ключевых факторов при выборе инструмента визуального программирования. При этом для пользователя имеет значение как число элементов, включенных непосредственно в среду, так и доступность элементов соответствующего формата на рынке. [4, 22].

1.7.1 Высокопроизводительный компилятор в машинный код

Компиляторы языка Pascal компании Borland никогда не заставляли пользователя подолгу ждать результатов компиляции. Производители утверждают, что на сегодня данный компилятор - самый быстрый в мире. Компилятор, встроенный в Delphi позволяет обрабатывать до 390 тыс. строк исходного текста в минуту на машине Pentium-100. Он предлагает легкость разработки и быстрое время проверки готового программного блока, характерного для языков четвертого поколения (4GL) и в то же время обеспечивает качество кода, характерного для компилятора 3GL.

В смысле проектирования Delphi мало чем отличается от проектирования в интерпретирующей среде, однако после выполнения компиляции мы получаем код, который исполняется в 10-20 раз быстрее, чем тоже самое, сделанное при помощи интерпретатора. Кроме того, компилятор компилятору рознь, в Delphi компиляция производится непосредственно в родной машинный код, в то время как существуют компиляторы, превращающие программу в так называемый p-код, который затем интерпретируется виртуальной p-машиной. Это не может не сказаться на фактическом быстродействии готового приложения.

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

Вероятно, то обстоятельство, что Delphi позиционируется как средство создания приложений, взаимодействующих с базами данных, и ориентировано преимущественно на рынок инструментальных средств клиент/сервер, где до настоящего момента доминируют интерпретируемые языки, позволило его авторам не задумываться над созданием оптимизирующего компилятора, способного использовать все достоинства архитектур современных процессоров.

1.7.2 Мощный объектно-ориентированный язык

Совместимость с программами, созданными ранее средствами Borland Pascal, сохраняется, несмотря на то, что в язык внесены существенные изменения. Необходимость в некоторых усовершенствованиях давно ощущалась. Самое заметное из них - аппарат исключительных ситуаций, подобный тому, что имеется в C++, был первым реализован в компиляторах корпорации Borland. Не секрет, что при написании объектно-ориентированных программ, активно работающих с динамической памятью и другими ресурсами, немалую трудность представляет аккуратное освобождение этих ресурсов в случае возникновения нештатных ситуаций. Особенно это актуально для среды Windows, где число видов ресурсов довольно велико, а неправильная работа с ними может быстро привести к зависанию всей системы. Предусмотренный в Delphi аппарат исключений максимально упрощает кодирование обработки нештатных ситуаций и освобождения ресурсов.

Объектно-ориентированный подход в новой версии языка получил значительное развитие. Перечислим основные новшества:

введено понятие класса.

реализованы методы классов, аналогичные статическим методам C++. Они оперируют не экземпляром класса, а самим классом.

механизм инкапсуляции во многом усовершенствован. Введены защищенные поля и методы, которые, подобно приватным, не видны извне, но отличаются от них тем, что доступны из методов класса- наследника.

введена обработка исключительных ситуаций. В Delphi это устроено в стиле С++. Исключения представлены в виде объектов, содержащих специфическую информацию о соответствующей ошибке (тип и место- нахождение ошибки). Разработчик может оставить обработку ошибки, существовавшую по умолчанию, или написать свой собственный обработчик. Обработка исключений реализована в виде exception-handling blocks (также еще называется protected blocks), которые устанавливаются ключевыми словами try и end. Существуют два типа таких блоков: try...except и try...finally.

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

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

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

После того как Borland внесла перечисленные изменения, получился мощный объектно-ориентированный язык, сопоставимый по своим возможностям с C++. Платой за новые функции стало значительное повышение требований к профессиональной подготовке программиста.

Язык программирования Delphi базируется на Borland Object Pascal.

Кроме того, Delphi поддерживает такие низкоуровневые особенности, как подклассы элементов управления Windows, перекрытие цикла обработки сообщений Windows, использование встроенного ассемблера.[22].

1.7.3 Объектно-ориентированная модель программных компонент

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

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

Благодаря такой возможности приложения, изготовленные при помощи Delphi, работают надежно и устойчиво. Delphi поддерживает использование уже существующих объектов, включая DLL, написанные на С и С++, OLE сервера, VBX, объекты, созданные при помощи Delphi. Из готовых компонент работающие приложения собираются очень быстро. Кроме того, поскольку Delphi имеет полностью объектную ориентацию, разработчики могут создавать свои повторно используемые объекты для того, чтобы уменьшить затараты на разработку.

Delphi предлагает разработчикам - как в составе команды, так и индивидуальным - открытую архитектуру, позволяющую добавлять компоненты, где бы они ни были изготовлены, и оперировать этими вновь введенными компонентами в визуальном построителе. Разработчики могут добавлять CASE-инструменты, кодовые генераторы, а также авторские help'ы, доступные через меню Delphi. [22].

1.7.4 Библиотека визуальных компонент

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

Этот костяк называется Visual Component Library (VCL). В VCL есть такие стандартные элементы управления, как строки редактирования, статические элементы управления, строки редактирования со списками, списки объектов. Еще имеются такие компоненты, которые ранее были доступны только в библиотеках третьих фирм: табличные элементы управления, закладки, многостраничные записные книжки. Все объекты разбиты на страницы по своей функциональности и представленны в палитре компонент.

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

Ключевой особенностью Delphi является возможность не только использовать визуальные компоненты для строительства приложений, но и создание новых компонент. Такая возможность позволяет разработчикам не переходить в другую среду разработки, а наоборот, встраивать новые инструменты в существующую среду. Кроме того, можно улучшить или полностью заменить существующие по умолчанию в Delphi компоненты.

Здесь следует отметить, что обычных ограничений, присущих средам визуальной разработки, в Delphi нет. Сам Delphi написан при помощи Delphi, что говорит об отсутствии таких ограничений.

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

TMainMenu позволяет поместить главное меню в программу. При помещении TMainMenu на форму это выглядит, как просто иконка. Иконки данного типа называют невизуальным компонентом, поскольку они невидимы во время выполнения программы.

TPopupMenu позволяет создавать всплывающие меню. Этот тип меню появляется по щелчку правой кнопки мыши на объекте, к которому привязано данное меню. У всех видимых объектов имеется свойство PopupMenu, где и указывается нужное меню. Создается PopupMenu аналогично главному меню.

TLabel служит для отображения текста на экране. Можно изменить шрифт и цвет метки, если дважды щелкнуть на свойство Font в Инспекторе Объектов. Это легко сделать и во время выполнения программы, написав всего одну строчку кода.

TEdit - стандартный управляющий элемент Windows для ввода. Он может быть использован для отображения короткого фрагмента текста и позволяет пользователю вводить текст во время выполнения программы.

TMemo - иная форма TEdit. Подразумевает работу с большими текстами. TMemo может переносить слова, сохранять в ClipBoard фрагменты текста и восстанавливать их, и другие основные функции редактора. TMemo имеет ограничения на объем текста в 32Кб, это составляет 10-20 страниц (есть подобные компоненты, где этот предел снят).

TButton позволяет выполнить какие-либо действия при нажатии кнопки во время выполнения программы. В Delphi все делается очень просто. Поместив TButton на форму, по двойному щелчку можно создать заготовку обработчика события нажатия кнопки.

TCheckBox отображает строку текста с маленьким окошком рядом. В окошке можно поставить отметку, которая означает, что что-то выбрано.

TRadioButton позволяет выбрать только одну опцию из нескольких.

TListBox нужен для показа прокручиваемого списка. Классический пример ListBox'а в среде Windows - выбор файла из списка в пункте меню File | Open многих приложений. Названия файлов или директорий и находятся в ListBox'е.

TComboBox во многом напоминает ListBox, за исключением того, что позволяет водить информацию в маленьком поле ввода сверху ListBox. Есть несколько типов ComboBox, но наиболее популярен спадающий вниз (drop-down combo box), который можно видеть внизу окна диалога выбора файла.

TScrollbar - полоса прокрутки, появляется автоматически в объектах редактирования, ListBox'ах при необходимости прокрутки текста для просмотра.

TGroupBox используется для визуальных целей и для указания Windows, каков порядок перемещения по компонентам на форме (при нажатии клавиши TAB).

TRadioGroup используется аналогично TGroupBox, для группировки объектов TRadioButton.

TPanel - управляющий элемент, похожий на TGroupBox, используется в декоративных целях. Чтобы использовать TPanel, можно просто поместить его на форму и затем положите другие компоненты на него. Теперь при перемещении TPanel будут передвигаться и эти компоненты. TPanel используется также для создания линейки инструментов и окна статуса.

TBitBtn - кнопка вроде TButton, однако на ней можно разместить картинку (glyph). TBitBtn имеет несколько предопределенных типов (bkClose, bkOK и др), при выборе которых кнопка принимает соответствующий вид. Кроме того, нажатие кнопки на модальном окне приводит к закрытию окна с соответствующим модальным результатом.

TSpeedButton - кнопка для создания панели быстрого доступа к командам (SpeedBar). Пример - SpeedBar слева от Палитры Компонент в среде Delphi. Обычно на данную кнопку помещается только картинка (glyph).

TTabSet - горизонтальные закладки. Обычно используется вместе с TNoteBook для создания многостраничных окон. Название страниц можно задать в свойстве Tabs.

TNoteBook - используется для создания многостраничного диалога, на каждой странице располагается свой набор объектов. Используется совместно с TTabSet.

TTabbedNotebook - многостраничный диалог со встроенными закладками, в данном случае - закладки сверху.

TOutline - используется для представления иерархических отношений связанных данных. Например - дерево директорий.

TStringGrid - служит для представления текстовых данных в виде таблицы. Доступ к каждому элементу таблицы происходит через свойство Cell.

TDrawGrid - служит для представления данных любого типа в виде таблицы. Доступ к каждому элементу таблицы происходит через свойство CellRect.

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

TShape - служит для отображения простейших графических объектов на форме: окружность, квадрат и т.п.

TBevel - элемент для рельефного оформления интерфейса.

THeader - элемент оформления для создания заголовков с изменяемыми размерами для таблиц.

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

TTimer - таймер, событие OnTimer периодически вызывается через промежуток времени, указанный в свойстве Interval. Период времени может составлять от 1 до 65535 мс.

TPaintBox - место для рисования. В обработчики событий, связанных с мышкой передаются относительные координаты мышки в TPaintBox, а не абсолютные в форме.

TFileListBox - специализированный ListBox, в котором отображаются файлы из указанной директории (св-во Directory). На названия файлов можно наложить маску, для этого служит св-во Mask. Кроме того, в св-ве FileEdit можно указать объект TEdit для редактирования маски.

TDirectoryListBox - специализированный ListBox, в котором отображается структура директорий текущего диска. В св-ве FileList можно указать TFileListBox, который будет автоматически отслеживать переход в другую директорию.

TDriveComboBox - специализированный ComboBox для выбора текущего диска. Имеет свойство DirList, в котором можно указать TDirectoryListBox, который будет отслеживать переход на другой диск.

TFilterComboBox - специализированный ComboBox для выбора маски имени файлов. Список масок определяется в свойстве Filter. В свойстве FileList указывается TFileListBox, на который устанавливается маска.

С помощью последних четырех компонент (TFileListBox, TDirectoryListBox, TDriveComboBox, TFilterComboBox) можно построить свой собственный диалог выбора файла, причем для этого не потребуется написать ни одной строчки кода.

TOLEContainer - контейнер, содержащий OLE объекты. Поддерживается OLE 2.02

TDDEClientConv,TDDEClientItem, TDDEServerConv, TDDEServerItem - 4 объекта для организации DDE. С помощью этих объектов можно построить приложение как DDE-сервер, так и DDE-клиент.

TChartFX - деловая графика. Компонент позволяет строить всевозможные графики и гистограммы.

1.7.5 Формы, модули и метод разработки “Two-Way Tools”

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

Информация о формах хранится в двух типах файлов - .dfm и .pas, причем первый тип файла - двоичный - хранит образ формы и ее свойства, второй тип описывает функционирование обработчиков событий и поведение компонент. Оба файла автоматически синхронизируются Delphi, так что если добавить новую форму проект, связанный с ним файл .pas автоматически будет создан, и его имя будет добавлено в проект.

Такая синхронизация и делает Delphi two-way-инструментом, обеспечивая полное соответствие между кодом и визуальным представлением. Как только добавляется новый объект или код, Delphi устанавливает т.н. “кодовую синхронизацию” между визуальными элементами и соответствующими им кодовыми представлениями.

Two-way tools - однозначное соответствие между визуальным проектированием и классическим написанием текста программы Это означает, что разработчик всегда может видеть код, соответствующий тому, что он построил при помощи визуальных инструментов и наоборот.

Визуальный построитель интерфейсов (Visual User-interface builder) дает возможность быстро создавать клиент-серверные приложения визуально, просто выбирая компоненты из соответствующей палитры. В процессе построения приложения разработчик выбирает из палитры компонент готовые компоненты как художник, делающий крупные мазки кистью. Еще до компиляции он видит результаты своей работы - после подключения к источнику данных их можно видеть отображенными на форме, можно перемещаться по данным, представлять их в том или ином виде.[4, 22].

1.7.6 Масштабируемые средства для построения баз данных

Мощность и гибкость Delphi при работе с базами данных основана на низкоуровневом ядре - процессоре баз данных Borland Database Engine (BDE). Его интерфейс с прикладными программами называется Integrated Database Application Programming Interface (IDAPI). В принципе, сейчас не различают эти два названия (BDE и IDAPI) и считают их синонимами. BDE позволяет осуществлять доступ к данным как с использованием традиционного record-ориентированного (навигационного) подхода, так и с использованием set-ориентированного подхода, используемого в SQL-серверах баз данных. Кроме BDE, Delphi позволяет осуществлять доступ к базам данных, используя технологию (и, соответственно, драйверы) Open DataBase Connectivity (ODBC) фирмы Microsoft. Но, как показывает практика, производительность систем с использованием BDE гораздо выше, чем оных при использовании ODBC. ODBC драйвера работают через специальный “ODBC socket”, который позволяет встраивать их в BDE.

Все инструментальные средства баз данных Borland - Paradox, dBase, Database Desktop - используют BDE. Все особенности, имеющиеся в Paradox или dBase, “наследуются” BDE, и поэтому этими же особенностями обладает и Delphi.

Библиотека объектов содержит набор визуальных компонент, значительно упрощающих разработку приложений для СУБД с архитектурой клиент-сервер. Объекты инкапсулируют в себя нижний уровень - Borland Database Engine.

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

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

Таблицы сохраняются в базе данных. Некоторые СУБД сохраняют базу данных в виде нескольких отдельных файлов, представляющих собой таблицы (в основном, все локальные СУБД), в то время как другие состоят из одного файла, который содержит в себе все таблицы и индексы (InterBase). Например, таблицы dBase и Paradox всегда сохраняются в отдельных файлах на диске. Директорий, содержащий dBase .DBF файлы или Paradox .DB файлы, рассматривается как база данных. Другими словами, любой директорий, содержащий файлы в формате Paradox или dBase, рассматривается Delphi как единая база данных. Для переключения на другую базу данных нужно просто переключиться на другой директорий. InterBase сохраняет все таблицы в одном файле, имеющем расширение .GDB, поэтому этот файл и есть база данных InterBase.


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.