Borland Pascal with Objects - это профессиональная объект- но-ориентированная система программирования для реального и защи- щенного режима DOS и Windows. Если вы работаете с программными продуктами Turbo Pascal или Turbo Pascal for Windows, то из дан- ной главы вы узнаете о новых средствах Borland Pascal и о том, где найти информацию о них.Три интегрированных интерактивных среды разработки программ
Borland Pascal предоставляет вам три интегрированных инте- рактивных среды разработки программ (IDE): * BP.EXE, интегрированную среду разработки программ, которая работает в защищенном режиме DOS и генерирует по вашему выбору прикладные программы DOS реального режима, Windows и DOS защищенного режима. IDE защищенного режима означает, что каждое ваше очень большое приложение будет иметь для компиляции достаточно памяти. * BPW.EXE, интегрированную среду, которая работает под Windows и генерирует по вашему выбору прикладные программы DOS реального режима, Windows и DOS защищенного режима. * TURBO.EXE, интегрированную среду, которая работает в ре- альном режиме DOS и генерирует только прикладные программы DOS реального режима, работающие только на процессорах 80х86. Примечание: Для работы IDE DOS защищенного режима ваш компьютер должен иметь процессор 80286 или старше и не ме- нее 2 мегабайт памяти. Об интегрированных средах для DOS рассказывается в Главе 4 "Программирование в интегрированной интерактивной среде для DOS". О специальных средствах интегрированной среды для Windows вы мо- жете узнать из Главы 5 "Программирование в интегрированной инте- рактивной среде для Windows".Новые средства IDE
В перечисленных IDE вы можете найти следующие новые средс- тва: * Два средства просмотра объектов ObjectBrowser - одно в IDE для DOS защищенного режима, другое в IDE для Windows. С помощью ObjectBrowser вы можете просматривать в своей программе объекты и модули, проверять свой исходный код, получать полные перекрестные ссылки на каждый используемый в программе идентификатор и видеть свою программу с новой позиции. Об ObjectBrowser для DOS и Windows в данной книге рассказывается ниже. * Выделение синтаксиса. Во всех интегрированных средах в программах используется цветовое выделение элементов кода, благодаря чему вы можете быстро идентифицировать фрагменты исходного кода. В IDE для Windows вы можете также исполь- зовать синтаксические элементы, выделяемые жирным, наклон- ным шрифтом или подчеркиванием. Во всех IDE вы можете пе- чатать синтаксически выделенный код. О выделении синтакси- са рассказывается в Главе 4 "Программирование в интегриро- ванной интерактивной среде для DOS" и в Главе 5 "Програм- мирование в интегрированной интерактивной среде для Windows". * Оперативная полоса SpeedBar в IDE для Windows. Эта опера- тивная полоса предоставляет быстрый способ выбора команд меню и других действий с помощью "мыши". Вы можете по сво- ему выбору выводить ее горизонтально, вертикально или в виде свободной палитры, либо даже выключить ее полностью. * В редакторах для DOS и Windows имеются средства Undo (От- мена) и Redo (Повтор). Если вы сделаете в процессе редак- тирования ошибку, нажмите Undo, и ваша ошибка исчезнет. Нажмите Redo - и она появится вновь. * Меню инструментальных средств Tools. Инструментальные средства и утилиты, поставляемые с Borland Pascal, вы мо- жете запускать непосредственно из IDE. В IDE для DOS в ме- ню Tools вы можете добавить свои собственные утилиты и из- менить по своему усмотрению оперативные клавиши. О меню Tools IDE для DOS и о меню Tools IDE для Windows рассказы- вается в Главе 4. * Окно сообщений Messages в IDE для DOS. Окно Messages вы можете использовать для вывода сообщений из таких утилит как GREP. Вы можете выбрать редактирование программной строки со ссылкой на сообщение или отслеживать сообщения в исходном коде при просмотре сообщений. * Локальные меню во всех интегрированных средах. Простым на- жатием правой кнопки "мыши" или клавиш Alt+F10 вы можете вывести локальное меню со списком команд, относящихся к активному окну. * Информация об идентификаторах сохраняется от одного сеанса к другому. Это позволяет после выхода и перезапуска IDE вам просматривать, отлаживать или выполнять программы без перекомпиляции. * Информация об идентификаторах сохраняется от одной до дру- гой компиляции. Если вы успешно скомпилируете программу, измените исходный код, перекомпилируете ее, и компиляция завершится неудачно, информация об идентификаторах сохра- нится с момента последней компиляции. Ее просмотр может помочь вам выявить ошибку в исходном коде. * В интегрированных средах для DOS поддерживаются множест- венные устанавливаемые пользователем справочные файлы. В справочную систему Borland Pascal вы можете загрузить до- полнительные справочные файлы. IDE объединяет тематические указатели вновь загруженных справочных файлов и стандарт- ного системного тематического указателя Help.Компилятор командной строки, работающий в защищенном режиме
Компилятор командной строки BPC.EXE, работает в защищенном режиме, благодаря чему очень большие программы имеют достаточно памяти для успешной компиляции. Аналогично IDE для DOS, работаю- щей в защищенном режиме, BPC.EXE может создавать прикладные прог- раммы реального режима DOS, Windows и защищенного режима DOS. О компиляторе, работающем в режиме командной строки, рассказывается в Главе 3 "Компиляторы, работающие в режиме командной строки" "Справочного руководства программиста".Среда разработки программ защищенного режима DOS
С помощью компиляторов командной строки BP.EXE и BPC.EXE вы можете создавать программы, работающие в защищенном режиме DOS без использования оверлеев. Ваши программы смогут, наконец, пре- высить барьер реального режима DOS в 640К. Для многих ваших программ все, что нужно сделать для созда- ния приложения DOS защищенного режима, это выбор защищенного ре- жима DOS в качестве целевой платформы и установка соответствующих параметров компилятора (см. Главу 4). Возможно, вы захотите про- честь также Главу 17 "Руководства по языку" ("Программирование в защищенном режиме DOS"), которой вопросы, касающиеся защищенного режима, рассматриваются более углубленно.Динамически компонуемые библиотеки DOS
Динамически компонуемые библиотеки (DLL) традиционно были частью разработки программ Windows. С помощью Borland Pascal вы сможете создавать DLL для DOS. Библиотеки DLL загружаются на этапе выполнения отдельно от ваших файлов .EXE и могут совместно использоваться несколькими прикладными программами. DLL для DOS работают в защищенном режиме DOS и полностью совместимы с DLL для Windows, что позволяет вам совместно использовать DLL для прикладных программ DOS и Windows. О динамически компонуемых библиотеках рассказывается в Главе 11 "Динамически компонуемые библиотеки" в "Руководстве по языку".Добавления к языку Паскаль
Borland Pascal имеет несколько новых расширения языка, об- легчающих написание программ: * Открытые параметры. Открытые параметры позволяют переда- вать в процедуру или функцию строки и массивы переменных размеров. Об этих параметрах рассказывается в Главе 9 "Процедуры и функции", в разделе "Открытые параметры" кни- ги "Руководство по языку". * Стандартная директива public. В Turbo Pascal 6.0 и Turbo Pascal for Windows допускаются секции компонентов объектов private. Borland Pascal вводит секции компонентов объектов public, не имеющие ограничений по области действия описан- ных в них полей и методов. Если вы находите это удобным, в объектах можно чередовать секции компонентов public и private. Подробнее о новой стандартной директиве public рассказывается в разделе "Компоненты и область действия" Главы 4 "Типы" в "Руководстве программиста". * Зарезервированное слово inherited. Зарезервированное слово inherited может использоваться внутри метода для ссылки на предка объектного типа метода. См. раздел "Активизация уточненного метода" Главы 4 "Типы" книги "Руководство по языку". * Параметры-константы. Процедуры и формулы могут использо- вать параметры-константы: группе параметров предшествует зарезервированное слово const, за которым следует тип. Па- раметры-константы защищают от случайных присваиваний фор- мальному параметру, и в некоторых случаях это позволяет компилятору генерировать более эффективный код. См. раздел "Параметры" в Главе 9 "Процедуры и функции" в "Руководстве по языку". * Динамические методы и таблицы динамических методов (DMT). Если вы работали с Turbo Pascal for Windows, то уже знаете о динамических методах и таблицах динамических методов DMT. В Borland Pascal их могут также использовать програм- мы для DOS. Динамические методы отличаются от виртуальных методов спо- собом диспетчеризации динамических методов на этапе выпол- нения. Вместо построения для динамических методов таблицы виртуальных методов (VMT) компилятор строит DMT. Использо- вание DMT уменьшает потребности вашей прикладной программы в памяти при программировании с объектами. Более подробно о динамических методах рассказывается в разделе "Динами- ческие методы" в Главе 4 ("Типы") "Руководства по языку". Чтобы узнать подробности о таблицах динамических методов, см. раздел "Таблицы динамических методов" в Главе 21 ("Вопросы использования памяти") "Руководства по языку".Улучшения в библиотеке исполняющей системы
Borland Pascal имеет три библиотеки исполняющей системы: TURBO.TPL для программ DOS реального режима, TPW.TPL для программ Windows и TPP.TPL для программ DOS защищенного режима. Улучшения библиотек исполняющей системы касаются следующих элементов: * более быстрого ввода-вывода текстового файла; * более быстрой функции Pos; * оптимизации 80386 для операций умножения, деления, сдвига влево и вправо со значениями типа Longint.Новые подпрограммы модуля System
Модуль System содержит семь новых процедур и функций. Вы мо- жете найти их в Главе 1 ("Справочник по библиотеке") "Справочного руководства программиста". * Процедура Assigned выполняет проверку и анализ того, со- держит ли указатель или процедурная переменная nil. * Процедура Break завершает оператор for, while или repeat. * Процедура Continue продолжает следующие итерации оператора for, while или repeat. * Процедура Include включает элемент в множество. * Процедура Exclude исключает элемент из множества. * Функция High возвращает наивысшее значение в диапазоне ар- гумента. * Функция Low возвращает низшее значение в диапазоне аргу- мента.Новые модули
Благодаря модулю Strings программисты, использующие Turbo Pascal for Windows, могли работать со строками с завершающим ну- лем (в стиле Си). Теперь модуль Strings могут использовать как программисты, работающие в Windows, так и работающие в DOS. Под- робнее о строках с завершающим нулем рассказывается в Главе 18 "Использование строк с завершающим нулем" в "Руководстве по язы- ку". Полную информацию о строках с завершающим нулем вы можете получить, прочитав Главу 1 ("Справочник по библиотеке") "Справоч- ного руководства программиста". Программисты, работающие с Turbo Pascal for Windows, уже знакомы с модулем WinDos. Программисты, работающие в DOS, также могут использовать модуль WinDos для реализации операционных сис- тем и подпрограмм обработки файлов. Чтобы выяснить, следует вам использовать модуль WinDos или Dos, прочитайте Главу 16 "Интер- фейс с DOS" "Руководства по языку". Все процедуры и функции под- робно поясняются в Главе 1 ("Справочник по библиотеке") "Справоч- ного руководства программиста". Модуль WinAPI дает вам возможность прямого доступа к расши- рениям DOS защищенного режима. Интерфейс WinAPI разработан как подмножество API (интерфейс прикладных программ) Windows, чтобы облегчить написание переносимых приложений и двоично-совместимых DLL. О модуле WinAPI рассказывается в Главе 17 "Программирование в DOS в защищенном режиме" "Руководства по языку". Более полную информацию о процедурах и функциях модуля WinAPI можно найти в Главе 1 ("Справочник по библиотеке") "Справочного руководства программиста". Модуль WinPrn позволяет послать информацию, выводимую вашей программой Windows, на выбранный принтер. О печати в программах Windows рассказывается в Главе 14 ("Ввод и вывод") "Руководства по языку". См. также расширенные пояснения по процедурам WinPrn в Главе 1 ("Справочник по библиотеке") "Справочного руководства программиста". Модуль Win31 обеспечивает интерфейс с дополнительными прог- раммами API, которые можно найти в DLL KERNEL и USER Windows 3.1. Приложения, использующие модуль Win31, не будут работать под Windows 3.0. Подробности о модуле Win31 вы можете узнать в спра- вочной системе Borland Pascal. Остальные расширения API Windows 3.1 Borland Pascal поддер- живает в нескольких модулях (информацию о них вы можете получить в справочной системе Borland Pascal): ColorDlg LZExpand ShellAPI CommDlg MMSystem Stress Cpl OLE TooHelp DDEML PenWin Ver Dlgs Print WinMem32Новые директивы компилятора
Borland Pascal имеет пять новых директив компилятора. Под- робнее о них рассказывается в Главе 2 ("Директивы компилятора") "Справочного руководства программиста": * Директива $P (открытые строковые параметры) управляет смыслом параметров-переменных, описанных с помощью ключе- вого слова string. * Директива $T (указатели с проверкой типа) управляет типами значений указателей, генерируемых операцией @. * Директива $Q (проверка переполнения) управляет генерацией кода проверки переполнения для отдельных арифметических операций. * Директива $K (эффективные вызовы) управляет генерацией эф- фективных вызовов процедур и функций, экспортируемых при- ложением Windows. Подробнее об обработке в Borland Pascal эффективных вызовов рассказывается в разделе "Код входа и выхода" Главы 22 ("Вопросы управления") "Руководства по языку". * Директива $Y (информация об идентификаторе) генерирует в компилируемой программе или модуле ссылочную информацию идентификатора, благодаря чему ObjectBrowser может выво- дить на экран определение идентификатора и ссылочную ин- формацию для данного программного модуля.Усовершенствования компилятора
Кроме расширений языка Borland Pascal и добавления новых ди- ректив компилятора, в сам компилятор также внесены улучшения: * Компилятор позволяет выполнять более простую компоновку с Си и ассемблером путем передачи в ваш выполняемый файл ин- формации о номерах строк .OBJ. Таким образом, вы можете использовать встроенные отладчик для выполнения по шагам кода языка Си и ассемблера. См. в данной книге Главу 6 "Отладка в интегрированной среде". * Когда правым операндом операции in является константа мно- жественного типа, компилятор генерирует более эффективный код. См. раздел "Встраивание констант множественного типа" в Главе 23 ("Оптимизация кода") в "Руководстве по языку". * Компилятор генерирует более эффективный код для малых мно- жеств. О малых множествах подробнее рассказывается в Главе 23 ("Оптимизация кода") в "Руководстве по языку". * Компилятор допускает неограниченную вложенность модулей. * Оператор uses в разделе implementation модуля не вызывает теперь циклической ссылки на модуль. * В определенных ситуациях компилятор подавляет операции из- быточной загрузки указателей. См. Главу 23 ("Оптимизация кода") "Руководства по языку".Улучшения в Turbo Vision
В Turbo Vision 2.0 в иерархию добавлены новые объекты, а к существующим объектам добавлены некоторые новые возможности. Из- менения существующий объектов имеют обратную совместимость, поэ- тому существующий код Turbo Vision следует компилировать без из- менений, а существующие потоки и ресурсы загружаются без ошибок. В Turbo Vision 2.0 имеются некоторые новые средства. О них рассказывается в "Руководстве по программированию с Turbo Vision": * Поддержка проверки допустимости данных. Ваши приложения Turbo Vision могут обеспечить получения для обработки до- пустимых данных. * Кнопки с независимой фиксацией с множеством состояний. Кнопки с независимой фиксацией могут иметь состояния, от- личные от "выбрана" и "не выбрана". IDE защищенного режима DOS (BP.EXE) использует кнопки с независимой фиксацией с множеством состояний в своем диалоговом окне параметров компилятора Compiler Options. * Средство просмотра схемы объектов. Для вывода схем ваши приложения могут использовать два объекта - TOutlineViewer и TOutline. Эти объекты использует средство DOS ObjectBrowser. * Поддержка версий объектов в потоках. Даже если ваши объек- ты были созданы с помощью Turbo Vision 1.0, ваши программы все равно смогут считывать их как объекты, совместимые с Turbo Vision 2.0. * Новое учебное руководство и пересмотренная документация. Вы увидите, что можно быстро изучить и освоить Turbo Vision.Улучшения ObjectWindows
В иерархию ObjectWindows добавлены новые объекты. К сущест- вующим объектам также добавлены некоторые новые возможности. Модуль WObjects больше не существует. Существующий у вас ис- ходный код можно будет успешно перекомпилировать, если вы замени- те каждую ссылку на WObjects модулями OWindows, ODialogs, OMemory и Objects. ObjectWindows содержит новые средства. Узнать о них можно, прочитав "Руководство по программированию с использованием ObjectWindows": * Поддержка проверки допустимости данных. Ваши приложения ObjectWindows могут обеспечить получение для обработки до- пустимых данных. * Печать объектов. Благодаря новым объектам печати выводить данные на печать в программах ObjectWindows стало проще. * Поддержка специализированных управляющих элементов Windows фирмы Borland. Ваши программы Windows могут иметь вид, со- ответствующий стандарту Borland.Новые средства и утилиты
Если вашей целевой платформой является Windows, помочь про- цессу разработки могут два новых средства. Прочесть о них можно в "Руководстве по инструментальным средствам и утилитам". * Утилита WinSight. WinSight - это инструментальное средство отладки, которое дает вам информацию об окнах, классах и сообщениях. Используйте ее для изучения новых приложений Windows (ваших или чужих), чтобы увидеть как создаются и используются окна и классы окон, и какие сообщения получа- ют окна во время выполнения программы. * Утилита WinSpector. С помощью WinSpector вы можете прове- рить приложение Windows после завершения его с невосста- навливаемой ошибкой (Unrecoverable Application Error - UAE). Это поможет вам понять причину ошибки. Borland Pascal также включает в себя обновленные версии сле- дующих инструментальных средств: * Turbo Debugger (Турбо отладчик) включает отладчик TDW, ко- торый может отлаживать прикладные программы Windows, и TDX, который может отлаживать прикладные программы защи- щенного режима DOS. * Turbo Profiler (Турбо профилировщик), который включает в себя два профилировщика - один для программ DOS, а другой для программ Windows. * Turbo Assembler (Турбо ассемблер), добавляющий к коду ас- семблера объектно-ориентированное программирование. * Resource Workshop (Пакет разработчика ресурсов), работаю- щий в среде Windows и способный создавать для приложений Windows все ресурсы (диалоговые окна, курсоры, битовые массивы, пиктограммы и т.д.).
Назад | Содержание | Вперед