Ամսական պահոցներ՝ Սեպտեմբերի 2024

Հիպերմեդիա համակարգերը եւ Հայաստանեան կայքերը

մի քանի շաբաթ առաջ կարդացի Hypermedia Systems գիրքը, ու պէտք ա ասել որ երբէք այսքան կպնող գիրք չեմ կարդացել։ Խօսքը իհարկէ ՏՏ գրքերի մասին է։

եթէ վերջին տաս տարում մի բան կար, որ շատ էր խանգարում ինձ, դա այսպէս կոչուած front-end ծրագրաւորման աշխարհն էր։ ամէն ինչ ահագին բարդ ա սարքած։

Երբ ես որոշեցի front-end ծրագրաւորում սովորել, այսինքն կոդ գրել բրաուզերի համար, ապա շատ հեշտ էր ամէն բան։ բացում էի մի հատ ֆայլ ու մէջը գրում էի ինչ ուզում եմ որ իմ ծրագիրը կատարի։ ապա էդ ֆայլը աւելացնում էի օգտագործելով <script> պիտակը։ ահագին պարզ ու հանգիստ պրոցես ա։

Բայց յետոյ ինչ֊որ պատճառով բրաուզերի ծրագրաւորումը սկսեց բարդանալ։ էլ չէիր կարող ուղղակի <script> պիտակը օգտագործել։ չէ, չէ։ պէտք էր ինչ որ bundler ունենայիր որը քո JS ֆայլերը կը «սեղմի» ու կը դարձնի մի հատ անհասկանալի ֆայլ։

Յետոյ եկաւ 2015 թուականը, եւ մարդիկ սկսեցին օգտագործել React֊ը, որը ոչ թէ աշխատում էր HTML֊ի հետ, այլ ստանում էր JSON տուեալներ ու դրա հիման վրայ նկարում էր էկրանին ինչ֊որ միջերես։

Չեմ ուզում շատ խորանալ այս թեմայով, ի վերջոյ՝ Hypermedia Systems գիրքը շատ լաւ բացատրում ա ամէն ինչ։

Բայց նման գրքերը ինձ միշտ յիշացնում են Հայաստանի մասին։ բացատրեմ.

մենք շատ փոքր երկիր ենք։ Ինչքան էլ ասենք, որ մեր մօտ ՏՏ ոլորտը զարգացած ա, մէկ ա մեր մօտ միշտ հետ ա լինելու աշխարհից։ Մեր ֆինանսական կարողութիւնները թոյլ չեն տալիս խմբերով ծրագրաւորողներ պահել մի հատ ֆորմի ու մի հատ վճարման համակարգից օգտուելու համար։

Սա նաեւ գլխաւոր պատճառներից ա, թէ ինչու եմ սիրում Open Source լուծումները։ Խոշոր կոմերցիոն կազմակերպութիւնները չեն մտածում մեր մասին, սակայն մենք կարող ենք փոքր համայնքներին ֆինանսաւորել եւ ստանալ աւելի լաւ արդիւնք, քան խոշորները երբեւէ կարող են։ փոքր ու ապակենտրոնը միշտ աւելի լաւ ա աշխատում քան խոշորն ու «չէ իրականում էս բագ չի ֆիչր ա մենք չենք կարող դա ուղղել այս վերսիայում»֊ը։

Նոյնը, ըստ երեւոյթին, վերաբերւում է վեբ ծրագրաւորման մասին։

Այս պահին մի քանի հոգի մարդ է պէտք։ մէկը որ բիզնես լոգիկայ գրի, մէկը որ JSON֊ական բաներ գեներացնի, մէկն էլ որ էդ JSON֊ները ստանայ, ու միջերեսը նկարի։

Հարց է առաջանում՝ մինչեւ JSON API֊ները ի՞նչ էինք անում։ Ո՞նց էինք ստեղծում վեբ միջերեսներ։

Անում էինք այն, ինչ ճիշտ էր՝ ուղղակի ուղարկում էինք HTML֊ը սերւէրից դէպի բրաուզեր, ու ամէն ինչ ճիշտ աշխատում էր։

Կային (ու մինչեւ հիմա կան) շատ լաւ գրադարաններ, ինչպիսին ա jQuery֊ն, որը ինչ֊որ մի ձեւ հեշտացնում էր ծրագրաւորողի գործը։ ինքը իմպերատիւի ու դեկլարատիվի միջեւ է ընկնում։

Բայց Hypermedia Systems գրքի հեղինակները առաջարկում են նոր մօտեցում, նոր գրադարան, որը կոչւում է HTMX։

Առաջին հայեացքից ակնյայտ չի ինչ ա, բայց մի քանի վայրկեան կարդալուց յետոյ պարզ է դարնում որ ինքը ուղղակի դեկլարատիվ կտորներ է աւելացնում HTML֊ի վրայ։

Ասենք ուզում ես ինչ որ տեղ ուղարկել ինչ֊որ GET յայց ու դրա պատասխանը ուզում ես մի տեղ դնել։ Կամ նոյնիսկ ուզում ես ինչ֊որ ֆայլ ուղարկել POST֊ով ու պատասխանը ցոյց տալ։ առաջ պէտք էր կամ խառը JavaScript գրել, կամ jQuery։ Իսկ հիմա կարող եմ ուղղակի գրել հետեւեալը։

<form hx-encoding='multipart/form-data' hx-post='/submit’>
<input type='file' name=‘file’>
<button>Upload</button>
</form>

ուզում ա ասել, որ երբ Upload կոճակն ես սեղմում, ապա ֆայլը ուղարկի դէպի /submit օգտագործելով POST մեթոդը։

Այս մօտեցումը ինձ էնքան դուր եկաւ, որ որոշեցի վերջում, մի քանի ընկերների համար արագի մէջ կայք պատրաստել՝ arm2txt (source), որը ստանում է նկարներ եւ PDF֊ներ հայերէն տեքստով եւ վերադարձնում ա հայերէն տեքստ, ու NetAdoption (source), CERT-AM֊ի նոր նախագծերից մէկն ա, որը ստուգում ա IPv6֊ն ու DNSSEC֊ը։

Ինձ շատ ա դուր գալիս որ մի ժամուայ ընթացքում կարողանում եմ արագի մէջ կայք հաւաքել ու ինձ շատ շատ ա դուր գալիս, որ սա կատարւում ա մի ֆայլանոց գրադարանի կողմից։

Ինձ թւում ա պէտք ա խօսել նման բաների մասին Հայաստանում։ Մեզ պէտք չեն թանկ ու կրակ արտադրանքներ։ Մեզ պէտք են պարզ եւ էժան լուծումներ։

Ասանկ բաներ…

Պատասխանել մեյլով