Delphi 3: первая и самая толстая... -в Книгу рекордов, или ”Супер” без ”супера”
Пол Туротт, Гарри Брент, Ричард Багдазиан, Стив Тендон. Супербиблия Delphi 3. Киев, Диасофт, 1997. - 848 с.
Оперативности компьютерного издательства “Диасофт” можно позавидовать: не прошло и трех месяцев со времени выпуска фирмой Borland коммерческого продукта Delphi 3, а на прилавках московских книжных магазинов уже появился фолиант поистине внушительных габаритов. Более объемного тома среди компьютерных изданий мне пока видеть не доводилось, по-моему, он вполне может претендовать на место в Книге рекордов...
И надо отметить, что содержание в основном действительно соответствует этому продукту, а не повторяет характеристики предыдущей версии. Это несомненно обрадует программистов-профессионалов, которые с большой осторожностью стали относиться к многообещающим заголовкам компьютерной литературы.
В противоположность очень толстой книге “Супербиблия Delphi 3” прилагаемый к ней CD-ROM не столь объемен: содержащаяся в нем информация вместе с исходными текстами программ занимает 82 Мб. Очевидно, для придания диску “веса”, т. е. объема, на него записаны EXE-файлы примеров-программ, скомпилированные в более ранней бета-версии Delphi 3, а также включены все вспомогательные файлы, которые легко могут быть получены путем компиляции в Delphi. Кстати, авторы книги и предлагают прибегнуть к этой процедуре с помощью нового компилятора коммерческой версии Delphi 3.
Прекрасно изданная - на отличной бумаге, в твердой красивой обложке (не хватает лишь “супера”) - “Супербиблия” оказалась действительно “супером”: думается, по объему, толщине равную ей в компьютерном книжном мире трудно подобрать. По своему информационному наполнению труд внушителен, однако по существу библией его все же назвать нельзя, поскольку основы этой мощной и визуальной среды в книге даны очень поверхностно, а ряд важных тем, скажем, Object Pascal и SQL, в ней попросту не представлен. Так, вторая глава, посвященная этой далеко не простой теме, занимает всего 10 страниц, на которых авторскому коллективу, естественно, не удалось изложить на доступном уровне основные аспекты важнейшей составляющей среды Delphi - библиотеки визуальных компонентов VCL (Visual Component Library).
Когда начинаешь с нетерпением перелистывать этот фолиант, сначала создается впечатление, что по содержанию он напоминает справочное руководство фирмы Borland, которое входит в комплект “бумажной” документации пакета Delphi 3. Однако, понемногу углубляясь в изучение отдельных глав (а их фантастическое количество - аж 65!) и сравнивая оба издания, убеждаешься в том, что различия между ними существенны. Познакомившись с “рабочими” примерами программ, представленными на CD-ROM, относишься к изданию с еще большим почтением, осознавая, что это издание оригинальное, каждый из авторов вложил в него немало своего нелегкого интеллектуального труда и накопленного опыта.
Книга разбита на шесть частей. Почти все главы содержат много полезной информации и построены по принципу справочника, что наряду с достаточно подробным оглавлением, приведенным на четырех страницах, позволяет быстро отыскивать нужную информацию. Явно не хватает предметного указателя, который ускорил бы поиск, поскольку при обсуждении различных элементов Delphi используется множество ссылок на другие главы и разделы.
В первой, обзорной главе авторы стремятся дать читателю общее представление о новой 32-разрядной среде Delphi, рассказать о ее возможностях. Здесь же даны понятия визуальной библиотеки компонентов VCL. К делу, т. е. к изложению основного наиболее интересного материала авторы приступают со второй части, где исследуется иерархия классов. Исследование начинается с основного абстрактного класса TObject, родоначальника всех остальных весьма многочисленных классов. Кроме того, в этой же части обсуждаются исключительные ситуации, которые могут возникнуть в создаваемом приложении, и способы их обработки.
В остальных частях труда рассмотрены свойства, методы, события многих классов, визуальных и невизуальных компонентов. Очень полезными для разработчика могут оказаться комментарии, сопровождаемые авторскими оригинальными примерами. В третьей части обсуждаются так называемые “устойчивые объекты”, порожденные от абстрактного класса tpersistent. Авторы подробно анализируют и показывают примеры эффективного применения таких классов, как TCanvas, TCollection, TGraphic, TString и, главное, порожденные от них многочисленные потомки.
Компоненты, составляющие основу визуальной среды Delphi, рассматриваются в трех последних частях. В четвертой, например, анализируются компоненты, предназначенные для создания диалоговых информационных систем. Несколько нетрадиционно разделение компонентов на “неоконные” и “оконные” - чаще они подразделяются на визуальные и невизуальные. Однако такой подход, на мой взгляд, с одной стороны, исключил повторения, а с другой - позволил обратить внимание на различия компонентов этих типов. Неоконные компоненты, к которым относятся TBevel, TImage, TShape, TSpeedButton, обсуждаются в пятой части. В шестой представлены так называемые “оконные” компоненты, включающие такие классы, как TEdit, TComboBox и др.
Из недостатков следует отметить, что, несмотря на большой объем издания, в него не вошел ряд интересных решений, относящихся именно к Delphi 3, например компоненты страницы Decision Cube. В связи с исключением из комплекта поставки Delphi 3 генератора отчетов Report Smith и включением более совершенной версии генератора Quick Report читатели вправе ожидать в таком “всеобъемлющем” справочнике если не исчерпывающей, то хотя бы достаточной информации на эту важную тему. Однако авторы здесь безмолвствуют. Это можно объяснить тем, что книга написана до выхода окончательной коммерческой версии Delphi 3.
Качество перевода оставляет желать много лучшего: на некоторых страницах он напоминает не очень старательно обработанный подстрочник, который в ряде случаев заставляет задуматься... и иногда надолго. Режет слух и взор “32-битность программы”, “промышленные словечки”, наконец, “шестнадцатИричный” (даже MS Word “запищал” - дескать, неправильно!) - и это все лишь на одной странице (388-й) и т. п. Попытки перевода традиционно непереводимых названий компонентов, как, например, Grid - “сетка” вместо “таблица”, TDBCtrGrid, часто неудачны и, на мой взгляд, не только не проясняют существа того или иного термина, но, скорее, вносят терминологическую путаницу.
В заключение стоит отметить, что, несмотря на отмеченные недостатки, полезность и своевременность появления книги - несомненны. В первую очередь она нужна профессионалам, в том числе создающим корпоративные информационные системы; но и опытному программисту, осваивающему новую версию этой инструментальной системы, данное издание может оказать существенную помощь и как руководство по программированию, и как справочник по многим классам, компонентам, свойствам, методам, событиям обновленной и перспективной инструментальной среды Delphi 3.
Контактные телефоны фирм: “Диасофт” - (044) 244-9309;
Borland (московского представительства) - (095) 238-3611.
Александр Чубуков