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