Программчлалын хэлүүд ( 492 )

Мэдээлэл зүй, программчлалын чиглэлээр сурдаг, интернет сайт хийж сурахыг хүсэж байгаа бол та манай сайтын энэ хэсгээс өөртөө хэрэгтэй мэдээллийг олно гэдэгт итгэж байна. Программчлалын нэг хэлийг сайн судлан ойлгосон байхад бусдыг нь ойлгон сурахад их дөхөмтэй байдаг. Яг л гадаад хэл шиг. Нэг гадаад хэлийг сурсан хүн бусдыг нь сурахад хүндрэл багатай байдгийн адил. Өнөөдөр интернет хэрэглээ асар хурдтай хөгжихийн хирээр энэ чиглэлийн программ зохиогчдын эрэлт өссөөр байна. Иймээс эрэлт өндөртэй мэрэгжлийг сонгон суралцаж эзэмшихийн тулд та өөрийгөө нилээд дайчлан ажиллах шаардлагатай. Зөвхөн багшийн заасан хичээлүүдийг үзээд сайн мэрэгжилтэн болно гэхэд их эргэлзээтэй. Багш зөвхөн онолын талын үндсэн мэдлэгийг өгөх учраас суралцагч өөрөө их хичээн төрөл бүрийн материалуудыг судлах зайлшгүй хэрэгтэй. Сайтын энэ хэсгийн материалууд танд дадлага олон сайн мэрэгжилтэн болоход туслах зорилготой юм.

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

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

Интерфейсийг ашиглах практик жишээ.

Та Интерфейс хичээлээс ОХП-д чухал байр суурьтай интерфейс гэсэн ойлголтын талаар үзэж тодорхой ойлголттой болсон гэж бодож байна. Иймд энэ хичээлээр интерфейсийг хаана ямар байдлаар ашиглахыг жишээ дээр авч үзэцгээе. Бидэнд мөрийн төрлийн Name, бүхэл тоон төрлийн Age талбар бүхий Student гэсэн бүтэц байлаа гэж бодъё.

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

Энэ хичээлээр бид ОХП-д томоохон байр суурийг эзэлдэг интерфейс гэдэг ойлголтыг авч үзэх болно. Сэдэв сонирхолтой, нарийн хэдий ч ойлгож чадна гэдэгт итгэлтэй байна. Ингээд интерфейс гэж юу болохоос эхлэе.

Интерфейс гэж юу вэ?

Интерфейсийн олон янзын тодорхойлолтууд байдаг. Jeffrey Richter өөрийн "CLR via C#" номондоо интерфейсийг аргуудын тодорхойлогчдын нэрлэсэн багц гэжээ. Тодорхойлолтыг ухан ойлгоцгооё. Делегат ба үйл явдал хичээлд үзснээр бол аргын тодорхойлогч /Signature/ гэдэг нь аргын нэр, түүнээс буцаах утгын төрөл, оролтын параметрын төрлийг агуулах хэв юм.

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

Бид өмнөх хичээлээр битүүмжлэгдсэн, статик классуудын талаар үзсэн. ОХП-д классууд чухал үүрэгтэй нь ойлгомжтой. Иймээс класуудын төрлүүдийг мэдээд зогсохгүй тэдгээрийг хаана хэрхэн ашиглахыг маш зөв ойлговол таны код цэгцтэй, ойлгомжтой, өөрчлөлт, шинэчлэл хийхэд уян хатан болдог. 

Програмчлалын аргачлал Singleton

Статик арга, классыг хэрхэн ашиглах жишээ болгоод Singleton гэдэг өргөн дэлгэрсэн програмчлалын  аргачлалыг авч үзье. Програм зохиогчдын дунд энэхүү аргачлалын талаар эерэг, сөрөг янз бүрийн үзэл бодлууд байдаг гэдгийг хэлэх нь зүйтэй.

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

ОХП-д классын тухай ойлголт чухал байр суурийг эзэлдэг. Иймээс классын төрлүүдийн талаар сайтар ойлгосон байх шаардлагатай. Хичээлээр бид битүүмжлэгдсэн, статик, абстракт классуудын талаар авч үзнэ. Классын эдгээр төрлүүдийг хөнгөнөөс нь хүнд рүү нь битүүмжлэгдсэн, статик, абстракт гэсэн дарааллаар судлана.

Битүүмжлэгдсэн буюу sealed класс

Классыг тэмдэглэх sealed түлхүүр үгийн орчуулга нь битүүмжлэгдсэн гэсэн байгаа юм. Орчуулга оновчтой болоогүй байж мэдэх тул sealed class гэсэн англи нэрээр нь тогтоон авбал илүү сайн. sealed түлхүүр үг юуг илэрхийлэх, хаана хэрхэн ашиглах вэ? Хэрвээ классыг sealed түлхүүр үгээр тэмдэглэсэн бол тэр эцэг класс болж болохгүй. Өөрөөр хэлбэл sealed классаас удамшуулж болохгүй. Иймээс удамшилтын гинж sealed түлхүүр үгээр тэмдэглэгдсэн класс дээр тасрах болно.

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

