Каталог :: Программирование и комп-ры

Курсовая: Система Clipper

                             Система CLIPPER.                             
CLIPPER - это созданная фирмой Nantucket Corp. система программирования
приложений в среде БД, включающая в себя быст­рый компилятор программ,
написанных на языке,  близком к языку СУБД  dBaseIII  PLUS,  редактор связей,
развитый интерактивный символический отладчик, обладающий пользовательским
интрефейсом в стиле меню,  который можно связать с разрабатываемой
програм­мой для облегчения ее отладки, большую библиотеку объектных мо­дулей
системных функций,  а также ряд служебных программ (ути­лит).
Система Clipper представляет собой,  по существу, СУБД компилирующего типа с
автонотным  (self-contained)  языком,  в значительной мере  совместимую по
входному языку программирова­ния и организации базы данных с СУБД  dBaseIII
PLUS.  Основная цель разработки  этого  програмного продукта - достижение
более высокой производительности прикладных  систем  по  сравнению  с
созданными с помощью средств dBaseIII PLUS. Эта задачп решается благодаря
использованию на стадии исполнения заранее  скомпили­рованного кода вместо
интерпретации исходных программ,  а также за счет более эффективных
механизмов индексирования файлов БД.
             Clipper работает  в  среде операционной системы MS DOS             
