| Свежий номер №22 (447) / Чтоб созданное все сводить на .NET Дата публикации: 10.06.2002 Андрей Драница, Andrey.Dranitsa@mstu.edu.ru Сложилась довольно интересная ситуация. С одной стороны, предприятия накапливают и худо-бедно используют информацию. А с другой - внешние структуры (филиалы, поставщики, клиенты) оказываются от этой информации отрезанными. Отчасти проблема решается с помощью CRM, B2B, SCM и тому подобных систем, но для каждого «нового» вида информации или действия приходится «придумывать» и реализовывать новую схему. Естественно, что с течением времени и число таких систем, и объем информации в них растет, порождая новые проблемы - совместимости, переноса из системы в систему, совместного использования и многие другие. Как ни странно, разорвать этот порочный круг могла бы новая технология, изначально «заточенная» не только для обработки, но и для доставки информации, а также взаимодействия в разнородной среде. В принципе, Microsoft .Net и является такой концепцией - объединяющей с помощью XML различные приложения, которые обеспечивают взаимодействие между компаниями, и высвобождающей информацию. По сути, это набор инициатив (технологий, протоколов, стандартов, средств разработки и т. д.), призванный «объединить все со всем» на базе так называемых интеллектуальных веб-служб 1. Зачем это нужно потребителю? Как правило, предлагая ту или иную веб-технологию, компания-разработчик ориентируется прежде всего на тех, кто связан с разработкой и внедрением ПО, а для конечного пользователя кардинально ничего не меняется - ну разве что могут появиться более удобные и быстрые приложения. В данном случае, возможно, изменения будут носить более «революционный» характер. Возьмем для примера простейшую ситуацию - покупку книги через Интернет. Обычно это происходит так:
А вот как будет выглядеть такой же процесс в недалеком (надеюсь) будущем:
Плюсы очевидны: во-первых, единовременная регистрация; во-вторых, гораздо менее рутинный поиск (наверняка появятся глобальные системы поиска по магазинам, благо информация о товарах будет стандартизирована) 2. Зачем это нужно бизнесу? Бизнес вынужден подстраиваться к тому, что в инфраструктуру .Net-приложений вовлекается всё больше пользователей. Но даже если не брать в расчет «вынужденность», новая концепция приносит новые возможности и порождает новые виды бизнеса. Например, возникает перспектива появления информационных порталов - централизованных служб по извлечению и доставке информации. Вместо того чтобы подписываться на новости с десятка сайтов, а еще десяток посещать лично, вы становитесь клиентом такого портала. Помимо централизованного управления «желанным спамом», веб-служба портала может делать целый ряд полезных вещей: к примеру, находить среди новинок произведения одного автора или книги определенной тематики и информировать об этом, а при наличии той или иной книги в нескольких магазинах сообщать, в каком из них минимальна цена или срок доставки. Вдобавок со специализированных сайтов вам перешлют рецензии на книгу. Подобные порталы могут быть бесплатными, существуя на проценты с продаж или ставку, взимаемую за представление информации с продавцов.
Чем это грозит разработчику? Предполагается, что разработчиков, вставших на путь внедрения .Net, больше не будут волновать проблемы интеграции приложений. .Net обеспечивает инфраструктуру взаимодействия, а Интернет служит средством коммуникации и объединения прикладных служб различных производителей. Единственное препятствие на этом пути - необходимость прибегнуть к новым средствам разработки. Роль инструментария на платформе Windows отведена Visual Studio .Net, в комплект поставки которого войдут средства создания, развертывания и сопровождения как локальных, так и распределенных веб-приложений масштаба предприятия. Связующим звеном, позволяющим интегрировать различные приложения, является XML. Visual Studio .Net включает средства программирования, основанные на XML, которые обеспечат интеграцию без необходимости изучения последнего. Более того, конкретный язык программирования тоже не является чем-то определяющим. В настоящий момент создание .Net-приложений в равной степени возможно на Visual Basic, C++, C#, Visual FoxPro и JavaScript. В ближайшее время предвидится портирование Cobol и Eiffel, а в будущем возможен перенос на .NET-платформу и других языков. Принцип функционирования .Net-приложения в чем-то схож с Visual Basic и Java 3. Приложение компилируется в промежуточный байт-код (в оригинале IL - intermediate language) а затем «виртуальная .Net-машина» 4 исполняет его 5. Microsoft позиционирует С# как универсальную переносимую платформу, каковой сейчас считается Java. Предполагается, что, портировав «виртуальную .Net-машину» на различные платформы, удастся добиться почти невозможного - работы одних и тех же приложений без перекомпиляции не только на платформе Windows, а, например, на Mac OS X или Linux. Последнее может стать реальностью уже в ближайшем будущем - компания Ximian, специализирующаяся на проектировании пользовательских интерфейсов под Linux, работает над Linux-версией платформы Microsoft .Net - Ximian Mono Project, которая позволит создавать .Net -совместимые приложения и выполнять приложения .Net, изначально написанные для Windows. Исходные коды будут, разумеется, открытыми. В заключение хотелось бы сказать пару слов о «взаимоотношениях» Java и .Net. Безусловно, эти технологии имеют много общего, и вполне возможно, что одной из причин, побудивших Microsoft выпустить .Net, были многочисленные препирательства с Sun, упорно не желавшей идти на компромисс. В конце концов, у Microsoft, как чисто софтверной компании, есть гораздо больше причин для подобной инициативы, обещающей стать основным направлением развития веб-технологий на ближайшие годы.
Напомним, что полтора года назад судебным решением Microsoft выплатила Sun компенсацию в 20 млн. долларов и лишилась права использовать в своих продуктах торговую марку «Java Compatible». Тем не менее, Microsoft продолжает поддержку языка Java, преимущественно в рамках программы JUMP - миграции в собственные языки C# и J#, при этом перекрывая Sun каналы распространения Java: пример тому - изъятие виртуальной машины Java из Windows XP. Уже сегодня разработчикам систем управления предприятиями приходится принимать серьезное решение о выборе дальнейшего пути развития - выборе между .NET и платформой Java 2 Enterprise Edition (J2EE). И аналитики прогнозируют, что ближайшие годы пройдут под знаком все более явственного разделения Интернета, и особенно электронного бизнеса, на .NET и J2EE. Назвать однозначного победителя в этой игре пока не представляется возможным. Вместе с тем хочется надеяться, что компания учтет ошибки производителей, к примеру, различных видов DVD-приводов, и .Net не превратится в поле для очередной бесконечной склоки. 1 (обратно к тексту) - Интеллектуальная веб-служба - это совокупность технологий, которая позволяет обмениваться информацией и выполнять какие-либо действия через Web. При этом учитывается контекст, то есть конкретная ситуация, в которой находится выполняющий запрос пользователь. 2 (обратно к тексту) - Подобный механизм можно реализовать уже сейчас на базе HailStorm и некоторых других сервисов. 3 (обратно к тексту) - Но есть и отличия:
5 (обратно к тексту) - По этой причине для написания наиболее эффективных локальных приложений по-прежнему рекомендуется использовать Visual C++.
|