ЯЗЫКИ ПРОГРАММИРОВАНИЯ

С технологической точки зрения конкуренция Microsoft и сообщества поставщиков Open Source Software (OSS) идет по четырем основным программным направлениям: операционные системы, Web-серверы, СУБД и языки программирования. Соответственно на сегодняшний день OSS представлено на ИТ-рынке так называемым LAMP-стеком, который включает комбинацию из следующих ключевых компонентов: ОС Linux, Web-сервера Apache, СУБД MySQL и набора скриптовых языков, представленных сразу тремя P - PHP, Perl и Python.

По вполне понятным причинам по первым трем позициям LAMP корпорация Microsoft занимает фактически бескомпромиссную позицию, предлагая соответственно Windows, IIS и SQL Server. А вот с различными языками программирования архитектурная модель .NET Framework имеет общие точки соприкосновения. Так, почти одновременно с выходом первой версии .NET был выпущен вариант Perl для этой среды. А не так давно в стане .NET появился еще один представитель OSS - IronPython, реализованный на базе синтаксиса другого популярного в среде Open Source языка - Python (www.python.org).Python был создан в 1990 г. Гудо ван Россумом (Guido van Rossum), который тогда трудился в одном из голландских математических центров. Спустя пять лет он продолжил работу над этим языком в Corporation for National Research Initiatives (CNRI) в городке Рестон (США), а в 2000 г. команда разработчиков под его руководством перешла в компанию BeOpen.com, где вскоре выпустила версию Python 2.0.

Python относится к быстро набирающей в последние годы популярность категории динамических языков программирования, позволяющих вносить изменения в структуру программы (например, добавлять и удалять функции, классы и модули), не прерывая процесса ее выполнения. Упрощенно говоря, в нем реализован принцип классического языка-интерпретатора - хорошо забытое старое, выполненное на современном технологическом уровне.

Стандартная реализация Python включает интерактивную консоль, которая дает возможность разработчику вводить команды и сразу видеть результаты их выполнения. Правда, тут стоит вспомнить, что именно так действовал и вышедший в 1964-м Бейсик. Но если тогда, сорок лет назад, Бейсик создавался для реализации простых математических вычислений начинающими программистами, то Python (как и другие современные динамические языки) ориентирован на профессионалов, которым нужно оперативно разрабатывать и управлять сложными программными решениями.

При этом следует отметить его высокую эффективность при работе со строковыми переменными и то, что стандартная библиотека языка содержит широкий спектр функций, типов, описаний и констант. В Интернете можно найти много примеров кода, в том числе для автоматизации задач в Word и Excel, взаимодействия с Active Directory и с Windows Management Interface (WMI). Простой синтаксис Python позволяет даже начинающим программистам быстро осваивать базовые концепции объектно-ориентированного программирования и создавать достаточно сложные программные решения. С его помощью реализован целый ряд коммерческих продуктов как за рубежом, так и в нашей стране.

Интерактивная консоль IronPython обеспечивает доступ ко всем функциям конкретного программного модуля

С середины 90-х годов прошлого столетия развитие скриптовых языков шло в основном под знаменем их применения при создании серверных Web-приложений. Однако сейчас повышение интереса к ним связано во многом с решением широкого круга задач автоматизации управления вычислительными системами в целом (т. е. они как бы вернулись к своему начальному применению - настройка локальных приложений - на качественно более высоком уровне).

Первая версия IronPython была продемонстрирована на конференции PyCON в марте 2004 г. Ее автор Джим Хугунин (Jim Hugunin), который к тому времени уже был известен созданием подмножества языка JPython/Jython, представил полную семантическую реализацию Python на базе Common Language Runtime 1.1 как для Microsoft .NET, так и платформы Mono. Сейчас Джим Хугунин, уже являясь сотрудником Microsoft, закончил разработку IronPython версии 0.7.5, которая совместима с .NET Framework 2.0 (эта операционная среда будет официально выпущена в ноябре 2005 г.). Проект выполняется в Microsoft в рамках создания Longhorn (Windows следующего поколения) и связанных с ней технологий, в частности презентационного слоя Avalon.

В заключение отметим, что, отрицая для себя бизнес-модель Open Source, корпорация Microsoft совсем не отвергает возможность использования технологических идей OSS в своих интересах, привлекая к работе известных специалистов из конкурирующего стана. Так, в составе компании некоторое время назад была сформирована группа Linux & Open Source Software, которую возглавляет Билл Хилф (Bill Hilf), ранее занимавшийся Linux-стратегией в IBM. В июне в эту команду Microsoft пришел также Даниэл Робинс (Daniel Robbins), основатель и руководитель фирмы Gentoo Linux - заметного игрока сегмента Linux. Объясняя этот свой шаг, господин Робинс сказал, что пришел в Microsoft, чтобы "помочь корпорации лучше понять концепцию Open Source и подходы к реализации проектов сообществом разработчиков (community-based project)".

Найти ссылки о Python на сайте Microsoft можно на поисковой странице: www.microsoft.com/technet/scriptcenter/scripts/python/pyindex.mspx.