Создадим первую программу на языке C#. Что для этого нужно? Прежде всего для написания кода программы нам понадобится текстовый редактор. В принципе можно выбрать любой понравившийся текстовый редактор, например, встроенный в Windows по умолчанию блокнот. Но я в данном случае буду ориентироваться на более изощренный текстовый редактор Visual Studio Code. Данный текстовый редактор доступен для всех основных операционных систем: Windows, MacOS, Linux. Он доступен по ссылке загрузить Visual Studio Code

Второй необходимый компонент для создания программ — компилятор. Для компиляции, построения, запуска и ряда других задач Microsoft предоставляет набор инструментов, который называется .NET SDK. .NET SDK является кроссплатформенным и доступен для всех основных операционных систем и основных архитектурных платформ.
Для установки .NET SDK под под различные системы — Windows, MacOS, Linux можно использовать специальные пакеты установки, которые можно загрузить с официального сайта по ссылке https://dotnet.microsoft.com/en-us/download.

Страница автоматически отображает варианты SDK под текущую операционную систему пользователя. На данный момент страница загрузок предоставляет последнюю версию .NET SDK — 10-ю версию. Собственно для целей изучения и рекомендую использовать самую последнюю версию — на данный момент это .NET 10, которая включает в себя все самые последние возможности и улучшения. Хотя при необходимости можно установить различные версии .NET. А на странице https://dotnet.microsoft.com/en-us/download при необходимости можно найти все возможные варианты SDK под различные архитектуры и системы.
Установка под Windows
С установкой под Windows все просто — загружаем со стартовой страницы установщик .NET SDK и запускаем его:

Установка под MacOS
Аналогично проста установка под MacOS — также загружаем со страницы https://dotnet.microsoft.com/en-us/download установщик .NET SDK и запускаем его:

Установка на Linux
Для операционных систем на базе Linux также можно использовать разные методы установки: установить через пакетный менеджер, установить вручную или с помощью скрипта. Рассмотрим самый простой способ — установки через пакетный менеджер. Так, для установки .NET SDK 10.0 на ОС Ubuntu и Debian через пакетный менеджер apt надо выполнить следующую команду
sudo apt-get update && sudo apt-get install -y dotnet-sdk-10.0
Следует учитывать, что более ранние версии Ubuntu/Debian могут не иметь в репозиториях пакета с самой последней версией .NET. Например, в официальных репозиториях Ubuntu для более раниих версий пакет.NET 10.0 не доступен. Зато он доступен в репозиториях компании Microsoft. Поэтому перед загрузкой .NET 10 надо добавить соответствующие репозитории Microsoft с помощью команды:
sudo add-apt-repository ppa:dotnet/backports
и затем собственно устанавливать .NET SDK 10.0.
Для установки на Fedora через пакетный менеджер dnf применяется команда
sudo dnf install dotnet-sdk-10.0
На других системах на базе Linux могут применяться другие пакетные менеджеры.
Также в качестве альтернативы можно загрузить пакет бинарных файлов для определенной системы со страницы https://dotnet.microsoft.com/en-us/download/dotnet/10.0, распаковать в определенное место на жестком диске и добавить путь к папке к утилите dotnet внутри этого распакованного пакета в переменную окружения PATH. Например, если пакет файлов фреймворка распакован в папку «/home/[имя_пользователя]/dotnet-sdk-10.0.100», то для текущей сессии терминала мы можем добавить путь к фреймворку следующим образом:
export PATH=$HOME/dotnet-sdk-10.0.100:$PATH
Проверка установки .NET
После установки, чтобы убедиться, что все установлено и настроено правильно, мы можем проверить версию .NET, выполнив в командной строке/консоли команду dotnet —version:
C:\Users\eugen>dotnet --version 10.0.100 C:\Users\eugen>
На одной машине может быть установлено одновременно несколько версий .NET SDK. Для проверки установленных версий можно использовать команду dotnet —list-sdks:
C:\Users\eugen>dotnet --list-sdks 8.0.110 [C:\Program Files\dotnet\sdk] 9.0.101 [C:\Program Files\dotnet\sdk] 10.0.100 [C:\Program Files\dotnet\sdk] C:\Users\eugen>
Создание первой программы на C#
И после установки .NET SDK мы можем начать свою славную поступь в прекрасный мир программирования на C#. Создадим первый проект. Для этого будем использовать набор консольных утилит .NET CLI.
И вначале создадим каталог для проектов на .NET (вручную или с помощью команды mkdir). Пусть каталог будет dotnet и будет располагаться в текущей папке пользователя. Откроем терминал и перейдем к этому каталогу с помощью команды cd.
C:\Users\eugen>mkdir dotnet C:\Users\eugen>cd dotnet C:\Users\eugen\dotnet>
Для создания проекта в .NET CLI применяется команда dotnet new, которой передается тип проекта. Мы будем создавать консольное приложение, поэтому будем использовать тип console. Итак, в введем в терминале следующую команду:
dotnet new console -o helloapp
В данном случае мы указываем, что создаваемый проект будет представлять консольное приложение (console), а с помощью опции -o можно указать название проекта. То есть проект будет называться helloapp. При выполнении команды консоль отобразит некоторую базовую информацию
C:\Users\eugen\dotnet>dotnet new console -o helloapp Шаблон "Консольное приложение" успешно создан. Идет обработка действий после создания... Восстановление C:\Users\eugen\dotnet\helloapp\helloapp.csproj: Определение проектов для восстановления... Восстановлен C:\Users\eugen\dotnet\helloapp\helloapp.csproj (за 1,01 sec). Восстановление выполнено. C:\Users\eugen\dotnet>
После выполнения этой команды в папке helloapp будет создан проект с минимальным набором стандартных файлов и папок.

