Програмчлалын C# хэл ( 134 )

Програмчлалын хэлүүдээс хамгийн өргөнөөр ашигладаг хэлүүдийн тоонд C хэл зүй ёсоор ордог. Тиймээс би энэ хэлний талаарх материалуудыг судласны үндсэн дээр энэхүү цуврал хичээлүүдийг бэлтгэлээ. Хичээлд C# хэлийг ашиглах болно. Хичээлийг илүү үр дүнтэй болгох үүднээс хичээлд C# програмчлалын хэлний бичлэгийн дүрэм, цикл, нөхцөлт оператор гэх мэтийн програмын үндсэн ухагдхууны талаар дэлгэрэнгүй авч үзэхгүй харин C# хэлний өөрийн гэсэн технологийн онцлог, хэлийг ашиглах практик ажиллагаа дээр илүү анхаарал хандуулах болно. Иймээс хичээлийг үзэхийн тулд та C# хэлний үндсэн мэдлэгтэй байх хэрэгтэй. Одоо програмчлалын хэлүүд бараг адилхан бичлэгийн дүрэмтэй болсон болохоор та заавал C# хэл гэлтгүй JAVA, C++ эсвэл PHP гэх мэт ОХП-ын аль нэг хэлийг мэддэг байхад жишээнүүдийг бүрэн ойлгох боломжтой. C# хэлний хэлний суурь мэдлэгийг авч болох ном материалууд номын дэлгүүр эсхүл интернетэд хангалттай байгаа. Програмын жишээнүүдийг хийхдээ Visual Studio 2015 боловсруулалтын орчинг ашиглах тул та компьютертаа програмыг суулгасан байх шаардлагатай.

Танд амжилт хүсье

Нээгдсэн тоо: 613 Нийтийн

Өмнөх хичээлүүдээр бид өгөгдлийн төрлүүд, үйлдлүүд, цикл, нөхцөлт бүтэцүүд, массив, арга гээд C# програмчлалын хэлний суурь ойлголтуудыг үзсэн. C# бол бүрэн хэмжээний обьект хандлагат хэл. ОХП -ийн аргачлал орчин үед маш өргөн дэлгэрсэн тул өргөн дэлгэрсэн програмчлалын хэлүүд бүгд энэ парадигмийг дэмждэг. Энгийнээр ОХП -нь програмийг өөр хоорондоо харилцан холбогдож ажиллах обьектууд байдлаар зохиох аргачлал юм. Цаашид програмчлалын илүү нарийн ойлголтуудыг судлаж эхлэх учраас өмнөх хичээлүүдийг үзсэн байхыг зөвлөе.

Нээгдсэн тоо: 421 Бүртгүүлэх

Програмчлалын C# хэлэнд өгөгдлийн энгийн төрлүүдээс гадна enum буюу дурдах /тоолох/ гэсэн төрөл бий. enum төрөл логик холбоотой тогтмолуудаар илэрхийлэгдэнэ.

Төрлийг enum оператороор зарладаг.

enum нэр
{
    // тоологын утгууд
    утга1,
    утга2,
    .......
    утгаN
}

enum араас тооллогын нэрийг өгнө. Дараа нь хаалтанд таслалаар тусгаарлан тооллогын утгууддыг тогтмолуудыг бичнэ.

Нээгдсэн тоо: 433 Төлбөртэй

switch/case бүтэц илэрхийллийн утгыг утгуудын багцтай харьцуулан утга тохирсон бол тодорхой кодийг биелүүлдэг.

switch бүтцийн албан ёсны тодорхойлолт

switch (илэрхийлэл)
{
    case утга1:
        илэрхийллийн утга утга1-тэй тохирох үед ажиллах код
        break;
    case утга2:
        илэрхийллийн утга утга2-тэй тохирох үед ажиллах код
        break;
    //.............
    case утгаN:
        илэрхийллийн утга утгаN-тэй тохирох үед ажиллах код
        break;
    default:
        илэрхийллийн утга утгуудын багцад байхгүй үед ажиллах код
        break;
}

switch түлхүүр үгийн араас хаалтад харьцуулах илэрхийллийг өгнө.

Нээгдсэн тоо: 538 Төлбөртэй

