Рецензия
После появления первых книг по Delphi, руководствуясь которыми можно было приступить к программированию в этой среде, стали выходить книги, предназначенные для профессионалов, в том числе имеющих опыт работы в среде Windows.
Из последних посвященных этой тематике книг привлекает внимание переводная монография Рэя Конопки “Создание оригинальных компонентов в среде Delphi”, выпущенная издательством “Диасофт” (Киев, 1996 г., 511 с.). В ней автор делится ценным опытом по созданию и оформлению на профессиональном уровне компонентов в среде Delphi. Б’ольшая часть книги посвящена практическому исследованию методов программирования и, что немаловажно, внутреннего механизма самой среды Delphi. Автор делает упор на самом сложном аспекте - разработке динамических компонентов, которые при проектировании не видны разработчику, а появляются на экране в процессе выполнения приложения. Поскольку каждый из таких компонентов представляет собой объект, то возможно повторное использование их при разработке следующих приложений.
При реализации проектов в Delphi без разработки специальных заказных компонентов, удовлетворяющих требованиям пользователя, не обойтись. Разработчики фирмы Borland учли эту особенность - в поставку комплекта Delphi включено специальное руководство по разработке компонентов. Тем не менее программисту-профессионалу этой информации мало. Для более эффективного освоения этой достаточно непростой технологии необходимы законченные примеры реализации с исходными текстами и подробными комментариями, с учетом опыта коллег-программистов.
Обобщением накопленного в этой области опыта в известной мере могут служить многочисленные примеры, приводимые в книге Конопки. В них иллюстрируется методика создания оригинальных компонентов, что вызовет несомненный интерес как у опытного, так и у осваивающего эту визуальную среду программиста. К тому же примеры представлены в виде исходных текстов кодов на дискете, продаваемой (к сожалению, не всегда и не везде) вместе с книгой, и в случае удачи (т. е. приобретения такой дискеты) с работой программы можно ознакомиться непосредственно в самой среде Delphi. Авторские тексты исходных кодов на дискете - рабочие, т. е. без опечаток и искажений, обычно присущих (в той или иной мере) любому переводу, а потому после непродолжительной компиляции читатель гарантированно может наблюдать разработанные автором компоненты в действии - на экране компьютера. Приводятся методические указания по конфигурированию и компиляции программ-примеров. Правда, эти весьма ценные указания разбросаны по книге - удобнее было бы полностью поместить их в одно место, например в файл readme или в одно из приложений, которых здесь целых четыре.
Интересно методологическое построение монографии. В разделах, посвященных общим концепциям написания кода на Object Pascal, положенным в основу традиционного программирования в среде Delphi, дан сравнительный анализ разработки программ на Borland Pascal 7.0, C++ и приведены отличия Object Pascal для Delphi и Borland Pascal 7.0. Анализ сопровождается конкретными примерами, написанными на всех трех языках и представленными в виде исходных текстов, что облегчает программистам, имеющим опыт создания приложений на языках Borland Pascal 7.0 или C++, переход на программирование в среде Delphi.
Особое внимание автор уделяет свойствам объектов, справедливо считая, что мастерство использования свойств, в том числе на уровне кодов, повышает уровень создаваемого в среде Delphi приложения. Свойств у каждого визуального и невизуального объекта Delphi значительно больше, чем показывает мощный инструментарий среды - “инспектор объектов”. “Невидимые” свойства при разработке достаточно сложных приложений играют не менее важную роль, чем отображаемые “инспектором объектов”. Именно возможностью программирования свойств объектов среда Delphi отличается от других визуальных сред. Особое внимание уделяется “работе” со свойствами динамических компонентов, не видимых при визуальном проектировании и создаваемых во время исполнения программы-приложения.
В заключительной части монографии рассмотрена методика создания справочной системы для Windows-приложений. Этот раздел представляет интерес для профессионалов, подготавливающих к выпуску коммерческий программный продукт, поскольку в пакете Delphi отсутствуют средства для решения этой непростой задачи. Изложение методики разработки справочной системы сопровождается примером законченной программы, исходные тексты которой подробно анализируются и, при наличии авторской дискеты, могут быть скомпилированы и проверены в работе.
Хотя все приводимые примеры выполнены для 16-разрядной версии среды Delphi, автор не оставил без внимания переход на более быстродействующую и перспективную версию Delphi 2.0, позволяющую создавать приложения в 32-разрядном коде. Автор (правда, не в основной части книги, а в приложении) кратко описывает особенности такого перехода и уверяет, что проблем здесь быть не должно.
Перевод книги Конопки - несколько “неровный” по качеству и в целом оставляет желать лучшего: содержит опечатки, а иногда и непонятные фразы, которые заставляют надолго задуматься над тем, что же хотел сказать в этом месте автор. Книга сама по себе интересна, но не проста в освоении приводимого материала - требует внимательного чтения, исследования приводимых примеров и изучения, но в конечном итоге может принести ощутимую пользу терпеливому читателю, научит его работе на профессиональном уровне в интересной и перспективной визуальной среде.
Александр Чубуков