C# олонлог /Sets/ I

Манай энэ удаагийн хичээлийн сэдэв бол олонлог. C# -д олонлогийн хэдэн төрлүүд байдаг. Олонлогийн тухай ойлголт интерфейс ба ерөнхийлөлтэй их холбоотой тул хичээлийг үзэхээс өмнө интерфейс , ерөнхийлөл сэдвийн хичээлүүдийг судлахыг зөвлөе.

Олонлог гэж юу вэ?

C# -д олонлогийг ямар нэгэн обьектуудын багц гэж ойлгоно. Жишээ нь бүхэл тоонуудын массив int[] a; бол бүхэл тоонуудыг багц учраас олонлог. list<string> lst; - мөрүүдийн жагсаалт бас л олонлог. Энд ухагдхууны хувьд тодорхой төөрөгдөл үүсдэг. Ном, интернет нийтлэлүүдэд цуглуулга /collection/, жагсаалтын талаар авч үзэхдээ тэдгээрийг олонлог гэж үзсэн байдаг. Үнэн хэрэгтээ цуглуулга /collection/, жагсаалт, дарааллууд бол олонлогийн тухайн тохиолдол юм. Эдгээрийн ялгааг бид хичээлээр үзэх болно.

Материалыг тусгай эрхтэй хэрэглэгч үзнэ.

request_quoteТусгай эрх авах

Мэдээлэл таалагдсан бол найзуудтайгаа хуваалцаарай.

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

C# хэл дээрх програмийн оролтын цэг Main арга байдаг. Яг энэ аргаас C# дээрх програм биелэгдэж эхэлдэг тул програм заавал Main аргатай байх ёстой. Гэтэл Visual Studio 2022  

// See https://aka.ms/new-console-template for more information
Console.WriteLine("Hello, World!");

кодтой консол програмийг үүсгэдэг.

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

Литерал нь өөрчлөгдөхгүй утгыг илэрхийлнэ. (хааяа тэдгээрийг тогтмолууд гэж ч нэрлэдэг.) Литералуудыг хувьсагчид утгаар өгч болдог. Логик, бүхэл тоон, бодит тоон, тэмдэгт, мөрийн литералууд байж болно. null түлхүүр үг тусдаа литералийг илэрхийлнэ.

Логикийн литералууд

true (үнэн), false (худал) гэсэн хоёр логик тогтмол бий.

Console.WriteLine(true);
Console.WriteLine(false);

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

Өмнөх хичээлүүдэд бид

  • Олон урсгал гэж юу болох, түүнийг үүсгэн ажиллах
  • Invoke аргын ажиллагааны зарчим, делегатыг дамжуулах механизм
  • Invoke аргын дээд түвшингийн багцлалт болох SynchronizationContext класс
  • Олон урсгалыг хэрэгжүүлэхэд машины нөөцийг урсгалын багцлалтаар хэрхэн хэмнэх
  • Олон урсгалыг хэрэгжүүлэх дээд түвшиний BackgroundWorker, Task классууд
  • Олон урсгалыг бараг синхрон код байдлаар хэрэгжүүлэх async/await түлхүүр үгүүд

гэх мэтийн олон чухал ухагдхуунуудыг үзсэн. Энэ удаагийн хичээлээр Task классыг ашиглан алдааны боловсруулалт, үйлдлийн цуцлалтыг хэрхэн хийхийг авч үзье.

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

Task классыг ашиглан үүсгэсэн нэмэлт урсгалд үүссэн алдааг боловсруулах хичээлийн үргэлжлэлийг нийтэллээ. Өмнөх хичээлд цуцлалтын маркерыг ашиглан алдааг барихыг үзсэн. Энд анхаарах зүйл бас бий. Учир нь олон програм зохиогчид ялангуяа эхлэн суралцагчид цуцлалтын маркерыг тийм ч зөв ашиглаад байдаггүй. Бид Task классын Status шинжид RanToCompletion , Cancelled , Faulted гэсэн үндсэн гурван утгууд байдагийг судлан тогтоосон.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

Хуваах нь нэг тоо нөгөө тоонд хэдэн удаа агуулагдаж буй тодорхойлох арифметикийн үйлдэл.
Хуваалтыг нэг бус удаа…

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

 

Зуучлагч (Mediator) нь олон тооны обьектууд бие биетэйгээ холбоос үүсгэхгүйгээр харилцан ажиллах боломжийг хангах загварчлалын хэв юм. Ингэснээр…

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

 

Делегатууд хичээлд ухагдхууны талаар дэлгэрэнгүй үзсэн ч жишээнүүд делегатийн хүчийг бүрэн харуулж чадахааргүй байсан.…

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

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

Арифметик прогресийн 5-р гишүүн 8,4 харин 10-р гишүүн 14,4 тэнцүү бол энэ прогресийн 22-р гишүүнийг ол.

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

 

Дарааллын эхний n гишүүний нийлбэр томьёогоор өгөгджээ. Хэрэв энэ дараалал геометр прогресс бол q -г ол, арифметик прогресс бол d -г ол.

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

 

бол M·N=?

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