Обьект хандлагат програмчлал encapsulation - хайрцаглалт, inheritance - удамшилт, polymorphism - полиморфизм гэсэн гурван үндсэн зарчим дээр суурилдаг гэдгийг өмнөх хичээлүүдэд үзсэн. Энэ хичээлээр polymorphism - полиморфизм зарчмын талаар үзэх болно. Монголоор орчуулгад тохирох үгийг би олж чадаагүй. Полиморфизм гэдэг нь суурь классын ажиллагааны төлөв байдлыг хүүхэд класст өөрчлөхийг хэлнэ. Ойлгомжгүй байна уу. Гэхдээ үнэндээ бол тийм нарийн зүйл биш.

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

Онолын хувьд обьект хандлагат програмчлал гурван үндсэн зарчим дээр суурилдаг. Үүнд

  1. encapsulation - хайрцаглалт
  2. inheritance - удамшилт
  3. polymorphism - полиморфизм

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

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

 үүсвэр:

Өмнөх хичээлээр бид делегатын талаар тодорхой авч үзсэн. Энэ хичээлээр өмнөх хичээлд үзсэн зүйлүүдийг үргэлжлүүлэн үйл явдал гэдэг ойлголтыг авч үзнэ. Иймээс хичээлийн материалыг үзэхийн өмнө Делегат ба үйл явдал 1 хичээлийг сайтар судлан ойлгосон байх шаардлагатай.

Нэгдсэн /ерөнхийлөгдсөн/ делегат.

Дараах дохиолдолыг авч үзье. Бидэнд void (string) тодорхойлогчид тохирох аргад холбоотой CountDelegate гэсэн делегат байлаа гэж үзье. Яваандаа програмын ажиллагааны кодод void (string) тодорхойлогчид тохирох аргад холбоотой бас нэгэн TimesDelegate гэсэн делегат хэрэгтэй болох тохиолдол гарч ирэх бүрэн боломжтой. Ийм байдлаар 3 дахь 4 дэхь тохиолдлууд гарч болно.

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

Бид C# төрлийн бүрэлдхүүн хичээлүүдэд төрлийн Үйл явдлууд /Events/ ухагдхуунаас бусад гишүүдийг үзсэн. Иймээс энэ хичээлд Үйл явдлууд /Events/ ойлголтын талаар авч үзье. Үйл явдал делегат /delegate/ гэдэг ойлголт дээр суурилдаг учраас эхлээд делегат ухагдхууныг авч үзээд дараа нь үйл явдал гишүүний талаар авч үзье Delegate гэсэн үгийг монголчилбол "төлөөлөгч" гэж хэлж болох юм. Гэхдээ би делегат гэсэн нэрээр нь шууд ойлгон тогтоон авах нь илүү гэж үзлээ.

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

C# хэлний төрлийн бүрэлдхүүний талбар шинжүүдийн талаар өмнөх хичээлд үзсэн. Энэ хичээлээр төрлийн чухал бүрэлдхүүн болох шинжинй талаар авч үзэх болно. Хичээлд Төрлийн бүрэлдхүүн. Талбар Шинж хичээлийн жишээг ашиглах болно.

Шинжүүд.

Шинжүүд гэж юу болохыг ойлгохын тулд жишээндээ _age талбарын утгыг буцаах public int Getage(), _age талбарт утга олгох public void SetAge(int age) аргуудыг нэмэн өгье. 

        public int Getage()
        {
            return _age;
        }

        public void SetAge(int age)
        {
            _age = age;
        }

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

Өмнөх хичээлээс бид C# хэлний өгөгдлийн бүх төрлүүд утгаар (өөрөөр хэлбэл бүтцээр "struct") болон холбоосоор (өөрөөр хэлбэл классаар "class") өгөгдөх төрлүүдэд хуваагдахын дээр бас энгийн ба энгийн бус гэсэн ангилалтайг мэдэж авсан.
Энэ хичээлээр бид төрлүүд ямар үндсэн хэсгээс бүрддэг эдгээр хэсгүүд өөр хоорондоо хэрхэн харьцдаг талаар авч үзнэ. Хичээлд Өгөгдлийн төрлүүд хичээлийн жишээг ашиглах болно. C# хэлний өгөгдлийн ямарч төрөлд тэдний ямар ангилалд багтахаас үл хамааран дараах гишүүдтэй байж болно. Үүнд:

  1. Талбарууд /fields/ - Энд төрөлд удирдаж байх өгөгдлүүд хадгалагдана.
  2. Аргууд /Methods/ - Төрөл өөрийн талбарууд болон бусад өгөгдлүүд дээр хийж болох үйлдлүүд.
  3. Шинжүүд /Properties/ - Энэ бол төрлийн талбаруудтай илүү эвтэйхэн хандан ажиллах тусгай хэрэгсэл
  4. Үйл явдлууд /Events/ - Энэ нь төрөл өөртөө орсон өөрчлөлтийг бусад төрлүүдэд мэдэгдэх тусгай хэрэгсэл.
  5. Төрлийн байгуулагч /Constructor/ - Шинэ төрлийг үүсгэхэд дуудагдах тусгай арга.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

функцийн интервал дахь хамгийн бага утгыг ол.

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

 

Зөв дөрвөн өнцөгт пирамидын өндөр 4. Хажуу ирмэг суурийн хавтгайд 30 градусын өнцгөөр налсан бол пирамидын хажуу ирмэгийг ол.

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

 

бол M·N=?

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