РЕЦЕНЗИИ
В государственных и коммерческих организациях России возрастают интерес и доверие к технологии Lotus Notes. Многочисленные публикации в прессе позволяют получить общее представление о ее возможностях, но не могут удовлетворить серьезный интерес. Эту брешь пытается закрыть фирма “ИнтерТраст Лтд.”. В выпускаемой ею серии книга “Lotus Notes R. 4: разработка приложений, язык LotusScript, встроенные классы” - уже третья. На русском языке еще не выходил столь обстоятельный труд, посвященный этой технологии.
В силу самобытности архитектуры Notes ее понимание необходимо разработчику. Предисловие и две первые главы раскрывают возможности и архитектуру четвертой версии этой системы и составляют концептуальный фундамент книги. Они будут полезны даже для читателей, уже имеющих опыт разработки приложений Notes. Тем, кто сталкивается с Notes впервые, нужно внимательно прочитать эти главы и возвращаться к ним по мере работы с книгой. Особенно удачны описания программного обеспечения и баз данных Notes, а также и разделы об аутентификации, управлении правами пользователей, шифровании и электронной подписи.
В главах 3 - 7 описаны строительные блоки любого приложения Notes: поля, бланки, формулы, каталоги документов, папки, навигаторы, субформы и многое другое. В четвертой версии Notes их набор и возможности значительно расширены. Авторы одинаково подробно показывают все инструменты, используемые разработчиком для создания и настройки всех частей приложения. Читатель-практик оценит встречающиеся в тексте советы, например по борьбе с искажением цветов графического фона. Этих глав достаточно для разработки реальных приложений Notes: информационных хранилищ, систем делопроизводства и поддержки принятия решений.
В четвертой версии Notes появился полноценный язык программирования LotusScript, предоставляющий разработчику Notes инструменты визуального программирования в стиле VisualBasic. В главах 8 и 9 описаны язык LotusScript, механизм его взаимодействия с системой Notes, применяемая в LotusScript модель программирования в виде обработки потоков событий, система событий Notes и все инструментальные средства. Программы LotusScript практически одинаково выполняются на всех поддерживаемых платформах. Описание особенностей выполнения в OS/2, UNIX и MacOS и директив препроцессора облегчает разработку приложений для выполнения в гетерогенных сетях. LotusScript значительно сокращает, но не исключает использование языка Си при разработке приложений Notes. Авторы довольно подробно описывают подключение библиотек динамической компоновки и соответствующие соглашения о связях.
В LotusScript интерфейс прикладного программирования (API) Notes оформлен в виде иерархии классов. Этой теме посвящены две последние главы. Рассмотрены также классы для доступа к внешним источникам данных через драйверы ODBC. Благодаря схемам, примерам и разъяснениям изучение API Notes не вызывает затруднений.
Книгу можно рекомендовать любому разработчику приложений Notes. Но в круг ее потенциальных читателей попадают и специалисты по интеграции информационных систем, и лица, занимающиеся консалтингом и обучением. Книга будет полезна при выборе информационных технологий для организаций, еще не имеющих единой информационной среды. Наконец, она просто интересна и годится для самообразования.
Требования к подготовке читателя невысокие. Главное - готовность воспринять идеологию Notes. Желательно знакомство с методами программирования систем, управляемых событиями. Достаточен и очень полезен небольшой опыт работы с VisualBasic.
Можно отметить и некоторые недостатки. Столь обстоятельная книга, несомненно, повлияет на словоупотребление в литературе по Notes. Поэтому стоит отметить неудачный перевод некоторых терминов. Например, в системе Notes термин “Action” обозначает действие, которое разработчик делает доступным пользователю. Авторы используют перевод-кальку “акция”, хотя в русском это слово имеет устойчивый и совершенно иной смысл.
Книга может служить как учебником по средствам программирования Notes, так и справочником. Работу затрудняет отсутствие предметного указателя (индекса). При таком обилии и разнообразии материала он просто необходим. Справочный подход преобладает. Для обучения недостает ясной схемы взаимодействия частей приложения Notes с указанием точек встраивания сценариев LotusScript.
В книге рассмотрены средства разработки, входящие в базовый комплект поставки Notes. Имеются дополнительные средства программирования и разнообразные модули расширения. Последние, например, связывают Notes с Internet, обеспечивают составление отчетов, взаимодействие с внешними источниками данных, факсимильную и пейджинговую связь, хранение изображений и оптическое распознавание символов. Не упоминается технология NotesFlow для управления приложением Notes из офисных программ SmartSuite. После выхода книги в свет появились программные компоненты Lotus Components for Notes, рассматриваемые как важнейший инструмент разработки приложений. Разработчики должны знать о существовании и основных возможностях этих средств. Достаточно было бы приложения с аннотированным списком имеющихся инструментов и ссылками на источники свежей информации в Internet и на конференции Usenet.
При общем хорошем впечатлении от книги отмеченные недостатки незначительны и могут быть легко устранены при переиздании. Авторов и издателей можно поздравить с успехом и пожелать им продолжить серию, сохранив достигнутый уровень в следующих изданиях.
С фирмой “ИнтерТраст Лтд.” можно связаться по телефону: (095) 956-7928 и по электронной почте: postmaster@inttrust.msk.ru.
Вадим Федоров