Mac OS X - первое знакомство. Продолжение – часть X
АрхивМаковое поле (архив)Двенадцатая часть из серии статей, посвященных новой операционной системе фирмы Apple - Mac OS X. Взаимодействие программ. AppleScript. Сервисы.
Взаимодействие программ.
AppleScript. Сервисы.
Программы вовсе не обязаны работать «в гордом одиночестве». Mac OS X предлагает два основных механизма взаимодействия программ. Один из них, достаточно мощный, гибкий и неплохо отработанный, основан на передаче и обработке системных сообщений между взаимодействующими программами. Его название — AppleScript.
AppleScript — это и механизм передачи сообщений, и современный, удобный, достаточно развитый язык программирования. В Mac OS X по существу сохранена идеология AppleScript, разработанная в предыдущих версиях операционной системы. Поэтому, если у вас имеются скрипты, написанные для выполнения какой-либо полезной или рутинной работы в среде Mac OS 9 — не торопитесь их выбрасывать. Конечно, в новой среде возможно придется кое-что подкорректировать, но большая часть будет работать практически без изменений.
Сервисы (Services) или услуги — это новый для Mac OS способ получить доступ к возможностям другой программы. Например на компьютере имеется программа проверки орфографии, которая оформлена в виде сервиса или поддерживает механизм сервисов. Находясь в текстовом редакторе вы выделяете фрагмент текста в документе и в меню программы находите команду Services. В подменю справа появляется список программ и предлагаемых ими услуг. Если среди этих услуг есть проверка орфографии, выбираете эту услугу и запускаете процесс. Автоматически стартует программа проверки орфографии, которая и проделывает всю необходимую работу. При этом данной услугой могут воспользоваться многие программы и, в то же время, одна и та же программа может оказывать несколько различных услуг. Механизм сервисов по сути выполняет работу, аналогичную последовательности действий: выделить фрагмент документа, скопировать его, запустить другую программу, вставить в новый документ этой программы скопированный фрагмент, выполнить некоторые действия над этим фрагментом, опять скопировать фрагмент уже после сделанных изменений, вернуться в исходную программу и заменить исходный фрагмент новым с внесенными изменениями. Таким образом, этот механизм помогает сэкономить много времени и сил при выполнении рутинной работы. Достоинство этого способа состоит в том, что не надо ничего программировать. Можно вообще заранее ничего не знать о том или ином сервисе. Достаточно просто выбрать некоторый фрагмент документа, с которым вы работаете и в списке доступных сервисов выбрать подходящий на ваш взгляд сервис. После завершения работы сервиса посмотреть результат.
Похожие разработки были и раньше. Например, работа известной программы проверки орфографии UniSpell внешне выглядела очень похоже, хотя механизм реализации был другим. Привлекательность данной схемы прежде всего состоит в том, что ее механизм поддерживается на уровне системы, что позволяет создавать прикладные программы, работающие единообразно, эффективно и надежно, а не плодить «зверинец» несовместимых или плохо совместимых между собой решений.