Офисное программирование. Специфика и примеры
Пользователям и программистам
Офисное программирование пользователям
Итак, давайте рассмотрим, что может дать офисное программирование пользователям Office. В свое время, обращаясь к пользователям и рассказывая им о преимуществах офисного программирования, я, стараясь сделать свою мысль о важности настройки документов Office образной, формулировал ее следующим образом:
"Работать с документами Office 2000, не используя VBA, все равно, что играть на ненастроенном пианино. Играть, конечно, можно, но профессионал этого позволить себе не может".
Используя это сравнение, хотелось обратить внимание пользователей на важность, а главное, на возможность настройки документов на решение специфических задач пользователя. Программирование офисных документов это одно из основных достоинств Office и грешно не использовать такую возможность. Документ, "сшитый по заказу" (custom built)смотрится куда лучше стандартного документа.
Однако, мое сравнение, как и всякое сравнение "хромает". Его можно интерпретировать и по-другому: "Фирма Microsoft предлагает своим пользователям ненастроенные документы ("расстроенное пианино"). Чтобы с ними работать, нужно их предварительно настраивать". Дабы избежать подобных заключений, несправедливых по отношению к этому прекрасному продукту, я теперь предпочитаю в подобных ситуациях говорить так:
"Работать с документами Office 2000 все равно, что играть на хорошо настроенном пианино. Но у этого инструмента есть возможности, открывающиеся для профессионалов. Нажмите ALT + F11 и создайте собственную композицию".
Вот только некоторые из тех преимуществ, что получает конечный пользователь, использующий программируемые офисные документы:
- Пользователь получает документы, обладающие новыми функциями и способные решать задачи, характерные для проблемной области пользователя.
- Пользователь находится в единой офисной среде независимо от того, с каким документом он работает в данный момент, и какой программист разрабатывал этот документ.
- Большинство доступных при работе с документами функций являются общими для всех документов, поскольку их предоставляет сама офисная среда. Единый стиль интерфейса разных документов облегчает работу с ними.
- Пользователь сам, не будучи программистом, способен создавать простые виды программируемых офисных документов, постепенно совершенствуясь в этой деятельности.
- Идеи визуального и событийно-управляемого программирования получают в офисном программировании свое естественное развитие, а значит, пользователь в полной мере берет в руки управление своим документом. Программист, предоставляя новые средства обработки документа, может даже и не подозревать, что может сделать с их помощью специалист, понимающий в своем деле.
Офисное программирование программистам
А есть ли преимущества у программиста, работающего в Office? Есть, и их, пожалуй, не меньше, чем у пользователя:
- В его распоряжении мощная интегрированная среда. Для программиста эта среда представлена в виде совокупности хорошо организованных объектов, доступных в языке программирования и по принципу работы ничем не отличающихся от встроенных объектов языка или объектов, создаваемых самим программистом.
- Большинство повседневных задач становятся для него простыми, - чтобы их решить, зачастую достаточно стандартных средств.
- Там, где стандартных средств не хватает, где у документа должны появится новые функциональные возможности, где необходимо создать документ по заказу вступает в силу язык программирования - VBA, существенная особенность которого - возможность работы с объектами любого из приложений Office.
- Office 2000- это среда разработки, отвечающая современному принципу: "Простые задачи должны решаться просто". Мощность среды определяется тем, какие задачи для нее являются простыми. В этом отношении Office 2000 уникален - круг "простых" для него задач весьма широк. Задачи, традиционно считающиеся сложными, программист может успешно решить в среде Office 2000.
- Если говорить о сложных задачах, то, естественно, есть такие задачи, для которых стандартных средств Office 2000 и языка VBA недостаточно. Вообще следует приветствовать одновременное существование различных программных сред, операционных систем, любимых теми или иными программистами. Лучшая позиция программиста должна состоять не в противопоставлении программных продуктов различных производителей, а в их совместном использовании. Именно поэтому мне кажутся важными идеи компонентного программирования, где вырабатывается стандарт на взаимодействие компонент, создаваемых в разных программных средах, на разных языках, на разных платформах и находящихся на разных машинах. Компонентный подход одна из характерных особенностей офисного программирования. Работа с компонентами DLL, ActiveX, AddIns, ComAddIns все это неотъемлемая часть арсенала офисного программирования.
- Офисное программирование это развивающееся направление в программировании, так что у программистов есть все возможности внести свой вклад в создание технологий и приемов работы с офисными документами. Одним из наиболее перспективных таких направлений, развиваемых в Office 2000, несомненно, является работа с документами, опубликованными в Internet и Intranet. Web-страницы становятся тем рабочим пространством, где члены рабочей группы совместно работают над документами Office 2000.
Заключая этот параграф, хочется еще раз напомнить пользователям и программистам, что именно их совместная работа над офисными документами может дать наилучшие результаты. В этом состоит одна из главных особенностей офисного программирования.