Өөр функцийн дотор тодорхойлогдсон функцийг локал функц гэдэг. Локал функц тухайн аргын хүрээнд хийгдэх үйлдлүүдийг агуулдаг. Локал функцийг ойлгохын тулд хоёр тоон массивийн нийлбэрийг харьцуулах Compare аргыг

void Compare(int[] numbers1, int[] numbers2)
{
    int numbers1Sum = 0;
    int numbers2Sum = 0;

    foreach (int number in numbers1)
        numbers1Sum += number;

    foreach (int number in numbers2)
        numbers2Sum += number;

    if (numbers1Sum > numbers2Sum)
        Console.WriteLine("numbers1 массивийн тоонуудын нийлбэр их");
    else
        Console.WriteLine("numbers2 массивийн тоонуудын нийлбэр их");
}

int[] numbers1 = { 1, 2, 3 };
int[] numbers2 = { 3, 4, 5, 6, 7 };

Compare(numbers1, numbers2);

гэж тодорхойльё.

Нээгдсэн тоо: 795 Бүртгүүлэх

Өөрөө өөрийгөө дуудах функцийг рекурсив (recursion) гэж нэрлэдэг. Рекурсивийг мэдээлэл зүйн үндсэн ойлголтуудын нэг гэж үздэг. Асуудлын шийдлийн энэхүү арга нь математик индукцтэй төстэй. Өөрөөр хэлбэл функц өөрийгөө дуудахын тулд эхлээд функцийг өөр утгатайгаар дуудсан үр дүнг авсан байх хэрэгтэй болдог.
Функц өөрөө өөрийгөө дуудах ажиллагаа програмчлалын ихэнх хэлүүдэд байдаг тул ухагдхууныг ойлгон хэрэгжүүлж сурсан байх хэрэгтэй. Рекурсивийн (recursion) хэрэгжүүлэлтийг тодорхой шийдлүүд дээр харцгаая.

Нээгдсэн тоо: 399 Бүртгүүлэх

Өмнөх хичээлүүдийн бүх жишээнүүдэд тогтмол тооны параметерүүдийг ашигласан. Харин params түлхүүр үгийг ашиглан аргад тодорхойгүй тоотой параметрийг дамжуулж болно.

void Sum(params int[]  numbers)
{
    int result = 0;
    foreach (var n in numbers)
    {
        result += n;
    }
    Console.WriteLine(result);
}
 
int[] nums = { 1, 2, 3, 4, 5};
Sum(nums);
Sum(1, 2, 3, 4);
Sum(1, 2, 3);
Sum();

Нээгдсэн тоо: 473 Төлбөртэй

C# -д аргад параметрийг утгаар ба холбоосоор дамжуулах гэсэн хоёр арга байдаг.

Параметрийг утгаар дамжуулах

Параметрийг дамжуулах хамгийн энгийн арга бол утгаар нь дамжуулах юм. Энэ бол параметрийг дамжуулах ердийн арга.

void Increment(int n)
{
    n++;
    Console.WriteLine($"Increment аргад дамжуулсан параметрийн утга: {n}");
}

int number = 5;
Console.WriteLine($"Increment аргын өмнөх number хувьсагч: {number}");
Increment(number);
Console.WriteLine($"Increment аргын дараах number хувьсагч: {number}");

Консолийн гаралт

Нээгдсэн тоо: 351 Төлбөртэй

Арга утга эсхүл ямар нэгэн үр дүнг буцааж болно. Өмнөх хичээлүүдэд тодорхойлсон аргууд void төрлийн буюу ямар нэгэн утга буцаахгүйгээр тодорхой үйлдлүүдийг хийж байсан. Аргаас утга буцаахдаа return операторийг хэрэглэх бөгөөд операторийн араас буцаах утгыг өгдөг.

return буцаах_утга;

Жишээ нь string төрлийн утга буцаах аргыг тодорхойльё.

string GetMessage()
{
    return "Hello";
}

GetMessage аргын тодорхойлолтод string төрлийг заасан учраас арга мөр буцаах ёстой. Иймээс аргын биед return операторийг ашиглаад араас нь буцаах мөрийг заасан.

Нээгдсэн тоо: 310 Төлбөртэй

Аргууд хичээлд тодорхойлсон SayHello арга

void SayHello()
{
    Console.WriteLine("Hello");
}
 
SayHello(); // Hello

