VS, анхны програм

C# хэл дээр програм зохиоход бидэнд юу хэрэгтэй вэ?

  • Програмийн кодоо бичих текст засварлагч.
  • Програмийн кодийг exe өргөтгөлтэй файлд багцлах компилятор /хөрвүүлэгч/
  • Програмийн компиляц, цаашдын ажиллагаанд хэрэгтэй .NET фреймворк

хэрэгтэй.

Програмийн кодийг бичих, тестлэн зүгшрүүлэх ажиллагааг хөнгөвчлөх үүднээс ихэнхдээ тусгай боловсруулалтын орчинг ашигдладаг. Тухайлбал Visual Studio.

C# дээр програм зохиохдоо үнэгүй, ажиллагааны бүрэн боломжтой Visual Studio Community 2022 боловсруулалтын орчинг ашиглана.

Санамж: Visual Studio 2019 болон түүний өмнөх хувилбарууд .NET 6 ба C# 10 -ыг дэмждэггүй тул заавал Visual Studio 2022 хэрэгтэй.

Суулгагчийг /installer/ татан аваад түүнийг ажлуулна. Visual Studio Community 2022 суулгах ажиллагаа ердийн програм суулгахтай ижил боловч таниас Visual Studio -той цуг суулгах компонентийг сонгохыг санал болгосон цонх гарч ирнэ. Visual Studio олон тооны хэл болон платформоор програм боловсруулах боломжтой маш функционал ихтэй боловсруулалтын орчин гэдгийг дурдая. Visual Studio боловсруулалтын орчинд C# , .NET 6 төслийг дэмжүүлэхийн тулд ASPNET and web development компонентийг сонгоход хангалттай. Илүү олон бүр бүх компонентийг сонгож болох ч хатуу дискнйи чөлөөт зайгаа тооцоорой. Олон сонголт хийх тусам програм диск дээр илүү их зай эзлэх болно. Цааш суулгагч таны компьютерт хэрэгцээт бүхий л хэрэгслүүдийг суулгана.
Машиныхаа системийн бус диск дээр програмийн кодоо хадгалах хавтасыг үүсгэн өгөөрэй. Би G:\munkh\project C# хавтасыг ашиглахаар үүсгэн өгсөн.
Боловсруулалтын орчинг суулгаж дууссаны дараа эхний програмаа зохиохын тулд Visual Studio -ийг ачааллахад нээгдэх цонхноос Create a new project (Шинэ төсөл үүсгэх) -ийг сонгоно.

Дараагийн цонхонд төслийн төрлөөр Console App -ийг сонгоорой. Өөрөөр хэлбэл бид C# хэл дээр консолийн програм зохионо гэсэн үг.

Програмийн төрлөө сонгоод Next товчийг дарахад нээгдэх дараагийн цонхонд төслийн /програмийн/ нэр, байрших хавтасны сонголтыг хийнэ.

Төслийн нэрийг програмийн санал болгосноор үлдээе. Энд та өөрийн нэрийг өгч болно гэдэг нь ойлгомжтой. Location талбарт өөрийн үүсгэсэн хавтасаа заан өгөөрэй. Одоо Next товчийг дарна.

Дараагийн цонхонд төсөлд ашиглах .NET -ийн хувилбарыг сонгоод төслийг үүсгэх Create (үүсгэх) товчийг дарахад Visual Studio төслийг үүсгээд нээнэ.

Төвийн том талбар бол текст засварлагч бөгөөд түүнд боловсруулалтын орчин анхдагчаар үүсгэсэн C# код гарч ирнэ. Баруун хэсэгт төслийн бүтцийг харуулсан Solution Explorer цонх байрлана. Одоогоор Visual Studio үүсгэсэн анхдагч бүтэц харагдаж байгаа. Dependencies бол төсөлд анхдагчаар нэмэгдсэн dll багцыг агуулсан хэсэг. Энэ багцад C# ашиглах .NET -ийн классуудын санг агуулагдана. Гэхдээ бүх багцууд дандаа хэрэгтэй байгаад байдаггүй. Цаашдаа хэрэггүй сангуудыг хасах эсхүл нэмэх боломжтой. Цааш төвийн цонхонд код нь нээгдсэн Program.cs байрлана. Visual Studio файлд ердөө хоёр мөр кодийг үүсгэсэн байгаа.

// тэмдэгтээр эхэлсэн эхний мөр бол кодийн тайлбар юм.
Хоёрдахь Console.WriteLine("Hello World!"); мөр бол програмийн код. Энэ мөр консолд "Hello World!" мөрийг үзүүлнэ. Хэдийгээр програм ганцхан мөр кодтой ч F5 эсхүл хэрэслүүдийн самбар дахь ногоон товчийг даран ажиллууж болох программ. Програмийг ажлуулбал консолд "Hello World!" мөрийг үзүүлнэ.

Ямар нэгэн товчийг дарвал консолийн цонх хаагдана. Одоо Program.cs -ийн кодийг

Console.Write("Your name: ");
string? name = Console.ReadLine();        // нэрээ оруулах
Console.WriteLine($"Hi {name}");     // нэрийг консолд үзүүлэх

