Технологии Microsoft для разработчиков сегодня и завтра
В последнее время появилось много принципиально новых подходов к архитектуре приложений, равно как и технологий, реализующих эти подходы, и инструментов, поддерживающих данные технологии. Так, мы уже писали о предложенной Microsoft технологии реализации модели вычислений в «облаке» и о поддержке их в ее инструментах. Подробнее об этой и других новых технологиях Microsoft, которые будут доступны разработчикам в ближайшее время, мы попросили рассказать Мэтта Картера, менеджера по продуктам семейства Visual Studio Professional корпорации Microsoft.
КомпьютерПресс: Не могли бы вы перечислить новые технологии Microsoft в области разработки приложений, которые станут доступны в течение ближайших года-двух?
Мэтт Картер: В ближайшие годы станет доступно много новых технологий, как ранее неизвестных, так и являющихся результатом эволюции уже существующих. Например, анонсированы и вскоре будут доступны платформа Windows Azure, реализующая концепцию вычислений в «облаке», новая версия .NET Framework и новая версия Visual Studio 2010, которая будет рассчитана на применение перечисленных технологий. Отметим также две важные платформы, которые станут доступны в относительно недалеком будущем, — это Windows 7 и следующая версия Azure.
КП: Что интересного найдут разработчики в Visual Studio 2010?
М.К.: В первую очередь отметим, что Visual Studio 2010 будет содержать новые средства управления жизненным циклом разработки, позволяющие сделать этот процесс более эффективным и продуктивным. Кроме того, данный инструмент будет поддерживать перечисленные выше платформы нового поколения, а также создание веб-приложений с развитым пользовательским интерфейсом (Rich Internet Applications).
КП: Мы знаем, что в Visual Studio 2008 включены средства создания приложений на основе Microsoft Office. Однако генерация документов Microsoft Office нужна не только в приложениях, созданных с помощью этого инструмента, — такие задачи часто стоят и перед разработчиками, применяющими другие технологии, например перед Java-разработчиками. Что делает Microsoft для таких разработчиков?
М.К.: Мы сделали самое лучшее, что вообще можно было сделать, — создали открытый стандарт для офисных документов, основанный на XML, и тем самым обеспечили их интероперабельность. Теперь у любого разработчика, какие бы технологии он ни использовал, появится возможность создавать приложения с применением платформы Microsoft Office. Тем не менее в первую очередь мы сосредоточены на поддержке Visual Studio как лучшей среды для создания таких приложений.
Помимо решений, применяющих генерацию и чтение документов, не будем забывать и о решениях на основе сервера SharePoint — для создания подобных решений Visual Studio подходит как нельзя лучше, позволяя решать эту задачу очень быстро за счет применения удобной среды. Да и для конечного пользователя такие решения очень удобны — ведь он работает в привычной ему среде Microsoft Office.
Мы делаем многое для того, чтобы среда разработки Visual Studio 2010 не только была удобной, но и поддерживала перечисленные выше технологии, особенно платформу Microsoft Office текущей и последующей версий как в 32-, так и в 64-разрядных приложениях. В связи с этим хочу отметить, что Visual Studio 2010 предоставляет технологии развертывания одного и того же пакета на клиентах разных типов.
КП: Каковы, на ваш взгляд, перспективы развития платформы Azure?
М.К.: Платформа Azure удовлетворяет самым современным требованиям корпоративных клиентов, позволяя им создавать приложения как в среде Windows Server на территории компании, так и в «облаке». Мы рассматриваем платформу Azure как важный компонент, который дает возможность создавать решения в «облаке», и сосредоточили свои усилия на развитии ее функциональности. С точки зрения перспектив ее дальнейшего развития очень важно добиться того, чтобы компании могли получить важные преимущества от возможностей и мощности платформы и чтобы при этом создание решений для этой платформы выглядело как обычная разработка приложений в Visual Studio для среды Windows Server. Это позволит быстро принять решение, нужно ли создавать приложение локально или в «облаке», и рассматривать его как тактическое.
КП: Что представляет собой «облако» с технической точки зрения? Используются ли в этой платформе технологии виртуализации?
М.К.: Облако — это набор разных технологий, в том числе и технологий виртуализации, и способов предоставления ресурсов в реальном времени. В связи с этим замечу, что при разработке платформы Azure мы уделяем особое внимание поддержке и настройке ее компонентов, чтобы обеспечить все, о чем может беспокоиться разработчик. Когда будет выпущена окончательная версия платформы Azure, разработчики смогут использовать всю ее функциональность при создании приложений с помощью Visual Studio.
КП: Как будет выглядеть в Visual Studio поддержка Azure?
М.К.: Как я уже говорил, отличия от разработки обычных Windows-приложений будут невелики. Разработчикам будут доступны соответствующие шаблоны приложений в составе Visual Studio 2010, а также руководства по созданию таких приложений. Шаблоны приложений для платформы Azure содержат и описание их развертывания. Windows Azure SDK имеет в своем составе специальные инструменты, которые позволяют отлаживать и запускать приложения на локальном компьютере разработчика.
КП: В последнее время в Microsoft много говорят о разработке, управляемой тестированием. Как подобный подход, равно как и поддержка этой концепции в ожидаемой версии Visual Studio, повлияют на процессы и правила разработки приложений? Изменятся ли, например, требования к квалификации специалистов по тестированию?
М.К.: Это во многом зависит от организации и модели разработки приложений, от того, насколько эффективно компания-разработчик использует роли, шаблоны приложений, лучшие практики и возможности платформы. Наше дело — предоставить инструмент, а вносить изменения в роли — дело компании-разработчика. Новые возможности инструмента и новые концепции не налагают никаких ограничений на работу команды разработчиков, но, если необходимо, в ней можно пересмотреть роли с целью наиболее эффективного применения новых возможностей инструмента.
КП: Какие новшества будут доступны пользователям Visual Studio 2010 в области управления жизненным циклом разработки приложений?
М.К.: Средство управления жизненным циклом разработки приложений Visual Studio Team System доступно и пользователям предыдущей версии этого продукта. Из ожидаемых новшеств в первую очередь отметим средства управления загрузкой и доступом к выполняющимся приложениям. Обычно архитекторы, разработчики и специалисты по тестированию не обладают всей нужной информацией о работе приложения, поскольку оно выполняется отдельно от среды разработки. В новой версии Visual Studio мы можем предоставить перечисленным категориям специалистов все данные о том, как работало тестируемое приложение, в том числе и видеоданные, так что разработчик может видеть, что именно происходило с приложением, как оно использовалось, и получить более достоверную и полную информацию, нужную для исправления дефектов.
КП: Как решаются проблемы распределенной разработки с помощью Visual Studio Team System?
М.К.: Visual Studio Team System предоставляет определенный поток работ (workflow), в котором передаются захваченные данные о работе приложения. При этом поддерживаются известные технологии виртуализации (HyperV и VMware), позволяющие создавать различные сценарии тестирования.
В целом отмечу, что мы делаем все для того, чтобы коллективная разработка приложений, в том числе и территориально распределенная, выполнялась с помощью Visual Studio Team System легко и эффективно.
КП: Большое спасибо за интересную беседу! Удачи вам в создании новых технологий и инструментов для разработчиков.
Интервью вела Наталия Елманова
Windows Azure — это высокомасштабируемая платформа для внедрения веб-приложений, являющаяся реализацией концепции «облака» (иногда по отношению к ней употребляют словосочетание «Windows in the cloud») и обеспечивающая хранение данных и выполнение приложений на серверах центров обработки данных Microsoft. Возможность переноса приложений в «облако» предоставляет выбор между размещением локально, в «облаке» или в гибридной модели (когда только часть функций приложения реализуется с помощью интернет-сервисов) и тем самым позволяет сократить затраты на аппаратное обеспечение и обслуживание приложений. Microsoft рассчитывает, что компании заинтересуются подобной архитектурой по разным причинам, таким как обеспечение надежности и защиты данных, преодоление проблем, связанных с ограничениями в законодательстве разных стран, упрощение развертывания приложений и обеспечение доступа к ним из разных мест. |