консолд мэдээллийг үзүүлдэг. Арга консолд нэг ижил мэдээлэл үзүүлж байгаа нь түүний сул тал. Аргаас консолд үзүүлэх мэдээллийг түүнд гаднаас дамжуулан динамикаар тодорхойлбол илүү байхаар. C# -д үүнийг параметрүүд ашиглан шийддэг.

Жич: C# хэл ОХП-ийн аргачллалыг бүрэн дэмждэг тул кодийг голдуу классууд дээр суурилан бичдэг. Класс дотор зарлагдсан функцуудийг арга /method/ гэж нэрлэдэг тул ердийн функцийг ч арга гэж нэрлээд байгаа шүү.

Нээгдсэн тоо: 405 Төлбөртэй

Хувьсагчид утгыг хадгалдаг бол аргууд тодорхой үйлдлийг хийх командуудын багцыг агуулдаг. Үнэндээ арга гэдэг нь тодорхой үйлдлийг хийх нэрлэгдсэн кодийн блок.
Аргын ерөнхий иодорхойлолт

[модификатор] буцаах_утгын_төрөл аргын_нэр([параметрүүд])
{
    // аргын бие
}

байна. Модификатор, параметрүүд заавал байх албагүй.

Үйл явдал /event/ тодорхой үйлдэл хийгдсэн талаар системд мэдэгддэг. Хэрвээ бид энэхүү үйлдлийг ажиглах хэрэгтэй бол яг энд…

Нээгдсэн тоо : 149

 

Манай төсөл олон хуудсуудтай болон тэдгээрийн хооронд динамикаар шилжилт хийж байгаа ч тухайн үед шилжилт хийгдсэн хуудаст тохирох…

Нээгдсэн тоо : 214

 

Зочин (Visitor) паттерн классуудыг өөрчлөхгүйгээр тэдгээрийн обьектуудын үйлдлийг тодорхойлох боломжийг олгоно. Зочин хэвийг ашиглахдаа классуудын хоёр ангилалыг тодорхойлно.…

Нээгдсэн тоо : 182

 

Лямбда-илэрхийлэл нь нэргүй аргын хураангуй бичилтийг илэрхийлнэ. Лямбда-илэрхийлэл утга буцаадаг, буцаасан утгыг өөр аргын…

Нээгдсэн тоо : 299

 

Кодийн сайжруулалт /рефакторинг/ хичээлээр програмийн кодоо react -ийн зарчимд нийцүүлэн компонентод салгасан.…

Нээгдсэн тоо : 328

 

Хадгалагч (Memento) хэв обьектын дотоод төлвийг түүний гадна гаргаж дараа нь хайрцаглалтын зарчмыг зөрчихгүйгээр обьектыг сэргээх боломжийг олгодог.

Нээгдсэн тоо : 338

 

Делегаттай нэргүй арга нягт холбоотой. Нэргүй аргуудыг делегатийн хувийг үүсгэхэд ашигладаг.
Нэргүй аргуудын тодорхойлолт delegate түлхүүр үгээр…

Нээгдсэн тоо : 411

 

Математикт харилцан урвуу тоонууд гэж бий. Ямар нэгэн тооны урвуу тоог олохдоо тухайн тоог сөрөг нэг зэрэг дэвшүүлээд…

Нээгдсэн тоо : 410

 

Төсөлд react-router-dom санг оруулан чиглүүлэгчдийг бүртгүүлэн тохируулсан Санг суулган тохируулах хичээлээр бид хуудас…

Нээгдсэн тоо : 486

 
Энэ долоо хоногт

Тэгш өнцөгт параллелепипедын диагнал түүний 3 ба 4 хэмжээтэй талстад 60 градусын өнцгөөр налсан бол диагоналын урт хэд вэ?

Нээгдсэн тоо : 1283

 

Суурийн радиус нь 4 см байх шулуун дугуй цилиндрийн нэг үзүүрээс зурагт үзүүлснээр хавтгайгаар огтлоход хамгийн урт байгуулагч нь 15 см, хамгийн богино байгуулагч нь 9 см болсон бол үүссэн биетийн эзэлхүүнийг ол.

Нээгдсэн тоо : 2932

 

тэнцэтгэл бишийг бод.

Нээгдсэн тоо : 204