болгон өөрчилье. Кодийн хоёрдахь мөр гараас өгөгдөл оруулахыг хүснэ. Console.Write() арга консолд түүнд дамжуулсан мөрийг үзүүлнэ. Манай тохиолодолд энэ нь "Your name: " мөр юм.
Хоёрдахь мөрөнд хэрэглэгч консолоос мэдээлэл оруулах мөрийн name хувьсагчийг тодорхойлсон. name хувьсагчид консолоос оруулсан тэмдэгтийг унших Console.ReadLine() аргын үр дүнг олгосон. Өөрөөр хэлбэл хэрэглэгч консолоос оруулсан тэмдэгтүүд name хувьсагчид орно гэсэн үг.
string? name илэрхийлэл string? төрөлтэй name хувьсагч тодорхойлогдсонг заана. Өөрөөр хэлбэл мөр хадгалах боломжтой хувьсагч гэсэн үг. Энд string нь хувьсагч мөр төрлийн утга хадгалахыг харин ? нь хувьсагч null утгыг хадгалж болохыг зааж байгаа юм. Өөрөөр хэлбэл хувьсагч утгагүй байж болохыг заасан хэрэг.
Console.WriteLine($"Hi {name}"); мөр оруулсан нэрийг консолд үзүүлнэ. name хувьсагчийн утгыг консолд үзүүлэх мөрөнд оруулахын тулд {} хаалтыг хэрэглэнэ. Ингэснээр WriteLine арга консолд мөрийг үзүүлэхэд {name} илэрхийлэл name хувьсагчийн утгаар солигдох юм. Хувьсагч доторх утгыг ийм байдлаар мөр дотор оруулан консолд гаргахын тулд WriteLine аргын үзүүлэх мөрийн өмнө $ /долларын тэмдэг/ -ийг заах хэрэгтэй.
Програмийг ажлуулбал

гэж ажиллана. Ингээд бид анхны програмаа зохиолоо. Програмийн exe файл төслийг хадгалсан хавтасны bin\Debug\net6.0 хавтаст байрлана. Файл төслийн нэрээр нэрлэгдэх ба exe өргөтгөлтэй байна. Одоо энэ файлыг Visual Studio -гүйгээр эсхүл .NET 6 суугдсан өөр компьютерт хуулан ажлуулах боломжтой.

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

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

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

Хэвийг хаана ашиглах

  • Холбоонууд нарийн, ээдрээтэй олон тооны харилцан холбоотой обьектууд байх үед.
  • Өөр обьектуудтай нягт холбоотойгоос үүдэн дахин ашиглахад хүндрэлтэй обьектыг дахин ашиглах шаардлага гарах үед

Хэвийг UML диаграмаар дараах байдлаар тодорхойлно.

patt_21_01

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

Виртуал аргууд, шинжүүд хичээлд виртуал аргуудыг тодорхойлох, дахин тодорхойлохыг үзсэн. Суурь классаас өвлөн авсан функцтоналуудыыг өөрчлөх өөр арга бол нуух (shadowing / hiding) юм. Арга, шинжүүдийг нуух нь үнэндээ суурь классийн арга эсхүл шинжүүдтэй нэр, параметрүүдийн багцаар тохирох арга, шинжийг удамшсан класст тодорхойлох юм. Классийн гишүүнийг нуухдаа new түлхүүр үгийг хэрэглэдэг.

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

Нийтлэлээр графикийн хэвүүдийн /GUI pattern/ түүхийг авч үзье. Боловсруулалтын графикийн хэвүүдийг 30 гаруй жилийн туршид боловсруулж байгаа бөгөөд энэ хугацаанд гарч ирсэн бүх хэвүүдийн талаар авч үзэх нь боломжгүй зүйл. Иймээс сүүлийн 30 жилд бий болсон үндсэн хоёр чиг хандлагын талаар авч үзээд энэхүү хоёр хандлага эцэстээ Silverlight ийн MVVM ба WPF паттерн болон хувирсанг харцгаая. Хэрвээ та графикийн хэвүүдийн түүхийн талаарх мэдээллийг сонирхож байвал Мартин Фаулерын - GUI Architectures нийтлэлийг уншаарай.

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

Exception бол програмчлалын олон хэлэнд байдаг алдааг боловсруулах стандарт механизм. Хичээлээр С# дээр алдааны боловсруулалтыг хэрхэн үүсгэн хэрэгжүүлэхийг авч үзнэ. Та дэлгэц дээрээсээ харж байгаа код бол хийж болохгүй аргачлалын тод жишээ байгаа.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

react програмд олон хуудас үүсгэн удирдахын тулд react -ийн бүрэлдхүүнд ордоггүй ч түүнтэй нягт холбоотой ажилладаг нэмэлт пакетийг…

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

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

функц өгөгдөв.

  1. f(x) функцын x0=5 абсцисстай M цэгт татсан шүргэгч шулууны тэгшитгэл
  2. f(x) функцын график, дээрх шүргэгч шулуун болон координатын тэнхлэгүүдээр хүрээлэгдсэн дүрсийн талбай  
  3. f(x) функцын графикийг M цэгт шүргэх, төв нь OX (абсцисс) тэнхлэг дээр орших тойргийн тэгшитгэл

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

 

илэрхийллийн a=36,7 тэнцүү байх утгыг ол.

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

 

a ба b нь 3x2-x-1=0 тэгшитгэлийн шийдүүдтэй тэнцүү бол илэрхийллийн утгыг ол.

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