2021-yilda qaysi dasturlash tilini o’rganish kerak?

2021-yilda qaysi dasturlash tilini o'rganish kerak
Telegramda o'qish

Ushbu maqola 2021 yilda qaysi dasturlash tilini oʻrganish afzal, uning xususiyatlari qanday va highload ning bundagi oʻrni haqida.

Hozirgi kunda dasturlash tillari juda koʻp: ba’zilari universal, ba’zilari aniq vazifalar uchun. IT-bozoridagi mavjud tendensiyalarga asoslanib, C++ dasturlash tilini oʻrganishni maslahat beraman.
Nima uchun C++ tilini oʻrganish kerak?
Hozirda koʻpgina kompaniyalar yuqori yuk ostidagi bir yoki bir nechta servis-loyihalarga ega. Ha, bu yukni muvozanatlashtirish mumkin, masalan, ma’lumotlar bazasini parchalash yoki boshqa vositalar yordamida. Lekin C++ tili kompyuteringiz imkoniyatidan toʻlaligicha foydalanadi, shu bilan birga yuqori darajadagi til sifatida qoladi. Gap shundaki, C++ tiliga kirish murakkabligi sababli koʻpchilik abstraktsiya darajasining yuqoriroq tillarini tanlaydi, shuning uchun mehnat bozorida C++ dasturchilarining yetishmovchiligi mavjud.
C++ dasturlash tiliga talab qanchalik yuqori?
Soʻnggi bir necha yil ichida YouTube qanday oʻzgarganiga e’tibor berish kifoya. Uning trafikni qayta ishlash hajmi keskin oʻsib bormoqda. Va bunday misollar juda koʻp. Serverlarni vertikal masshtablash “chegarasiga yetganda”, gorizontal ravishda masshtablashning imkoni yoʻq, u holda C++ tili yordamga kelishi mumkin. Ushbu til C tilining toʻgʻridan-toʻgʻri vorisi boʻlganligi sababli, biz kompyuterdan maksimal darajada foydalangan holda keng koʻlamli optimallashtirishlarni olamiz.
Shu bilan birga, C++ faol rivojlanishda davom etmoqda: kod yozishni soddalashtirish uchun mexanizmlar va vositalar qoʻshilmoqda. Agar bu tendensiya davom etsa, biz kirish chegarasining pasayishini koʻrishimiz mumkin, bu esa eng mashhur tillar reytingida C++ tilining oʻrnini sezilarli darajada yaxshilaydi. Va shu vaqtda “yuqori tajribali” mutaxassis boʻlgan yaxshi.
Boshqa tillarga nisbatan C++ qanday ustunliklarga ega?
C++ ning asosiy xususiyatlaridan biri — xotira bilan ishlashi va bu uning ham minusi ham plyusi. C++ C tilining vorisi boʻlganligi sababli, xotirani toʻgʻridan-toʻgʻri boshqarish imkoniyati mavjud, bu sizning dasturingizning ish faoliyatini maksimal darajada oshiradi.
Masalan, Linux operatsion tizimida har bir sahifa taxminan 4KB dan iborat boʻlgan xotira ishlatiladi. Sizning ilovangiz 2 Gb xotiradan foydalanganda, sizga 2Gb/4KB sahifalar ajratiladi. Ushbu sahifalar fizik xotiraga joylashtiriladi.
Bularning barchasi virtualizatsiya uchun qoʻshimcha xarajatlarni talab qiladi, ammo bu juda katta afzalliklarga ega — sizning ilovangiz uchun zudlik bilan barcha xotira emas, balki ayni paytda zarur boʻlgan miqdori ajratiladi. Ammo agar sizning ilovangiz server resurslarining asosiy qismini egallagan boʻlsa, unda siz standart 4KB hajmdagi xotirani emas, balki, masalan, butun 2Gb hajmdagi xotirani ajratishingiz mumkin, bu bizga katta sahifalar doirasidagi kichik sahifama-sahifa joylash xarajatlardan xalos boʻlishga imkon beradi, ya’ni ilovamiz doirasidagi huge pages.
Shuni ham ta’kidlash joizki, C++ bizni obyektlar bilan ishlashda har xil turdagi xotira ajratuvchilaridan (allokatorlar) foydalanish imkoniyatini beradi.
Xotira ajratgichlari (allokatorlar) — bu kompyuter xotirasi resurslarini ajratish va boʻshatishning kichik detallarini realizatsiya qiladigan va oʻz ichiga oladigan ixtisoslashgan sinf. Ular, masalan, operatsion tizimga yangi xotira uchun takroriy murojaatlarni oldini olishga imkon beradi.
Ammo bu mexanizmning salbiy tomoni ham bor: xotira tugab qolishini diqqat bilan kuzatib borishingiz kerak. Axir kim xotirani ajratgan boʻlsa, u uni boʻshatishi kerak. Bu muammo ham C++ da hal qilingan. Buning uchun aqlli koʻrsatkichlardan foydalaniladi — dinamik ravishda ajratilgan xotirani boshqarish va uning boʻshatilishini (oʻchirilishini) ta’minlashga moʻljallangan sinf. Bu haqda oʻzingiz oʻqishingizni maslahat beraman, bu mexanizm juda qiziq.
Menimcha, C++ ning eng qiziq tomonlaridan biri bu vaqtinchalik obyektlarlarni nusxalash joyiga koʻchirish. Vaqtinchalik obyektlar — bu biror bir operatsiyalarni bajarish paytida yasalgan obyektlar. Qaytish qiymati bunday obyekt boʻlishi mumkin.

Понравилась статья? Поделиться с друзьями:
Baxtiyor.uz
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: