Habka Shaqo ee JavaScript Qurxiye & Yareeye
Qalabkani wuxuu dib u qaabeeyaa koodka JavaScript si uu u fududeeyo akhriskiisa ama u yareeyo xajmigiisa si uu u roranto si dhakhso leh. Waxaad koodka JavaScript ku dhejin kartaa ama ku qori kartaa qaybta gelinta, ka dibna waxaad dooran kartaa "Qurxi" si aad ugu darto fogaan xariiq iyo meelo banaan, ama "Yaree" si aad u tirtirto xarfaha aan loo baahnayn. Koodka la farsameeyey wuxuu ka soo muuqanayaa qaybta wax soo saarka ee akhriska keliya ah, halkaas oo aad ka soo dejisan karto ama aad ka koobiyeysan karto.
Farsamaynta koodka iyo yarayntiisu waxay si toos ah uga dhacdaa biraawsarkaaga dhexdiisa. Ma jiraan xog loo rorayo BroBroGo, taas oo hubinaysa in koodkaagu uu ku dhex jiro deegaankaaga gaarka ah. Qalabku wuxuu qaadi karaa kood xajmigiisu gaarayo ilaa 3,000,000 oo xarfo. Haddii xajmiga koodku uu ka bato xadkaas, qalabku wuxuu muujinayaa fariinta khaladaadka ee "Feylkan aad buu u weyn yahay in la fuliyo. Isku day mid ka yar.".
Qurxinta Koodha iyo Saamaynta ay ku Leedahay Akhriska
Ujeeddada qurxinta koodka (beautification) ee horumarinta JavaScript waa in dib loo habeeyo qaab-dhismeedka muuqaalka ee koodka iyada oo aan la beddelin hab-dhaqankiisa shaqo. Tani waxay si gaar ah waxtar u leedahay marka la baarayo kood la yareeyey ama la qariyey si loo fahmo habka uu u shaqeeyo.
Marka la dooranayo "Qurxi", waxaad go'aamin kartaa qaabka fogaanta xariiqda (indent style) ee aad doorbidayso:
- 2 spaces (2 meelood oo banaan)
- 4 spaces (4 meelood oo banaan)
- Tab
Qurxintu waxay dib u soo celisaa jebinta xariiqyada iyo kala-fogaanshaha habboon, taas oo u oggolaanaysa horumariyayaasha inay si fudud u dhex-galaan koodka, u falanqeeyaan khaladaadka, una dayactiraan mashaariicda. Si kastaba ha ahaatee, qurxintu ma aha "unminifying" dhammaystiran; in kasta oo ay koodka ka dhigto mid la akhrisan karo, ma awoodo inay dib u soo celiso magacyadii doorsoomayaasha ee asalka ahaa ama faallooyinkii la tirtiray intii lagu jiray habka yaraynta.
Yaraynta Koodha iyo Hagaajinta Waxqabadka Websaydhka
Yaraynta koodka (minification) waa farsamo muhiim u ah diyaarinta koodka loo dirayo deegaanka wax-soo-saarka (production). Habkani wuxuu meesha ka saaraa dhammaan walxaha aan saamaynta ku lahayn fulinta koodka ee mashiinka, sida meelaha banaan ee dheeriga ah, xariiqyada cusub, iyo faallooyinka. Tirtiridda walxahan waxay si weyn u yareysaa xajmiga feylka ee byte-yada UTF-8, taas oo keenta in feylku si dhakhso leh ugu soo dego biraawsarka isticmaalaha.
Inta lagu guda jiro yaraynta, qalabku wuxuu ilaaliyaa boorarka shatiga ee qaabkan u qoran /*! … */ si loo dhowro xuquuqda qoraaga. Haddii habka yaraynta ka dib uu koodku noqdo mid aan lahayn wax kood ah oo la fulin karo, qalabku wuxuu soo bandhigayaa fariinta "Waxba kama harin ka dib yaraynta — gelintu ma lahayn kood la fulin karo.". Marka yarayntu si guul leh u dhammaato, fariinta "Waa la yareeyey — {pct}% ka yar." ayaa soo baxaysa si ay u muujiso boqolleyda xajmiga laga dhimay feylkii asalka ahaa.
Maareynta Magacyada Doorsoomayaasha Gudaha
Marka aad doorato "Yaree", waxaad haysataa labo ikhtiyaar oo aad u qaabayn karto magacyada doorsoomayaasha gudaha (local variables):
| Ikhtiyaarka | Habka uu u shaqeeyo | Saamaynta Xajmiga | Faa'iidada |
|---|---|---|---|
| Gaabi | Wuxuu u beddelaa doorsoomayaasha gudaha hal xaraf. | Wuxuu keenaa xajmiga ugu yar ee suurtogalka ah. | Aad u habboon marka koodka loo dirayo isticmaalaha dhabta ah. |
| Hayso | Wuxuu u daayaa magacyada doorsoomayaasha sidoodii asalka ahaa. | Xajmiga feylku xoogaa wuxuu noqonayaa mid ka weyn kan la gaabiyey. | Waxay u fududaysaa akhriska iyo saxidda khaladaadka (debugging). |
Labada ikhtiyaarba waxay meesha ka saaraan meelaha banaan iyo faallooyinka, laakiin doorashada u dhaxeysa "Gaabi" iyo "Hayso" waxay ku xiran tahay haddii aad mudnaanta siineyso xajmiga ugu yar ama fududaanta akhriska koodka inta lagu jiro baaritaanka.
Xaddidnaanta Farsamaynta iyo Maareynta Khaladaadka
Qalabku wuxuu leeyahay xeerar adag oo lagu hubinayo in nidaamku uusan istaagin marka la farsamaynayo kood aad u weyn ama khaldan:
- Xadka Waqtiga: Haddii farsamaynta koodku ay qaadato waqti ka badan 20 ilbiriqsi, qalabku wuxuu joojinayaa shaqada wuxuuna muujinayaa fariinta "Taasi waxay qaadatay waqti aad u dheer waana la joojiyey — isku day feyl ka yar.".
- Khaladaadka Koodka: Haddii koodka la geliyey uu leeyahay khaladaad xagga naxwaha koodka ah (syntax error) oo ka horjoogsanaya qalabka inuu falanqeeyo, waxaa soo baxaysa fariinta "Waa la fulin waayey JavaScript-kan.".
- Masaxidda Xogta: Markaad gujiso "Masax", qalabku wuxuu tirtirayaa koodka ku jira qaybta gelinta iyo wax soo saarka, wuxuuna sidoo kale tirtirayaa qabyo-qoraal kasta oo kaydsanaa. Haddii gelintu ay madhan tahay, qalabku wuxuu ku jirayaa xaaladda "Ku dheji ama ku qor JavaScript si aad u qurxiso ama u yarayso.".
Su'aalaha Badanaa La Isweydiiyo
Waa maxay ku kala duwanaanshaha u dhexeeya qurxinta (beautify) iyo yaraynta (minify)?
Qurxinta (Beautify) waxay dib u habaysaa xariiqyada iyo fogaanta koodka si ay u fududaato akhriskiisa iyo dhex-galkiisu — habka ugu dhakhsaha badan ee lagu fahmi karo feyl la yareeyey ama la qariyey. Yaraynta (Minify) waxay samaysaa caksigeeda: waxay tirtirtaa meelaha banaan, faallooyinka iyo koodka aan la isticmaalin si feylku u soo dego si dhakhso leh. Qurxi si aad u akhrido, yareyna si aad u dirto.
Miyaa koodka la yareeyey dib loogu celin karaa koodkii asalka ahaa?
Waxay dib u soo celisaa fogaanta xariiqyada iyo jebinta xariiqyada si caqligoodu u noqdo mid la akhrisan karo mar kale, laakiin dib uma soo celin karto magacyadii doorsoomayaasha ee asalka ahaa ama faallooyinkii — yarayntu waxay tuurtaa kuwaas weligood, markaa qalabna dib uma soo celin karo. Waxa aad helaysaa waa koodkii oo kale, oo si cad u habaysan.
Maxay qabtaan ikhtiyaarada magaca ee Shorten (Gaabi) iyo Keep (Hayso)?
Labaduba waxay tirtiraan meelaha banaan, faallooyinka iyo koodka aan la gaari karin, midna ma beddelo waxa qoraalkaagu (script) qabanayo. Gaabi (Shorten) wuxuu kaloo u beddelaa doorsoomayaasha gudaha hal xaraf si loo helo feylka ugu yar ee suurtogalka ah — kan aad diri lahayd. Hayso (Keep) wuxuu uga tagayaa magacyadaada sida ay yihiin, markaa natiijadu xoogaa way ka weyn tahay laakiin wali waa la akhrisan karaa waana fududahay in la saxo khaladaadka.
Halkee lagu farsameeyaa koodka aan geliyo qalabka?
JavaScript-kaaga waxaa lagu qaabeeyaa laguna yareeyaa biraawsarkaaga dhexdiisa. Waxba looma rorayo BroBroGo, taas oo ka dhigan in koodkaagu uusan ka bixin kombiyuutarkaaga ama aaladda aad isticmaaleyso.