Будущее приложений для Сети - в переносимости инструментов
ОЦЕНКА СЕТИ
Переносимость приложений для корпоративных разработчиков - это то же самое, что нирвана для дзен-буддиста: состояние очень желанное, но труднодостижимое.
Многие языки программирования и средства разработки были нацелены на обеспечение переносимости, но, пожалуй, ни одна из существующих технологий не была столь многообещающей, как Java (собственно язык) и развивающаяся вокруг него оболочка (соответствующая стандартам реализация виртуальной машины, классы, определенные фирмой JavaSoft, и объектная модель Java Beans). Java раздает авансы направо и налево, а отделы ИТ истекают слюной в ожидании более переносимых приложений и вместе с ними роста эффективности и снижения затрат на поддержку.
Интерес корпоративных разработчиков к Java легко объясним, однако важно уметь отличать чистую переносимость приложений от переносимости навыков работы и приемов, необходимых для создания этих приложений. Понимание этого позволяет отделам ИТ учитывать не только инвестиции, необходимые для разработки приложений, но также расходы на обучение и наборы инструментальных средств.
Переносимость какого-либо приложения, без сомнения, очень важна, но переносимость опыта и навыков (а в них вкладываются немалые средства при найме и обучении сотрудников, а также при покупке инструментов разработки) в расчете на долгосрочную перспективу еще более значима.
Поясню на примере. Многие сетевые приложения поставляются вкупе с собственными языками сценариев и оболочками разработки. В прошлом у корпоративных разработчиков практически не было выбора и им приходилось делать инвестиции в навыки, специфические для используемого продукта, поскольку общие для компьютерной индустрии стандарты, на которые могли бы опираться подобные инструменты, отсутствовали. Но сегодня широкий круг поставщиков поддерживает Java, JavaScript и Visual Basic, предоставляя больше возможностей для выбора, и вам пора начать ими пользоваться.
Не менее важно то, что инструменты для использования этих средств, такие, как Visual Cafe корпорации Symantec и IntraBuilder фирмы Borland, не привязаны ни к одной из серверных или клиентских платформ.
ПРАВИЛЬНЫЕ ВЛОЖЕНИЯ
Вложение средств в инструменты, специфические для поставщика или продукта, например LotusScript в Notes, означает не просто замыкание вашего приложения в конкретной среде. Это означает, что и разработчик будет привязан к этой среде, что затруднит переход к другим продуктам. В то же время своевременные вложения в развивающуюся среду разработки intranet-приложений могут обогатить отделы ИТ опытом, который, в отличие от прежних времен, применим ко многим инструментам и продуктам, выпускаемым гораздо более широким кругом поставщиков. И это в конечном счете позволит сэкономить средства при переходе с одних серверных и клиентских платформ на другие.
Независимо от того, какими инструментальными средствами вы пользуетесь, переносимость приложения - даже Java-аплета - зависит от многих факторов. Да, можно написать приложение, “приведенное к общему знаменателю”, используя только функции, поддерживаемые всеми реализациями Java. Но может статься, что такой подход не будет отвечать специфическим требованиям к корпоративному приложению. Возможно, вам потребуется задействовать частные средства платформы, на которой выполняется приложение, - собственно, ради этих средств вы и покупали платформу. Поступив подобным образом, вы сделаете ваше приложение платформно-зависимым, и это ограничит его переносимость.
Однако если опыт разработчиков, необходимый для создания приложений, легко переносится на новые продукты, которые вы, возможно, захотите использовать в будущем, влияние подобных факторов можно свести к минимуму.
Следовательно, переносимость инструментов и навыков, в которые вы вкладываете средства, столь же важна, как и переносимость написанных вами приложений.
Джейми Льюис
Джейми Льюис - президент The Burton Group, компании, специализирующейся на исследовании новых сетевых компьютерных технологий. Обратиться к нему можно по адресу: jlewis@tbg.com.