Microsoft представила новый инструмент для разработчиков — .NET Core

Microsoft разделила платформу для разработчиков .NET, представив новый независимый продукт .NET Core. Менеджер по разработке программного обеспечения корпорации Иммо Ландверт (Immo Landwerth) пояснил, почему компания разделяет фреймворк, в том числе для различных продуктов Windows, а не только для Mac и Linux.

По его словам, платформа, выпущенная в 2002 году, работала на базе среды Common Language Runtime (CLR), которая выполняет код, написанный на таких языках, как C#, F# и Visual Basic, а также содержит широкий ряд библиотек и фреймворков, в том числе Base Class Library (BCL) для стандартных типов и функций ASP.NET и Windows Forms.

Microsoft постепенно выпускала новые версии .NET Framework и C#, чтобы охватить большее количество платформ, в том числе мобильных. Это, в свою очередь, вызвало проблемы для разработчиков, которым требовалось писать код для более чем одной платформы.

Ещё одной проблемой стало то, что компания время от времени меняла направление эволюции своих продуктов для разработки. Например, платформа Silverlight в одно время развивалась в сторону мобильных систем, в состав которой вошла кросплатформенная .NET — она поддерживалась в первой версии Windows Phone. Однако в Windows Phone 8 Microsoft отказалась от данной платформы в пользу независимой среды выполнения.

Разработчики получили частичную компенсацию этого осложнения в виде набора библиотек Portable Class Libraries (PCL). Однако это не решило проблем совместимости при разработке ПО для различных платформ, и многие программы пришлось создавать с нуля.

В ходе конференции для разработчиков Build был представлен проект Universal Apps, который, якобы, должен позволить создавать программы, работающие, как на Windows Phone, так и на Windows 8. Создатели программ получили возможность использовать один и тот же код для продуктов из разных платформ, но абсолютно идентичные исходники в мобильной и стационарной версии приложений всё равно не работают.

Станет ли .NET Core решением?

По словам Ландверта, в состав .NET Core входит модификация .NET Framework, а также новая унифицированная библиотека BCL с одинаковым кодом для всех платформ. Разрабатываемая сейчас ASP.NET 5, приложения Windows Store и открытый исходный код от .NET Foundation работают на .NET Core. Благодаря одинаковым библиотекам разработка программы для нескольких платформ должна оказаться простой задачей.

В .NET Core появилась новая модель разработки. Библиотеки предоставляются в виде пакетов NuGet, менеджера, который используется Visual Studio для импорта в проекты кода .NET.

Данный метод позволит импортировать отдельный код в уже готовые приложения, устраняя проблемы совместимости, однако его также трудно назвать идеальным. Разработчик столкнётся с проблемами, когда ему придётся вносить изменения в уже импортированный код. Также, в очередной раз, может подняться вопрос совместимости, хотя уже на более низком уровне — определённые компоненты при комбинации пакетов NuGet могут плохо работать вместе.

Выход .NET Core должен состояться не раньше конференции Build в 2015 году, до этого разработчикам придётся работать с существующими на сегодняшний день инструментами.

Источник:

Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.

Материалы по теме

Виджет от SocialMart

© 3DNews