Язык C # содержит спецификацию, а также эталонный компилятор Roslyn.
.Net-версия (4.8 или .net Core 3) представляет собой структуру (набор API), которая находится на управляемойвремя выполнения (CLR), которое выполняет скомпилированную программу (на промежуточном языке, тип ассемблерного кода).
Хотя в идеале язык C # не зависит от платформы и не зависит от среды и среды выполнения, за всю историю C # было разработано несколько основных функций языка, в которых текущие версии CLR не допускали эту функцию,или эта функция основывалась на типах более высокого уровня и дополнениях инфраструктуры (например, Async-Await в C # 5 и кортежи значений в определенной степени в C # 7).
В C # 8 такие языковые функции, как Asyncпотоки и диапазоны требуют новых типов каркаса, которые аналогично не существуют в текущих / более ранних версиях каркасов.Новые элементы интерфейса по умолчанию требуют изменений CLR.Таким образом, эти языковые функции (синтаксис) не будут компилироваться с более ранними версиями Framework и CLR.
В отличие от предыдущих языковых итераций, Microsoft не выпускает эти требования в новой версии .Net Framework 4.8.Вместо этого они выдвигают .Net Core 3.0 в качестве эталонной платформы, что позволяет им потенциально быстрее выполнять итерации.
В отношении Visual Studio, в то время как вы могли бы писать код на C # 8 в пределахБолее ранняя версия IDE и ее компиляция в среде выполнения .Net Core 3.0 позволят вам сэкономить на значительном количестве инструментов, простоте и удобстве для разработчиков.Инструменты для подсветки синтаксиса, завершения, исправлений кода и т. Д. Полагаются на Roslyn, который предоставляет богатые API для анализа кода.
Поскольку развертывание инфраструктуры и языков не синхронизировано идеально, использование предварительного просмотра в Visual Studio обеспечивает (в основном) совместимостьверсии фреймворка и языка для тестирования новых функций обоих.
Хорошим справочным материалом является раздел «Зависимости платформы» в блоге Building C # 8.0 .
Редактировать:
Чтобы ответить на вопрос комментария «Как устанавливается C # 8»: язык spec реализован и поставляется как компилятор (Roslyn).Пожалуйста, смотрите Roslyn GitHub репозиторий , в котором описывается, как компилятор собирается, выпускается и устанавливается - с определенной установкой Visual Studio или без нее.