Поделиться

воскресенье, 24 июля 2011 г.

Редакторские будни: наиболее позитивный опыт от общения со специальной литературой

Ну, коль скоро в предыдущем посте я обругал одну старую книжку, считаю разумным в этот раз одну старую книжку похвалить.

Было это в тех же лохматых 199X... Я взялся изучать технологию OLE 2.0 (которая позже стала называться ActiveX). OLE 2.0 не проста в принципе - взять ее с нахрапа не так-то просто, по крайней мере, многие люди из тех, кого я знал, сходились в этом мнении. Слишком много в технологии всяких регистраций, хитрых функций и интерфейсов. Книг по данному вопросу, в свою очередь, тоже было немало. В разные годы мне посчастливилось разжиться следующими связанными с OLE 2.0 произведениями:

  • Харрис Л. "Программирование OLE. Освой самостоятельно за 21 день". - М.: БИНОМ, 1995. Тогда я еще покупался на такие заглавия (также как на слоганы "Идеальный пресс за месяц при занятиях по 5 минут в неделю"). Освоить OLE не получилось не только за 21, но и за 365 дней.
  • Пьюполо Дж. "OLE: создание элементов управления". - К.: Издательская группа BHV, 1997. Толковая книга, но мне не помогла.
  • Чеппел Д. "Технологии ActiveX и OLE". - М.: Издательский отдел "Русская редакция" ТОО "Channel Trading Ltd.", 1997. Помню, что все в книге разжевывалось в кашу, но уж больно как-то общо и неконкретно. Иными словами, модель расписана хорошо, но нет ни одного примера кода.
  • Microsoft Corporation. "Справочник по Microsoft OLE DB 1.1". - М.: Издательский отдел "Русская редакция" ТОО "Channel Trading Ltd.", 1997. OLE DB - это одна из многочисленных технологий доступа к данным, порожденных Microsoft. Ее историческое место располагается где-то после ODBC, DAO и ADO и перед "вторым пришествием" ODBC.
  • де ла Круз И., Талер Л. "Основы MAPI". - М.: Издательский отдел "Русская редакция" ТОО "Channel Trading Ltd."  1997. MAPI - это клиент-серверная основанная на OLE технология, позволяющая создавать приложения электронной почты и коллективной работы (честно говоря, я не знаю, используется она сейчас или нет).
  • Microsoft Corporation. Справочник по Автоматизации. - М.: Издательский отдел "Русская редакция" ТОО "Channel Trading Ltd.", 1998. Справочник, он и есть справочник. Глупо было на что-то рассчитывать. Кроме того, "Автоматизация" - это только часть OLE 2.0, позволяющая одному приложению пользоваться функциями другого и связанная с интерфейсом IDispatch.

Не могу сказать, что я считаю себя тупым. Также не могу сказать, что от этих книг не было вообще никакой пользы... какое-то общее представление о технологии сложилось, проблема была в конкретике. Есть такие факты, вопросы или загадки, которые ты полностью понимаешь только до тех пор, пока ты на них сосредоточен. Например, я могу за 5 минут разобраться в принципе действия парадокса Монти Холла, но если еще через 5 минут спросить меня о нем, я не смогу объяснить, почему он работает так, а не иначе. То же самое у меня было и с OLE: во время изучения книг все вроде бы выстраивалось так, как нужно, но стоило книгу закрыть и...

Наконец, после всех этих мытарств и бесчисленных попыток, я наткнулся в магазине на книжку Адама Деннинга "ActiveX для профессионалов" (СПб.: Питер, 1998). В четырех предложениях автор изложил суть технологии:

  • Интерфейс - это контракт между элементом и его пользователем.
  • Все, что поддерживает интерфейс IUnknown может считаться элементом ActiveX (элементом управления OLE).
  • Все новые интерфейсы регистрируются в реестре посредством глобально-уникальных идентификаторов (GUID).
  • Все доступные элементы управления также регистрируются в реестре посредством глобально-уникальных идентификаторов (GUID).

Книжка по объему составляет 622 страницы. Автор использует для построения элементов ActiveX MFC и ControlWizard, которые я всегда терпеть не мог. Но несмотря на все это постулаты, в которых он определил технологию, навсегда остались у меня в голове, расставив все по своим полочкам. Я был счастлив! Я эту книгу перечитывал несколько раз. Дипломный проект, который я защищал в 2000 году ("Разработка пользовательского интерфейса и интерфейса компонентов универсальной системы дистанционного обучения"), был насквозь пропитан элементами ActiveX - оные составляли суть его архитектуры.

Уильям Зиннсер, автор книги “Как написать хороший текст” (William Zinsser “On Writing Well”. - Harper Paperbacks, 2006), заметил, что “за хорошим текстом всегда виден его автор”. Поддерживаю обеими руками.

Комментариев нет:

Отправить комментарий