23-Mavzu: Voris sinflarni yaratish va foydalanish.
24-Mavzu: Ichki sinflardan foydalanish.
25-Mavzu: virtual metodlardan foydalanish.
26-Mavzu: Interfeyslar bilan ishlash.
27-Mavzu: IEnumerable va IEnumerator interfeysi metodlarini sinfda qayta aniqlash.
28-Mavzu: Umumlashgan sinflar yaratish va ishlatish.
29-Mavzu: Amaliyot boyicha taqdimotlar tayyorlash.
30-Mavzu: Yozma hisobot tayyorlash va ximoya qilish.
5-iyul 2021-yil
1-amaliyot kuni
1-Mavzu: Visual Studio muxitida ishlash.
C# dasturlash tilida birinchi dasturimizni yaratamiz. Bizga nimalar kerek bo‘ladi? Birinchidan kodimizni yozishimiz uchun matinli muharirlash muhiti kerek bo‘ladi. Ikkinchidan matinli muharirlash muhitimizda yozgan kodimizni exe dasturiga o‘tkazish uchun kompilyator kerek bo‘ladi. Uchinchidan kompilyator va dastur ishlashi uchun .NET kerek bo‘ladi.
Dastur kodlarini yozishni qulaylashtirish tekshirish va hatolarni topish uchun dastur yozishga mo‘ljallangan muhitlardan foydalaniladi, jumladan Visual Studio. Linux muhitida ishlovchilarga Monodevelop dasturini tafsiya etaman.
Hozirda C# da dastur yaratish uchun tekin va imkoniyatlarga boy bo‘lgan Visual Studio Community 2019 muhitidan foydalanamiz.
VSCommunity 2019ni https://www.visualstudio.com/en-us/downloads quyidagi havola orqali yuklab olishingiz mumkin.
Yuklangandan so‘ng o‘rnatuvchi dasturini ishga tushiramiz. Ochilgan oynada bizga Visual Studio bilan birgalikda o‘rnatiladigan va biz hohlagan qo‘shimcha hususiyatlari chiqadi. Visual Studio juda ko‘p hususiyatlarga ega shuni etiborga olish zarur. Bizga esa C# va .NET Core shuning uchun Кроссплатформенная разработка .NET Core (turli qurilmalarga dasturlar yaratish .NET Core (dotnet)) ni tanlaymiz. Hohlasak bir nechta yoki barchasini tanlab o‘rnatsak bo‘ladi lekin kompyuterimizning hotirasi cheklangan va ortiqcha joy egallab turishini inobatga olish zarur.
Visual Studioni o‘rnatgan paytimizda dasturlash uchun zarur bo‘lgan barcha hususiyatlarham o‘rnatilgan bo‘ladi, jumladan .NET 5 Freamwork ham.
O‘rnatib bo‘lganimizdan so‘ng birinchi dasturimizni yaratamiz. Birinchi dasturimiz soddagina bo‘ladi. Visual Studioni ochamiz. Birinchi paydo bo‘lgan oynadan Create a new project (yangi loyiha yaratish)ni tanlaymiz.
Loyihaning turini tanlashda Console App (.NET Core)ni belgilaymiz, demak bunda bizga C# da konsol dasturi tuziladi.
Project Namega proyektimizga nom beramiz, Bizni holatimizda proyektimizni nomi SalomDunyo bo‘ladi. Qaysi papkada joylashishiniham ko‘rsatib o‘tamiz. Create (Yaratish) tugmasini bosamiz.
Shundan keyin Visual Studio yangi loyihani yaratadi va ochib beradi:
Markazdagi asosiy oynadagi matin muharirida avtomatik C# kodi paydo bo‘ladi, buni biz yo‘lma-yo‘l o‘zgartirib boramiz.
Oynaning o‘ng tarafida Soultion Explorer bizning loyimazni tuzilishini ko‘rsatib turadi. HelloApp bo‘limida ikkta ichki bo‘lim mavjud Dependencies o‘zida dll fayllarni jamlaydi. Dependencies .NET ning hususiy kutubhonalarini o‘z ichiga oladi ular C# uchun ishlatiladi.
Bundan keyin dasturimizning asosiy kodi turadi Program.cs. Ya’ni, aynan manashu kod ekranning markazida ochiq turibdi.
Dasturimizni yaratishdan oldin .NET 5 Freamwork’ini ishlatayotganligimizni tekshirib ko‘ramiz. Chunki, Visual Studio o‘z holatida .NET Core 3.1 ishlatishi mumkin. Lekin, Bizga aynan ohirgi .NET 5 ohirgi avlodi zarur. Tekshirish uchun Project menyusiga o‘tib HelloApp Propertes (bizning loyihamizning sozlamalari) tanlaymiz:
Далее в открывшемся окне на вкладке Application в поле Target Framework установим .NET 5 (если установлено другое):
После изменения версии фреймворка на .NET 5 не забудем сохранить проект.
Теперь разберем, что представляет собой код файла Program.cs:
|
using static System. Console ;
// подключаемое пространство имен
namespace HelloApp{ // объявление нового пространства имен
class Program{ // объявление нового класса
static void Main(){
// объявление нового метода
WriteLine("Hello World!");
// действия метода
} // конец объявления нового метода
} // конец объявления нового класса
} // конец объявления нового пространства имен
|
В начале файла идет директива using, после которой идет название подключаемого пространства имен. Пространства имен представляют собой организацию классов в общие блоки. Например, на первой строке using System; подключается пространство имен System, которое содержит фундаментальные и базовые классы платформы .NET.
И так как C# имеет Си-подобный синтаксис, каждая строка завершается точкой с запятой, а каждый блок кода помещается в фигурные скобки.
Далее начинается уже собственно наше пространство имен, которое будет создавать отдельную сборку или исполняемую программу: сначала идет ключевое слово namespace, после которого название пространства имен. По умолчанию Visual Studio дает ему название проекта. Далее внутри фигурных скобок идет блок пространства имен.
Пространство имен может включать другие пространства или классы. В данном случае у нас по умолчанию сгенерирован один класс - Program. Классы объявляются похожим способом - сначала идет ключевое слово class, а потом название класса, и далее блок самого класса в фигурных скобках.
Класс может содержать различные переменные, методы, свойства, прочие инструкции. В данном случае у нас объявлен один метод Main. В программе на C# метод Main является входной точкой программы, с него начинается все управление. Он обязательно должен присутствовать в программе.
Слово static указывает, что метод Main - статический, а слово void - что он не возвращает никакого значения. Позже мы подробнее разберем, что все это значит.
Далее в скобках у нас идут параметры метода - string[] args - это массив args, который хранит значения типа string , то есть строки. В данном случае они нам пока не нужны, но в реальной программе это те параметры, которые передаются при запуске программы из консоли.
Внутри метода располагаются действия, которые этот метод выполняет. По умолчанию он содержит одно действие: Console.WriteLine("Hello World!"); - оно выводит на консоль строку "Hello World!".
Теперь мы можем запустить на выполнение с помощью клавиши F5 или с панели инструментов, нажав на зеленую стрелку. И если вы все сделали правильно, то при запуске приложения на консоль будет выведена строка "Hello World!".
Теперь изменим весь этот код на следующий:
|
using System;
namespace HelloApp{
class Program{
static void Main(){
Console.Write("Введите свое имя: ");
string name = Console.ReadLine();
// вводим имя
Console.WriteLine($"Привет {name}");
// выводим имя на консоль
}
}
}
|
По сравнению с автоматически сгенерированным кодом я внес несколько изменений. Теперь в методе Main первой строкой выводится приглашение к вводу.
1
|
Console.Write("Введите свое имя: ");
|
Класс Console, метод которого вызывается, находится в пространстве имен System. Это пространство подключено в начале с помощью директивы using. Без подключения пространства имен System я бы не смог использовать класс Console и вывести строку на консоль. Однако в принципе нам необязательно подключать пространство имен. Мы можем даже удалить первую строку, но в этом случае мы тогда должны будем указать полный путь до используемого класса. Например, в нашем случае мы могли бы написать:
System.Console.WriteLine("Введите свое имя:") .
На второй строке определяется строковая переменная name, в которую пользователь вводит информацию с консоли:
1
|
string name = Console.ReadLine();
|
То есть с помощью метода Console.ReadLine() мы можем считать с консоли строку.
Затем введенное имя выводится на консоль:
1
|
Console.WriteLine($"Привет {name}");
|
Чтобы ввести значение переменной name внутрь выводимой на консоль строки, применяются фигурные скобки {}. То есть при выводе строки на консоль выражение {name} будет заменяться на значение переменной name - введенное имя.
Однако чтобы можно было вводить таким образом значения переменных внутрь строки, перед строкой указывается знак доллара $.
Теперь протестируем проект, запустив его на выполнение, также нажав на F5 или зеленую стрелочку.
Итак, мы создали первое приложение. Вы его можете найти на жестком диске в папке проекта в каталоге bin\Debug\net5.0. Оно будет называться по имени проекта и иметь расширение exe (для более ранних версий .NET Core это файл с расширением dll). И затем этот файл можно будет запускать без Visual Studio, а также переносить его на другие компьютеры, где установлен .NET 5.
Do'stlaringiz bilan baham: |