Microsoft теперь имеет .Чистые ядра .Net фреймворка и Xamarin (Mono) в его .Чистая семья.
Там, кажется, много общего. Что's разница между этими типами .Чистая? Когда я должен выбрать, чтобы использовать .Объем ядра в моем проекте, а не .Чистые рамки или Xamarin?
Вы должны использовать .Объем ядра, вместо .Чистые рамки или Xamarin, в следующие 6 типичных сценариях согласно документации [здесь][1].
1. Кросс-платформенный должен
ясно, если ваша цель иметь приложение (веб-сервис), которые должны уметь работать на разных платформах (ОС Windows, Linux и macOS), лучший выбор .Чистая экосистемы является использование .Чистая ядра, время их выполнения (CoreCLR) и библиотеки кроссплатформенны. Другой вариант заключается в использовании проект моно. оба варианта имеют открытый исходный код, но .Объем ядра прямо и официально поддерживаются корпорацией Майкрософт и будет иметь значительных инвестиций движется вперед. при использовании .Объем ядра на разных платформах, лучший опыт развития существует в Windows с помощью Visual Studio интегрированная среда разработки, которая поддерживает множество функций для повышения производительности, включая управление проектами, отладки, контроля версий, рефакторинг, широкие возможности редактирования включая IntelliSense, тестирование и многое другое. Но богатый развития также поддерживается с помощью Visual Studio кода на Mac, Linux и Windows, в том числе IntelliSense и отладки. Даже редакторы третьих лиц, как Sublime, Emacs и VI, и больше работы хорошо и может сделать редактор с IntelliSense, используя открытый Omnisharp источник.
2. Микрослужб
когда вы строите микрослужб ориентированная система состоит из нескольких независимых микрослужб, динамически масштабируемый, отслеживанием состояния или нет, большое преимущество, что вы здесь, что вы можете использовать различные технологий/фреймворков/языков на уровне, конструирование. Что позволяет использовать оптимальный подход и технологии в микро-районах в вашей системе, так что если вы хотите построить очень производительную и масштабируемую микрослужб, вы должны использовать .Чистые ядра. В конце концов, если вам нужно использовать любой .Библиотека, которая не совместима с .Чистая ядра, нет ничего, вы можете строить, что конструирование с .NET и в дальнейшем вы сможете заменить его .Чистые ядра. инфраструктура платформы можно использовать много. В идеале, для больших и сложных систем микрослужб, вы должны использовать Azure структура Службы. Но для микросервисов без гражданства, вы также можете использовать другие продукты, такие как Служба приложений Azure или Azure функции. обратите внимание, что по состоянию на июнь 2016 год, не каждая технология в Azure поддерживает .Чистая ядра, но .Чистая основную поддержку в Azure будет резко растет, что .Чистая сердечник РТМ вышел.
3. Лучшие высокопроизводительных и масштабируемых систем
когда ваша система нуждается максимальную производительность и масштабируемость, поэтому вы получите лучшую отзывчивость независимо от того, сколько пользователей у вас есть, то где .Объем ядра и ASP.NET ядро действительно сиять. Чем больше вы можете сделать с таким же количеством инфраструктуры/оборудования, тем богаче опыт, который вы будете иметь для конечных пользователей при меньших затратах. дни закон Мура для улучшения производительности процессоров один не применяются; но вы должны сделать больше, пока ваш организм растет и нуждается более высокая масштабируемость и производительность для повседневных более требовательных пользователей, которые растут в геометрической прогрессии в цифрах. Вам нужно сделать более эффективной, оптимизировать везде, и лучше масштабируются по скоплениям машин, виртуальных процессорных ядер, в конечном счете. Это не просто вопрос удовлетворенности потребителя; она также может сделать огромную разницу в стоимости/стоимости владения. Вот почему важно стремиться к производительности и масштабируемости. как уже упоминалось, если вы можете изолировать мелкие кусочки вашей системы, как микрослужб или каких-либо других слабосвязанных подход, это будет лучше, так как вы сможете не просто развиваться каждый маленький кусочек/конструирование самостоятельно и имеют более долгосрочный ловкость и ремонт, но также вы сможете использовать любые другие технологии на конструирование уровне если то, что вам нужно сделать, это не совместимо с .Чистые ядра. И в конце концов ты сможешь переделать его и принести его .Чистая ядра, когда это возможно.
4. Развитие командного стиля линии для Mac, Linux или Windows.
этот подход является необязательным при использовании .Чистые ядра. Вы также можете использовать полный Visual Studio интегрированная среда разработки, конечно. Но если вы разработчик, который хочет развиваться с легким редакторы и интенсивное использование командной строки .Чистая Core разработана для CLI. Он предоставляет простые инструменты командной строки доступен для всех поддерживаемых платформ, позволяя разработчикам создавать и тестировать приложения с минимальной установки на разработчика, лаборатории или производственного оборудования. Редакторов, таких как Visual Studio кода использовать те же инструменты командной строки для их опытом развития. И как интегрированная среда разработки Visual Studio от использования тех же инструментов командной строки, но скрывать их за богатый опыт язь. Разработчики теперь могут выбирать уровень, они хотят взаимодействовать с цепи инструмент командной строки для редактора в IDE.
5. Нужно бок о бок .Net-версии на уровне приложения.
если вы хотите, чтобы иметь возможность устанавливать приложения с зависимостями на разных версиях рамки .Net, вам нужно использовать .Чистое ядро, которое обеспечивает 100% бок о бок, как описано ранее в этом документе.
6. В Windows 10 приложения Windows .Net-приложений.
Кроме того, вы можете также прочитать:
Это как Microsoft объясняет это:
.Net на находится в "полном" или "традиционные" и аромат .Net, который'ы распространяется с Windows. Используйте это, когда вы строите рабочего стола Windows или приложения UWP, или работают со взрослыми ASP.NET 4.6+.
.Чистая ядра является кросс-платформенным .Net, который работает на Windows, Mac и Linux. Используйте это когда вы хотите построить консоли или веб-приложения, которые могут работать на любой платформе, в том числе внутри контейнеров Docker. Это не относится к масштабированию/настольных приложений в настоящее время.
В Xamarin используется для создания мобильных приложений, которые могут работать на iOS, Android или Windows Phone устройства.
В Xamarin обычно работает поверх моно, которая является версией .Net, который был построен на кросс-платформенной поддержки, прежде чем Microsoft решила официально поступит кросс-платформы .Чистые ядра. Как Xamarin, платформа Unity также работает на моно.
Распространенное заблуждение, где основной ASP.NET подходит. ASP.NET ядро может работать на любой .Net платформа (Windows) или .Объем ядра (кросс-платформенный), как описано в этот ответ: разница между ASP.NET ядро (.Чистая ядра) и ASP.NET ядро (.Net фреймворка)
Вы можете обратиться в эту строку - https://stackoverflow.com/questions/37684508/difference-between-asp-net-core-net-core-and-asp-net-core-net-framework/37684644#37684644
В Xamarin не дискуссия вовсе. Когда вы хотите построить мобильный (iOS, Android и Windows Mobile) и приложений с использованием C#, Xamarin-это ваш единственный выбор.
На .Net фреймворка поддержка ОС Windows и веб-приложений. Сегодня, вы можете использовать формы Windows, WPF и UWP для разработки приложения под Windows .Чистые рамки. ASP.NET в MVC используется для построения веб-приложений .Чистые рамки.
.Объем ядра является новым открытым исходным кодом и кросс-платформенный фреймворк для создания приложений для всех операционных систем, включая Windows, Mac и Linux. .Чистая ядро поддерживает UWP и ASP.NET ядро только. UWP, который используется для создания Windows 10 для Windows и мобильных приложений. Основной ASP.NET используется для построения браузер на основе веб-приложений.
вы хотите более подробную информацию смотрите этой ссылки https://blogs.msdn.microsoft.com/dotnet/2016/07/15/net-core-roadmap/ https://docs.microsoft.com/en-us/dotnet/articles/standard/choosing-core-framework-server
.Чистая основные библиотеки классов построена на .Чистый Стандарт. .Чистый Стандарт можно делать только библиотеки классов проекта, которые не могут быть выполнены автономными и должны быть ссылки на другой .Объем ядра или .Объем структуры исполняемый проект.Если вы хотите реализовать библиотеку, которая является портативным с .Объем Структуры, .Основные чистые и в Xamarin выберите .Чистый Стандарт Библиотека
(вы можете сделать исполняемый проект (как консольное приложение, или ASP.NET приложений).Чистая рамки
Это является новым открытым исходным кодом и кросс-платформенный фреймворк для создания приложений для всех операционных систем, включая Windows, Mac и Linux.
осуществление поддержки .Чистый стандарт[синий] и минимальной жизнеспособной платформой для полной поддержки .Чистый стандартный (последний: [https://docs.microsoft.com/en-us/dotnet/standard/net-standard#net-implementation-support])
.Чистая ядра текущей версии .Net, который вы должны использовать прямо сейчас (больше функций , исправлены ошибки и т. д.)
Xamarin-это платформа, которая предоставляет решения для кросс-платформенный мобильное проблемы закодированы в C# , так что вы Дон'т должны использовать Свифт отдельно для iOS и для Android.
обновлена в мае 2019
вы должны использовать .Чистая ядра 3.0 и позже обновить до следующей версии .Чистая 5, все, что вам нужно-это лишь одна унифицированная платформа .Net5
там будет только один .Продажи шли вперед, и вы сможете использовать его для целевой >ОС Windows, ОС Linux, ОС macOS, iOS, андроид, tvOS, watchOS и WebAssembly и многое другое. https://devblogs.microsoft.com/dotnet/introducing-net-5/