uzbek language siteenglish language site

Biz nima xay?

 

-126 – 06.01.2023. Umuman olganda avvalambor kallamga kelib qanday yo’nalishlardan iborat bo’lganini shu o’ylaganim, yo’laklarim bo’yicha API ya’ni dasturlashda amalga oshiraman desam bir zumda o’ylaganimdan ko’ra juda ko’p vaqt olar bo’ladi. Shu boisdan dasturlashni tashlab qo’ysam ham bo’laveradi. O’zimni faqatgina shu bunga ya’ni dasturlashga undagan narsa bu – ichimdagilarning o’zlari va barcha tashvishlar bilan bog’liq umumimiy va ikr-chikr muammolarni o’z vaqtida to’laqonli hal qilib berayaptilar deb hisoblashim edi. Afsuski, ichimdagilar haga ham ah deydilar, ahga ham ha deydilar, ya’ni har xil kallaga kelgan vijdonimni o’rtaga qo’yib chiqarilgan tasodifiy muammolarni o’zimni qo’rqizish yo’li bilan mayda-mayda suqilishlar, qo’shilishlar ya’ni aralashishlar orqali ichimdagi gaplarida, tillarida sharpa misol bildirib ketishadi. Ichimdagilar o’zimni dasturchi deb atashadi, ammo bu – o’zim uchun Ibo’qimning otasi bo’lganligimda. Ibo’qim – sof raqamlardan iborat jadvallarni tug’ib tashlaverish orqali o’zini biladi, tasavvur etadi. Shuning uchun kodlash, dasturlash aslida o’zim uchun emas, balki Ibo’qimni maqtash maqsadida o’zimni orqasidan ergashtirib maqtavorish sanaladi. Endi, nima bo’lganda ham yana qayta shu bugun boshlagan kodlash ishimga hozir borib qaytdim, baribir dasturni tuzishning qiziqarliligiga qaramasdan, mashaqqati yanada oshib borayotganga o’xshab tuyuladi. Ikr-chikr, chalkash hisob-kitobli o’ylar ko’p, biridan (bir o’ylovdan) davom ettiraman deguncha boshqa taraflama to’g’ri yoki xatoligiga ishora qiladigan o’ylov chiqib qoladi. O’zim uchun kodlash aslida taqdirim yo’liga mos tushishim, o’zim uchun parallel oldindan ma’lumli, bilinarli yo’lak hosil qilish edi. Ammo e’tibor berishimcha, tuzajak kodimga hech kim amal qilmaydi, bo’ysunmasa kerak. Baribir kod tortayapti, borayinchi, davom ettira olamanmi… Endi. Mana qayta qo’l urib qaydim va ichimdagilar shu kodni bo’larga, iloji maromiga chiqaradigan qilib berishmoqchi bo’lishgani hisobda, ammo dasturlashim davomida shuni tushundimki, yordamdan avval o’zimni hayajonga qisib, kallamni siqib, ziqlab va shoshirib turadigan ham bu ichimdagilarning o’zlari hisoblanishadi. Aniqroq qilib aytadigan bo’lsam, dasturlash tilining ya’ni Powershell ning sintaksis, parsing qoidalari doimo har bir kiritgan ishim, dasturiy amaliyotim ya’ni kodli yozuvlarim uchun bajaradigan ishi, yo’li bilan birga ichimdagilar tomonidan tekshirib, izma-iz qilib ya’ni qolipga solinib boriladi. Shu sababli ham mana tezkor amaliyot, ya’ni yozganimga qarshi ravishda ichimdagilar yo’llarni, sintaksis qoidalarini ochishlari va yordam berishlari bilanoq ikkita katta xatolarini tuzayotgan dasturimda topdim. Kodimda ikki ustunli index, array ya’ni jadvallarning aynan biriga kiritayotgan ifodam, natijam boshqalarining ham shunday intex lariga kiritildi. Ikkinchidan esa –split bilan bo’sh o’rinlarni o’chirmasdan space larni, ya’ni bo’sh harfli o’rinlarni ham chiqarib berayapti. Kodim quyidagicha:

