Xamarin занял странное место в мире программистов .NET — тот факт, что он существовал, был захватывающим, но не полностью его частью. Теперь, когда Microsoft завершила покупку компании, она полностью является ее частью, и это немного сбивает с толку.
После столь долгого пребывания в своего рода сумеречной стране программное обеспечение Xamarin теперь полностью является частью Visual Studio. Он есть в каждом издании, включая бесплатное издание сообщества Visual Studio. Это означает, что Xamarin теперь можно свободно использовать для отдельных лиц, проектов с открытым исходным кодом, академических исследований и небольших команд. Что еще более важно, так это то, что, в то время как предыдущая бесплатная версия имела ограничения, предназначенные для того, чтобы убедиться, что вы купили лицензию, на продукт нет никаких ограничений — вы можете создавать приложения любого типа или размера, которые вы хотите, и вы можете ориентироваться на iOS или Android с помощью C# или F#.
Xamarin перемещает уже открытый исходный код Mono в .NET Foundation под лицензией MIT и открывает доступ к ранее запатентованным улучшениям среды выполнения Mono для мобильных устройств:
Порт ARM64 среды выполнения Mono
Обходные пути для ошибок в некоторых чипах ARM
Использование CommonCrypto от Apple для реализации крипто-классов в .ЧИСТЫЙ API
Интеграция с сертификатами X509 на платформах Apple
Поддержка “родных типов” на платформах Apple
Общий доступ к Типам общих значений
Инструмент смещения для поддержки кросс-компилятора
Все это приветствуется, но не удивительно. Что удивительно, так это обещание открыть исходный код остальной части мобильного API в будущем:
«В дополнение к этим важным шагам, мы объявляем сегодня о нашем обязательстве открыть исходный код SDK Xamarin для Android, iOS и Mac под лицензией MIT в ближайшие месяцы. Это включает в себя собственные привязки API и основные инструменты командной строки, необходимые для разработки мобильных приложений. Он также включает в себя наш популярный кроссплатформенный собственный инструментарий пользовательского интерфейса Xamarin.Формы.»
Похоже, что не только весь Xamarin будет свободен в использовании, чтобы узнать, насколько он хорош, вся платформа будет с открытым исходным кодом с несколькими исключениями, связанными с инструментами.
Это помещает технологию Xamarin прямо в основной мир .NET. Эта технология больше не является аутсайдером .NET, а официальным Microsoft .СЕТЕВАЯ технология. Теперь, когда вы открываете Visual Studio, вы можете писать, скажем, C# и создавать приложения для Android, iOS или Windows. Это кажется замечательным, но есть некоторые интересные проблемы и конфликты.
Если вы решите создавать приложения для iOS или Android, вы можете использовать формы Xamarin для своего пользовательского интерфейса, но Microsoft хочет, чтобы вы использовали универсальные приложения Windows для приложений Windows 10, включая Windows phone. Если вы хотите настроить таргетинг на Windows до Windows 10, вам необходимо использовать приложения WPF или Win32 Win Form. Кроме того, теперь у нас есть Mono и .NET core в качестве двух версий с открытым исходным кодом .NET.
Очевидно, что потребуется некоторая уборка дома и унификация всего этого кода. Нелогично и немного иронично, что вы можете использовать формы Xamarin для Android и iOS, но не для Windows Phone. Если Xamarin Forms действительно появится в Windows Phone, то он также будет работать в Windows 10 в целом, что делает его прямым конкурентом универсальным приложениям Windows.
Хорошо, что код Xamarin теперь является частью Microsoft .ЧИСТЫЙ мир, но на данный момент это очень запутанный, грязный и расточительный мир.