РАЗРАБОТКА ПО
Разработчикам придется привыкать к новым правилам
Существует множество подробных руководств по созданию продуктов, совместимых с Windows Vista. Но большинство советов легко сводится к краткому резюме: эта ОС очень мощная и берет на себя невероятно много.
Строя приложения для ПК, программисты на протяжении двух десятилетий накопили кучу вредных привычек. Первый десяток лет их баловал прямой доступ к аппаратным ресурсам, отказаться от которого оказалось сложно. Затем они получили практически неограниченную власть над управлением однопользовательскими машинами, поскольку их владельцы почти всегда имели привилегии администратора.
На конференции разработчиков Microsoft в сентябре 2005-го инженер корпорации Роберт Виллаэрмоса продемонстрировал серию плакатов под незабываемым заголовком "Пять самых надежных способов сделать свое приложение несовместимым". Лейтмотив его выступления был таким: нужно уважать системный реестр Windows (тем, кто пишет приложения, не следует считать его своей игровой площадкой) и не мешать ОС поддерживать системную конфигурацию. Поэтому программисты должны внимательнейшим образом изучить новые правила, которыми пользуется Vista при обращении к аппаратным ресурсам. Если этому не следовать, вполне может возникнуть путаница между параметрами виртуальной машины и реального "железа", на котором та функционирует. Виллаэрмоса также предостерег против жесткого программирования путей к файлам и каталогам, равно как и против размещения данных в том же каталоге, что и файл самого приложения.
Приложения Vista требуют особого внимания разработчика В среде Vista старая привычка пользователя присваивать себе всю систему не пройдет. Ему придется: - уважать системный реестр. Глобальная структура данных принадлежит системе, а не приложениям; - соблюдать абстракцию. Требуется четкое выполнение системных правил относительно расположения файлов и запросов к аппаратным ресурсам; - довольствоваться ограниченными привилегиями. Приложение должно работать в пределах прав обычного пользователя (а не администратора). Источник: eWeek Labs. |
В дополнение ко всему прочему создателям программ для Vista нужно обязательно иметь в виду, что плоды их труда могут оказаться на машинах, которые используются несколькими сотрудниками, каждый - с собственными настройками. Это следует учитывать и при разработке приложений для Windows XP, однако многие программисты смотрят на это правило сквозь пальцы, поскольку на практике пользователи таких машин в большинстве случаев обладают привилегиями администратора. Но в среде Vista более распространенными являются права не администратора, а обычного пользователя, и в таких условиях приходится обращать особое внимание на "хорошее поведение" приложений.
Освоившись с новыми ограничениями, программист устранит 90% потенциальных проблем совместимости с Vista.
В прошлом году специалисты eWeek Labs наблюдали за семьей, все члены которой, включая отца, довольствовались в среде XP правами обычных пользователей (исключение из этого правила делалось лишь тогда, когда нужно было установить новое приложение или обновить ПО). Список возникших из-за этого проблем оказался на удивление длинным и впечатляющим. В него попали даже такие причудливые ошибки, как нежелание машины правильно отображать заложенные в приложение шрифты, если только пользователь не имел административных привилегий.
О подобных случаях сообщают нам и читатели eWeek. Чего стоит, например, поведение простенького приложения, призванного выводить на печать почтовые этикетки для курьерской службы, которое напрочь отказывается работать с любым пользователем, кроме администратора! В среде Vista подобные программы окажутся совершенно бесполезными.