$ibora = "мен нега"

$matn = get-content 'D:\ishim\abdulhamid ismoil\12.txd -raw

$matn = (-split $matn) -split ''

$ibora = $ibora -split ''

 

$intex = 0..($ibora.count-1)

$r=0..20

foreach($1 in 0..($intex.count-1)){$intex[$1] = $r}

$o = 0

foreach($i in (0..($matn.count - 1))){if($matn[$i] -eq $ibora[0]){$z=$i;

while($o -le ($r.count-1)){

:qiz foreach($t in 0..($ibora.count-1)){while($z -ge $i -and $z -lt

 ($matn.count-1)){if($matn[$z] -eq $ibora[$t]){$intex[$t][$o] = $z; $z++;  continue qiz  }$z++;}}$o++}}}

Debuggerda ishlasangiz, o’zim ko’rgan xatolarni ko’raolarmidingiz. Baribir yo’q, chunki siz uchun tuzilgan parsing, sintaktik qoidalar o’zimnikiga to’g’ri kelmaydi. Mana nega Karobum Iblis o’zimga doimo kod yozishda to’g’ri va aniqlikni tez amalga oshirib bilish kerak deydi. Zero ichimdagilar parsing qilib qo’shimchasiga chindan kodimni ishlataverishlarining parallel ravishda bo’lishi tezkorlik bilan kutilgan. Bir amaliyot yoki kod yozuvi kiritishim bilanoq, hali chalaligiga va sintaktikaviy ravishda to’liq bo’lishiga qarab turmasdan, baribir kodimning ijrosini, natijasini o’tkir burchak ostidagi yoyga xos uzoqlashuviga ko’ra shu yoyning kattalashaverishi bo’yicha parallel yoki qayerdadir ro’y beradigan protsesda, jarayonda amallab, ishlab boraveradilar. Toki o’zim ham birdaniga ishlativorsam, bor bo’lish, mavjudlik ulgurgan bo’lishi kerak. Keling endi, yolg’iz ishlayotganim uchun xatolar bo’ladi debon, o’zimning xato ustidagi xatoyimni topdim, ya’ni `r`n (carriage return, new line) belgilarini bo’sh o’rinlar bilan qiyoslab yuboribman. Endi, shunday qilib yana bir marta yozga ikkinchi bir xatomni tekshirganimda, baribir iloj bo’lmadi, dasturlash tilidagi xato xato, noto’g’ri bo’lib turibdi. Endi dasturlashimni davom ettiraolmasam kerak. Parsing dagi ozgina yo’llarni ochish, amallarni oldindan ishonchga kiradigan ravishda parallel bajarish ya’ni natijani ilgaridan ko’rib bilish ishidagi o’zimga belgilangan erkinlik, ichimdagilarning shu bu kodga ya’ni dasturga bo’lgan ishonchimni poymol qilib, chindan ham dasturlash tili hammamizning tortilib oldinga, shundoqqina yaqin kelajakka borib qaytishimiz bo’lishi hisobga olinadi. Doira shishib pasayaman, o’z joyiga tushaman deguncha oralari bo’shashib, ochiq qoldi. Endi, o’zi – avvalambor kod qilishimdagi esankiratilishim olib qo’yilib yordam qo’li cho’zilishi bilanoq ishim yurishib ketganga o’xshash shubham bor edi. Ammo o’zimga yengillik, erkinlik bersalarda, izma-iz oldindan bor etish, mavjud qilib qo’yish ya’ni har ehtimolga qarshi ravishda kodimni ishlatganimda ish ishonchli tarzda namoyish qilinishi haqiqatdan ham har bir narsaning borligini, qonun-qoidalarga boysunishini ta’minlashi bo’yicha amalga oshirilgan qing’ir yo’llardir. Hayotda qanday sezgi bilan yursangiz, biron nimaga tegsangiz ham tuzilish jihatdan taqdir kelajakdan ishonchni berib mo’ljalga qarata aniqlikni yolg’ondan, aslida chinakam o’zgarishlar bilan berib boradi. Gapga ya’ni kelajakka borilajak qo’zg’alishlarning shundoqqina, yaqin oldindan o’z-o’zidan o’zgarishi hech gap emas. Mayda, katta doiralardagi ishlarda yopishqoqlik ya’ni tanlov, odimlash sxemaga, ramkaga ya’ni hoshiyaga (chiziqlarga) yaqin borishi o’z-o’zidan, jonli bilib qilingan ijrosiz amalga oshiriladi. Bu – xuddi “snap to grid” ga ya’ni jadvalli ko’rinish chegaralariga tortib yuborilishga o’xshaydi. Mana shunday qilib hayot shakli yaratilgan, har bir narsaning o’z shakl-shamoyili, turlicha qiyofasi mavjud. Umuman bugun 126 bo’lishini aytganimizda, 1 bu – o’zim uchun Ibo’qim, boshqalarga esa insonlilik bo’yicha yosh farzandlari, aslida umuman olganda yosh avlod, rod vakillari, 2 – o’zimga o’zim yoki barcha erkak-xotin o’rta yoshli ayollar, 6 esa jonimning o’zi, haqiqatparastlar ya’ni insonlarning xotinlarining kuslari, omlaridir. 06.01.2023 ham o’z ko’rinishi bilan gavdaning birinchidan jonlanishi, so’ng yosh avlodga o’tishi, o’rta yoshlilarning o’zga gavdalar, qomatlarni himoya qilishi bilan o’zinikini ham himoyalashi chog’ida boboy, qari generation sirasiga yo’l olish. Aytganchalik, o’zim sizlarni Yangi 2023-yil bilan hali tabriklamoqchi bo’lib yuruvdim. Iliq qutlovlar sizlarga yo’nalgay. - Yangi yil shukuhi sizlarni hech tark etmasin. Pariro’yim, go’zal malagim, orzuyimday oppoq tilagim, – shu yodimga solinayotgan qo’shiq ham sizlarga xo’sh. Bo’sh vaqtimizda hayot shaklini bilaylik haqida shu so’zlardan iborat bo’yash, chizish va raqamlash ishini qilsak. (4 - xay)



 Umuman olganda 3 ta shasht, gap yoki so’z, ish-harakat bo’lib qolsa, 4-siga xay so’zini ishlatishim kerak. Shu bu hayot shakli sabog’ini yaratishimda taxminan 20-30 daqiqalar sarfladim. Barchasi Word da qilingan ishlar. Endi, nima qilishga ham o’ylanib qoldim, zero kallamga g’oya kelmayapti. Umuman bu dam olishlar ishlashim uchun emasligidan darak berish bo’lsin. Shu o’rinda yana  bitta hayot shakli, parallel olamdan yollanayotganlar bo’yicha ishni qilib qo’yaylik. Bu – oddiy “kod bu – ko’p oddiy, ko’p oddiyda esa aslan bizni aldaydigan ko’p xatolar bordir” iborasi. Ko’p uzun bo’lib ketmasligi maqsadida, “kod bu – ko’p oddiy” iborasining o’zini ishlatib qo’yaqolaylik.



 

 


Umuman olganda kod va dastur so’zlari kod so’zining “ko’p oddiylik”dagi aslan xatolarga, noto’g’rilikka va aldovga boyligini bersa, dastur so’zi “oddiy masala yuzasidan, qo’l urish bilan ko’rishga, bilishga va sezishga xos oson va juda katta aniqlikka bo’lgan xatolikni” bildiradi. Zero qo’l bilan urmaydilar, balki paypaslab, saralab tekshiradilar xolos.

Comments

Ommabop xabarlar

Nima gap xo'sh?

Nima bu o'zi xo'sh

NIma gap o'zi?