Linq гэж юу вэ?

Хичээлээр Linq гэж нэрлэдэг суурь технологийн талаар үзнэ. Гурван суурь , лямбда илэрхийлэл хичээлүүдэд үзсэн ойлголтуудыг энэхүү технологийн бэлтгэл гэж хэлж болно. Linq технологи нилээд өргөн хүрээний том асуудал тул нэг хичээлийн хүрээнд түүний бүх ухагдхууныг өнгөцхөн ч гэсэн үзэх боломжгүй гэдгийг тэмдэглэе. Иймээс хичээлийг Linq технологитой танилцах оршил гэж хэлж болно. Технолгийг C# хэлээр програм зохиоход өргөнөөр ашигладаг тул сайн ойлгон эзэмшсэн байх шаардлагатай.

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

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

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

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

Програмчлалын C# хэл хатуу төрөлжилттэй тул өгөгдөлтэй ажиллах үед null утга асуудал үүсгэх тохиолдол их. Үүнийг тооцолгүй бичигдсэн код бүр ажлын /production/ хувилбараар ажиллаж байхдаа алдаа өгөх тал бий. Кодийн тестийг хийхдээ тухайн хувьсагчид null утга олгогдох тохиолдолыг тооцохгүй байх нь ийм асуудал гарах үндсэн шалтгаан хэдий ч кодлогч энэ талаар өөрөө бодон кодлох хэрэгтэй.   

null -ийн шалгалт. Null guard /хамгаалагч/

Коддоо null утга авдаг өөрөөр хэлбэл nullable төрлийн хувьсагч болон параметрүүд ашиглах болбол NullReferenceException алдаа гарахаас сэргийлэн null -ийг шалгах хэрэгтэй. Жишээ нь

void PrintUpper(string? text)
{
    if (text!=null)
    {
        Console.WriteLine(text.ToUpper());
    }    
}

Дээрх кодод text параметр null -тэй тэнцүү биш бол мөрийн тэмдэгтүүдийг том үсэг болгох ToUpper() аргыг дуудна.

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

Өмнөх хичээлүүдэд int, byte, double, string, object гэх мэтийн өгөгдлийн төрлүүдийг үзсэн. Үүний зэрэгцээ структур, тооллого /enum/, класс зэрэг нарийн төрлүүдийг ч үзсэн. Энэ бүх төрлүүдийг утгын төрлүүд (утгатай төрлүүд ч гэж бас нэрлэдэг) (value types) ба холбоосын төрлүүд (reference types) гэсэн ангилалд хувааж болно. Эдгээрийн ялгааг ойлгох нь чухал.

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

C# -д ердийн классуудаас гадна абстракт классууд гэж бий. Ийм классууд ямар хэрэгтэй вэ? Классууд тодорхой төрлийн обьект эсхүл биетийн ерөнхий хэвийг голдуу илэрхийлдэг. Жишээ нь машинийг төлөөлөх Car эсхүл хүнийг илэрхийлэх Person гэх мэтээр классуудыг тодорхойлоод эдгээрт тухайн обьектийг тодорхойлох талбар, шинж, аргуудыг оруулан өгч болно. Гэтэл тодорхой дүрслэлгүй зарим нэгэн зүйлүүдийг програмчлалын хэлээр илэрхийлэх хэрэгцээ гардаг. Жишээ нь яг энэ гээд хэлэх геометрийн дүрс бодитоор оршдоггүй. Тойрог, тэгш өнцөгт, квадрат гэж байдаг ч зүгээр дүрс гэж байхгүй. Гэхдээ тойрог, тэгш өнцөгтүүдэд зарим нэгэн ерөнхий зүйлүүд байх бөгөөд энэ нь дүрс юм. Тодорхой биелэлгүй үүнтэй төстэй зүйлүүдийг тодорхойлоход абстракт классууд зориулагдсан.

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

Модел-үзүүлбэр-контролер (model-view-controller) ухагдхуун 1970 оны сүүлээр гарч ирсэн. Энэ загвар Xerox PARC компаний Smalltalk төслийн үр дүн бөгөөд тухайн үедээ өмнө нь хийгдсэн байсан програмуудын хэрэглэгчийн графикийн интерфейсүүдийг зохион байгуулах хэлбэрээр гарч иржээ. Анхны MVC загварын зарим зүйлүүд Smalltalk төслийн дэлгэц, хэрэгслүүд гэх мэтийн тодорхой баримтлалтай холбоотой байсан ч илүү нэгдсэн ойлголтуудыг програмд ашиглаж байсан. Модел-үзүүлбэр-контролер паттерн веб програмчлалд маш сайн тохирдог тул ASP.NET фреймворкид загвар сайн хэрэглэгээг олсон. Гэхдээ бид энэ удаа хэвийг WPF -д ашиглахыг авч үзэх болно.
Хэвийг ерөнхийлөх талаас нь харвал бүтцийн MVC паттерн програмыг багаар бодоход 3 хэсэгт хуваана гэж ойлгож болно. Нэрнээсээ ч загвар програмыг Модел, Үзүүлбэр, Контролер гэсэн хэсгүүдэд хуваах нь харагдана.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

Адил хажуут трапецын сууриуд 20 ба 12 см. Трапецыг багтаасан тойргийн төв их суурь дээр байрлах бол трапецын диагналыг ол.

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

 

тэгшитгэлийн язгууруудын нийлбэрийг ол.

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

 

Зурагт үзүүлсэн хагас тойрогт бол AB -ийн уртыг ол.

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