В частности, мы можем найти в папке проекта файл helloapp.csproj. Это главный файл проекта, который определяет его конфигурацию. Мы можем открыть его в любом текстовом редакторе, просмотреть и при необходимости изменить.
И, кроме того, по умолчанию создается главный файл программы Program.cs со следующим содержимым:
| 12 | // See https://aka.ms/new-console-template for more informationConsole.WriteLine("Hello, World!"); |
Соответственно, если нам надо внести изменения в исходный код программы, то мы будем изменять содержимое именно этого файла.
В принципе этот минимальный проект уже можно запускать. Для запуска проекта перейдем в консоли в папку проекта helloapp и для выполнения программы введем в консоли команду dotnet run:
C:\Users\eugen\dotnet> cd helloapp C:\Users\eugen\dotnet\helloapp>dotnet run Hello, World! C:\Users\eugen\dotnet\helloapp>
После выполнения команды в проекте в папке bin\Debug\net9.0 появятся файлы программы (на windows файлы helloapp.dll и helloapp.exe), которые можно вручную запустить на компьютере, где установлен .NET 9.

Теперь изменим весь код программы. Для этого откроем файл Program.cs в каком-нибудь текстовом редакторе и изменим его код на следующий:
| 123 | Console.Write("Введите свое имя: ");var name = Console.ReadLine(); // вводим имяConsole.WriteLine($"Привет {name}"); // выводим имя на консоль |

По сравнению с автоматически сгенерированным кодом я внес несколько изменений. Теперь первой строкой выводится приглашение к вводу.
| 1 | Console.Write("Введите свое имя: "); |
Метод Console.Write() выводит на консоль некоторую строка. В данном случае это строка «Введите свое имя: «.
На второй строке определяется строковая переменная name, в которую пользователь вводит информацию с консоли:
| 1 | var name = Console.ReadLine(); |
Ключевое слово var указывает на определение переменной. В данном случае переменная называется name. И ей присваивается результат метода Console.ReadLine(), который позволяет считать с консоли введенную строку. То есть мы введем в консоли строку (точнее имя), и эта строка окажется в переменой name.
Затем введенное имя выводится на консоль:
| 1 | Console.WriteLine($"Привет {name}"); |
Чтобы ввести значение переменной name внутрь выводимой на консоль строки, применяются фигурные скобки {}. То есть при выводе строки на консоль выражение {name} будет заменяться на значение переменной name — введенное имя.
Однако чтобы можно было вводить таким образом значения переменных внутрь строки, перед строкой указывается знак доллара $.
Теперь протестируем проект, запустив его на выполнение с помощью команды dotnet run:
C:\Users\eugen\dotnet\helloapp>dotnet run Введите свое имя: Евгений Привет Евгений C:\Users\eugen\dotnet\helloapp>