Полное руководство по языку программирования С# 14 и платформе .NET 10 / Введение в C#

Первая программа на C# с .NET CLI

Начальный ⏱ 6 мин чтения 👁 5 🕓 обновлено 19.08.2026

Создадим первую программу на языке 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 со следующим содержимым:


// See https://aka.ms/new-console-template for more information
Console.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 в каком-нибудь текстовом редакторе и изменим его код на следующий:


Console.Write("Введите свое имя: ");
var name = Console.ReadLine();       // вводим имя
Console.WriteLine($"Привет {name}");    // выводим имя на консоль

По сравнению с автоматически сгенерированным кодом я внес несколько изменений. Теперь первой строкой выводится приглашение к вводу.

Console.Write("Введите свое имя: ");

Метод Console.Write() выводит на консоль некоторую строка. В данном случае это строка "Введите свое имя: ".

На второй строке определяется строковая переменная name, в которую пользователь вводит информацию с консоли:

var name = Console.ReadLine();

Ключевое слово var указывает на определение переменной. В данном случае переменная называется name. И ей присваивается результат метода Console.ReadLine(), который позволяет считать с консоли введенную строку. То есть мы введем в консоли строку (точнее имя), и эта строка окажется в переменой name.

Затем введенное имя выводится на консоль:

Console.WriteLine($"Привет {name}");

Чтобы ввести значение переменной name внутрь выводимой на консоль строки, применяются фигурные скобки {}. То есть при выводе строки на консоль выражение {name} будет заменяться на значение переменной name - введенное имя.

Однако чтобы можно было вводить таким образом значения переменных внутрь строки, перед строкой указывается знак доллара $.

Теперь протестируем проект, запустив его на выполнение с помощью команды dotnet run:


C:\Users\eugen\dotnet\helloapp>dotnet run
Введите свое имя: Евгений
Привет Евгений

C:\Users\eugen\dotnet\helloapp>

Проверь себя

📋 Тест по теме «Первая программа на C# с .NET CLI» Тест по теме

Практические задания

Лёгкое Ручная проверка Заполните пропуск в коде (1)
+10 XP

В приведённом ниже фрагменте кода из этого урока пропущено одно слово. Определите его и впишите в поле ответа (без кавычек и пробелов).

_____ apt-get update &&  sudo apt-get install -y dotnet-sdk-10.0
Войдите, чтобы отправить решение
Лёгкое Ручная проверка Заполните пропуск в коде (2)
+10 XP

В приведённом ниже фрагменте кода из этого урока пропущено одно слово. Определите его и впишите в поле ответа (без кавычек и пробелов).

sudo _____-apt-repository ppa:dotnet/backports
Войдите, чтобы отправить решение
Лёгкое Ручная проверка Заполните пропуск в коде (3)
+10 XP

В приведённом ниже фрагменте кода из этого урока пропущено одно слово. Определите его и впишите в поле ответа (без кавычек и пробелов).

sudo dnf _____ dotnet-sdk-10.0
Войдите, чтобы отправить решение
Лёгкое Ручная проверка Заполните пропуск в коде (4)
+10 XP

В приведённом ниже фрагменте кода из этого урока пропущено одно слово. Определите его и впишите в поле ответа (без кавычек и пробелов).

export PATH=$HOME/_____-sdk-10.0.100:$PATH
Войдите, чтобы отправить решение
Лёгкое Ручная проверка Заполните пропуск в коде (5)
+10 XP

В приведённом ниже фрагменте кода из этого урока пропущено одно слово. Определите его и впишите в поле ответа (без кавычек и пробелов).

C:\Users\eugen>dotnet --version
_____.0.100

C:\Users\eugen>
Войдите, чтобы отправить решение
Среднее Ручная проверка Восстановите код по памяти (1)
+20 XP

В этом фрагменте кода урока пропущены два ключевых элемента. Впишите оба пропущенных значения через запятую в порядке появления (например: x, 5).

sudo _____-get update &&  sudo apt-get install -y dotnet-sdk-_____.0
Войдите, чтобы отправить решение
Среднее Ручная проверка Восстановите код по памяти (2)
+20 XP

В этом фрагменте кода урока пропущены два ключевых элемента. Впишите оба пропущенных значения через запятую в порядке появления (например: x, 5).

sudo _____-apt-repository ppa:dotnet/backports
Войдите, чтобы отправить решение
Среднее Ручная проверка Расставьте строки кода в правильном порядке
+20 XP

Строки кода из примера этого урока перемешаны. Впишите их в правильном порядке, каждую строку — с новой строки.

C:\Users\eugen>
10.0.100
C:\Users\eugen>dotnet --version
Войдите, чтобы отправить решение
Сложное Ручная проверка Объясните и модифицируйте пример из урока «Первая программа на C# с .NET CLI»
+30 XP

Опишите своими словами, что делает приведённый пример кода из урока «Первая программа на C# с .NET CLI», и предложите одно осмысленное изменение (например, другое входное значение или дополнительное условие). Приведите итоговый код.

sudo apt-get update &&  sudo apt-get install -y dotnet-sdk-10.0
Войдите, чтобы отправить решение
Сложное Ручная проверка Найдите потенциальную проблему в коде урока «Первая программа на C# с .NET CLI»
+30 XP

Изучите приведённый фрагмент кода и опишите, при каких входных данных или условиях он может сработать не так, как ожидается (граничный случай, отсутствие проверки и т.п.). Предложите исправленный вариант.

sudo add-apt-repository ppa:dotnet/backports
Войдите, чтобы отправить решение
Мини-проект Ручная проверка Мини-проект по теме «Первая программа на C# с .NET CLI»
+50 XP

Соберите небольшую программу, которая последовательно демонстрирует ключевые идеи урока. Программа должна быть рабочей и содержать минимум два самостоятельно написанных фрагмента, а не просто копию примера из урока.

Войдите, чтобы отправить решение
Домашнее задание Ручная проверка Домашнее задание по теме «Первая программа на C# с .NET CLI»
+25 XP

Напишите собственную небольшую программу, применяющую материал темы «Первая программа на C# с .NET CLI». Используйте не менее одной конструкции, показанной в примерах урока. Прикрепите код решения и краткое описание того, что он делает.

Войдите, чтобы отправить решение

Обсуждение (0)

Войдите, чтобы оставить комментарий.