версии 2.0 и выше.  В результате компиляции текстов программ на исходном
языке он порождает загрузочные программные модули,  не требующие каких-либо
системных срдств на стадии исполнения.
Тем самым разработанная п/п полностью "отчуждается" от инструментальных
средств его разработки, может распространяться независимо от них,  и
пользователь такой п/п избавляестя от не­обходимости изучать этот
инструментарий.
Допускается декомпозиция    программных   модулей   на составные части,  из
которых  на  стадии  редактирования  можно сформировать модули  оверлейной
структуры.  Разработка крупных приложений значительно облегчается благодаря
технологии  сепа­ратной компиляции их компонентов.
Clipper обеспечивает высокую скорость  не  только  при исполнении программ,
но  и  на  стадии их компиляции.  Система польностью совместима с системой
dBaseIII PLUS  по  организации файлов БД.  Однако индексные файлы в системе
Clipper имеют иную более эффективную  организацию,  что   наряду   с
компиляцией способствует существенному  повышению  производительности
прог­рамм на стадии исполнения. Индексные файлы dBaseIII PLUS подме­няются
файлами  системы Clipper аналогичного назначения автома­тически на стадии
исполнения  либо  заблаговременно  с  помощью специальной утилиты.
В языке программирования системы  Clipper  отсутствуют такие полноэкранные
команды языка dBase,  как ASSIST,  BROWSE, EDIT, имеются ограничения на
использование функции макроподста­новки (&).  Значением сторковой
переменной,  к которой применя­ется эта функция,  не может быть,  в частности,
полная команда или фраза команды с ключевым словом,  а также список имен полей
записи файла БД или других объектов языка с разделителями-запя­тыми. Вместе с
тем в язык введены многие расширения. К их числу (в летней версии 1987 г.)
относятся возможности работы с масси­вами  переменных,  которые  могут
объявляться при необходитости глобальными величинами,  спецификации   эункций,
определяемых пользователем, возможности  обращения к функциям на языках Си и
ассемблере с передачей им параметров, средства программирования
пользовательских интерфейсов,  построенных в стиле меню, сохра­нения и
восстановления изображений, показанных на экране, боль­шое количество  новых
функций  различного назначения,  в част­ности, для операцийнад строками.
В языке  Clipper предусматриваются средства блокирова­ния файлов и записей
файлов БД,  необходимые для  использования программ на  этом  языке в
мультипользовательской среде сетевых систем БД.  Введены новые синтаксические
конструкщии,  например циклы FOR...NEXT,  новая  фраза  VALID  для
верификации данных,
вводимых с помощью команды GET, и ряд других.
К пользовательской  программе  можно  легко подключить процедуру HELP,
обеспечивающую глобальную и контекстно-зависи­мую помощь.  Эта процедура
вызывается на стадии исполнения тра­диционным нажатием функциональной клавиши
F1. При этом ей авто­матически передаются необходимые параметры.
Clipper включает,  как уже указывалось, весьма богатые системные библиотеки
функций различного характера,  существенно обогащающих язык,  позволяющих
значительно  сокращать  затраты времени на прикладное программирование и
уменьшать объем исход­ного кода. В летней версии 1987 г. предусмотрено около
ста раз­личных функций для анализа состояния системы, операций с масси­вами,
для вычисления элементарных математических функций,  опе­раций над строками,
редактирования данных, для создания файлов DOS и выполнения операций над
ними,  работы со значениями полей типа Memo в записях фаийлов БД и для других
целей.
Кроме того, пользователь имеет возможность создавать и использовать
собственные библиотеки функций.
Что касается системных библиотек,  то Nantucket  Corp. постоянно расширяет
их  состав.  В  1988 г.  был дополнительно включен ряд новых функций,  кроме
того, фирма начала поставлять пакет Clipper  предназначенного  для
использования совместно с системой Clipper.  Пакет содержит большую новую
структуризован­ную библиотеку  функций и расширенный драйвер экранов и
клавиа­туры, призванный заменить имеющийся в системе Clipper  драйвер. Эти
функции  и  драйвер  могут вкючалься в приложение на стадии редактирования.
Все функции библиотеки обладают высокой производитель­ностью и предъявляют
минимальные требования к оперативной памя­ти. Они реализованиы на языке
ассемблера и оптимизированы. Биб­лиотека пакета включает ряд функций для
конструирования многоо­конных пользовательских интерфейсов, для
непосредственной рабо­ты с оборудованием,  подлюченным к последовательному
интерфейсу ПЭВМ, минуя BIOS и обращиния к DOS.
Предусмотрена большая группа строковых функций,  функ­ций для  преобразования
числовых  значений и битовых операций, операций над датами и временем,
установки системных переключа­телей и получения информации об их состоянии,
а также о харак­теристиках и состиянии операционной  обстановки,
видеофункций, функций для  работы  с дисками,  файлами БД и принтером.  Всего
библиотека пакета включает более 270 различных функций.
Важным достоинством  системы  Clipper является возмож­ность использования
дополнительной  (свыше  640  Кбайт)  памяти персонального компьютера   при
исполнении  разработанных  его средствами п/п.
Вместе с  тем  система Clipper обладает и существенным недостатком -
порождаемые ею загрузочные модули довольно велики по объему.  Один  из
способов  преодоления этого изъяна - при­доставляемые пакетом возможности
конструирования  программных модулей с  оверлейной  структурой.  Однако  как
"цельнотянутый" загрузочный модуль,  так и корневой сегмент модуля с
оверлейной структурой не  могут быть размером менее 110Кбайт,  поскольку в
них включаются все необходимые элементы системной среды и функ­ции стадии
исполнения.
К числу недостатков этого продукта следует,  вероятно, отнести также
отсутствие комфортной среды для эффективной раз­работки и отладки Clipper-
программ. Имеется в виду среда подоб­ная той,  которой обладают, например,
Турбосистемы программиро­вания фирмы Borland Int. Входящий в состав системы
Clipper сим­валический отладчик является лишь одной из составных частей
та­кой среды.
Проблему сокращения объема требуемой оперативной памя­ти и уменьшения
размеров загрузочных  модулей  фирма  Nantucket Corp. решила в новой версии
системы - Clipper 5.0. Для этой це­ли в состав нового  программного  продукта
включается  динами­ческий редактор  связей  - загрузчик,  основанный на
механизмах
виртуальной памяти и тем самым вообще исключающий необходитость использвания
оверлейной  структуры  при  создании больших прог­раммных модулей.
Версия Clipper  5.0  обладает и другими важными досто­инствами. Пользователь
(программист-разработчик    прикладных
систем) может расширять язык новыми командами и благодаря этому формировать
множества команд, удобные для программирования спе­цифических классов задач.
Предусматриваются новые типы перемен­ных, а также многомерные массивы.
Разработана машино-ориентиро­ванная документация, к которой возможен доступ в
режиме on-line с помощью Guide to Clipper  или Norton Guide.