Язык программирования C#9 и платформа .NET5
"stopAtEntry": false},{"name": ".NET Core Attach","type": "coreclr","request": "attach","processId": "${command:pickProcess}"}]}Документация по .NET Core и C#
Документация .NET Core и C# представляет собой исключительно хороший, понятный и насыщенный полезной информацией источник. Учитывая огромное количество предопределенных типов .NET (их тысячи), вы должны быть готовы засучить рукава и тщательно исследовать предлагаемую документацию. Вся документация от Microsoft доступна по ссылке
.https://docs.microsoft.com/ru-ru/dotnet/В первой половине книги вы будете чаще всего использовать документацию по C# и документацию по .NET Core, которые доступны по следующим ссылкам:
https://docs.microsoft.com/ru-ru/dotnet/csharp/https://docs.microsoft.com/ru-ru/dotnet/fundamentals/Резюме
Цель этой главы заключалась в том, чтобы предоставить информацию по настройке вашей среды разработки с комплектом .NET 5 SDK и исполняющими средами, а также провести краткий экскурс в Visual Studio 2019 Community Edition и Visual Studio Code. Если вас интересует только построение межплатформенных приложений .NET Core, то доступно множество вариантов. Visual Studio (только Windows), Visual Studio для Mac (только Mac) и Visual Studio Code (межплатформенная версия) поставляются компанией Microsoft. Построение приложений WPF или Windows Forms по-прежнему требует Visual Studio на компьютере с Windows.
Часть II
Основы программирования на C#
Глава 3
Главные конструкции программирования на С#: часть 10
В настоящей главе начинается формальное изучение языка программирования C# за счет представления набора отдельных тем, которые необходимо знать для освоения инфраструктуры .NET Core. В первую очередь мы разберемся, каким образом строить объект приложения, и выясним структуру точки входа исполняемой программы, т.е. метода
, а также новое средство C# 9.0 — операторы верхнего уровня. Затем мы исследуем фундаментальные типы данных C# (и их эквиваленты в пространстве именMain()), в том числе классыSystemиSystem.String.System.Text.StringBuilderПосле ознакомления с деталями фундаментальных типов данных .NET Core мы рассмотрим несколько приемов преобразования типов данных, включая сужающие и расширяющие операции, а также использование ключевых слов
иchecked.uncheckedКроме того, в главе будет описана роль ключевого слова var языка С#, которое позволяет неявно определять локальную переменную. Как будет показано далее в книге, неявная типизация чрезвычайно удобна (а порой и обязательна) при работе с набором технологий LINQ. Глава завершается кратким обзором ключевых слов и операций С#, которые дают возможность управлять последовательностью выполняемых в приложении действий с применением разнообразных конструкций циклов и принятия решений.
Структура простой программы C#
Язык C# требует, чтобы вся логика программы содержалась внутри определения типа (вспомните из главы 1, что тип — это общий термин, относящийся к любому члену из множества {класс, интерфейс, структура, перечисление, делегат}). В отличие от многих других языков программирования создавать глобальные функции или глобальные элементы данных в C# невозможно. Взамен все данные-члены и все методы должны находиться внутри определения типа. Первым делом создадим новое пустое решение под названием
, которое содержит проект консольного приложения по имениChapter3_AllProject.sln.SimpleCSharpAppВыберите в Visual Studio шаблон Blank Solution (Пустое решение) в диалоговом окне Create a new project (Создание нового проекта). После открытия решения щелкните правой кнопкой мыши на имени решения в окне Solution Explorer (Проводник решений) и выберите в контекстном меню пункт Add►New Project (Добавить►Новый проект). Выберите шаблон ConsoleАрр (.NET Core) (Консольное приложение (.NET Core)) на языке С#, назначьте ему имя
и щелкните на кнопке Create (Создать). Не забудьте выбрать в раскрывающемся списке Target framework (Целевая инфраструктура) вариант .NET 5.0.SimpleCSharpAppВведите в окне командной строки следующие команды:
dotnet new sin -n Chapter3_AllProjectsdotnet new console -lang c# -n SimpleCSharpApp-o .\SimpleCSharpApp -f net5.0dotnet sin .\Chapter3_AllProjects.sin add .\SimpleCSharpAppНаверняка вы согласитесь с тем, что код в первоначальном файле
не особо примечателен:Program.csusing System;namespace SimpleCSharpApp{class Program{static void Main(string[] args){Console.WriteLine("Hello World!");}}}Теперь модифицируем метод
классаMain()следующим образом:Programclass Program{static void Main(string[] args){// Вывести пользователю простое сообщение.Console.WriteLine("***** My First C# App *****);Console.WriteLine("Hello World!");Console.WriteLine();// Ожидать нажатия клавиши <Enter>, прежде чем завершить работу.Console.ReadLine();}}