Iye owo ti awọn ilana JavaScript

Ko si ọna ti o yara lati fa fifalẹ oju opo wẹẹbu kan (ko si pun ti a pinnu) ju lati ṣiṣẹ opo ti koodu JavaScript lori rẹ. Nigbati o ba nlo JavaScript, o ni lati sanwo fun ni iṣẹ akanṣe o kere ju igba mẹrin. Eyi ni ohun ti koodu JavaScript ti aaye naa gbe awọn eto awọn olumulo pẹlu:

  • Ikojọpọ faili lori nẹtiwọki.
  • Ṣiṣakojọpọ ati ṣajọ koodu orisun ti a ko tii lẹhin igbasilẹ.
  • Ṣiṣe koodu JavaScript.
  • Lilo iranti.

Yi apapo wa ni jade lati wa ni gidigidi gbowolori.

Iye owo ti awọn ilana JavaScript

Ati pe a wa pẹlu koodu JS diẹ sii ati siwaju sii ninu awọn iṣẹ akanṣe wa. Bi awọn ajo ṣe nlọ si awọn aaye ti o ni agbara nipasẹ awọn ilana ati awọn ile ikawe bii React, Vue ati awọn miiran, a n jẹ ki iṣẹ ṣiṣe pataki ti awọn aaye naa dale lori JavaScript.

Mo ti rii ọpọlọpọ awọn oju opo wẹẹbu ti o wuwo pupọ nipa lilo awọn ilana JavaScript. Ṣugbọn mi iran ti oro jẹ gidigidi abosi. Otitọ ni pe awọn ile-iṣẹ ti Mo ṣiṣẹ pẹlu wa si mi ni pipe nitori wọn ni awọn iṣoro iṣẹ ṣiṣe oju opo wẹẹbu eka. Bi abajade, Mo ni iyanilenu lati mọ bi iṣoro yii ṣe tàn kalẹ, ati “awọn itanran” wo ni a san nigba ti a yan ilana kan tabi miiran bi ipilẹ fun aaye kan.

Yi ise agbese iranwo mi ro ero yi jade. HTTP Ile ifi nkan pamosi.

Data

Iṣẹ akanṣe HTTP Archive tọpa apapọ awọn ọna asopọ 4308655 si awọn oju opo wẹẹbu deede ati awọn ọna asopọ 5484239 si awọn aaye alagbeka. Lara ọpọlọpọ awọn afihan ti o ni nkan ṣe pẹlu awọn ọna asopọ wọnyi ni atokọ ti awọn imọ-ẹrọ ti a rii lori awọn aaye ti o baamu. Eyi tumọ si pe a le ṣe ayẹwo awọn ẹgbẹẹgbẹrun awọn aaye ti o lo awọn ilana oriṣiriṣi ati awọn ile-ikawe ati kọ ẹkọ iye koodu ti wọn firanṣẹ si awọn alabara ati iye fifuye ti koodu fi sori awọn eto awọn olumulo.

Mo gba data lati Oṣu Kẹta ọdun 2020, eyiti o jẹ data aipẹ julọ ti Mo ni iwọle si.

Mo pinnu lati fiwera akopọ data Archive HTTP fun gbogbo awọn aaye pẹlu data fun awọn aaye ti a rii pe o nlo React, Vue, ati Angular, botilẹjẹpe Mo gbero lilo awọn ohun elo orisun miiran daradara.

Lati jẹ ki o nifẹ diẹ sii, Mo tun ṣafikun awọn aaye ti o lo jQuery si ipilẹ data orisun. Ile-ikawe yii tun jẹ olokiki pupọ. O tun ṣafihan ọna kan si idagbasoke oju opo wẹẹbu ti o yatọ si awoṣe Ohun elo Oju-iwe Nikan (SPA) ti a funni nipasẹ React, Vue ati Angular.

Awọn ọna asopọ ni Ibi ipamọ HTTP ti o nsoju awọn aaye ti o ti rii pe o nlo awọn imọ-ẹrọ ti iwulo si wa

Framework tabi ìkàwé
Ìjápọ si mobile ojula
Awọn ọna asopọ si awọn aaye deede

Ìbòmọlẹ
4615474
3714643

Idahun
489827
241023

Wo
85649
43691

angula
19423
18088

Ireti ati ala

Ṣaaju ki a lọ siwaju si itupalẹ data, Mo fẹ lati sọrọ nipa ohun ti Emi yoo fẹ lati nireti fun.

Mo gbagbọ pe ni agbaye pipe, awọn ilana yoo kọja ipade awọn iwulo ti awọn olupilẹṣẹ ati pese diẹ ninu awọn anfani to wulo si awọn olumulo lojoojumọ ti awọn aaye wa. Ise sise jẹ ọkan ninu awọn anfani wọnyẹn. Wiwọle ati ailewu tun wa si ọkan nibi. Ṣugbọn eyi nikan ni ohun pataki julọ.

Nitorinaa, ni agbaye pipe, iru ilana yẹ ki o jẹ ki o rọrun lati ṣẹda oju opo wẹẹbu iṣẹ giga kan. Eyi yẹ ki o ṣee ṣe boya nitori otitọ pe ilana naa fun olupilẹṣẹ ni ipilẹ to dara lori eyiti o le kọ iṣẹ akanṣe kan, tabi nitori otitọ pe o fi awọn ihamọ si idagbasoke, fifi awọn ibeere siwaju fun rẹ ti o jẹ ki o nira lati ṣe idagbasoke nkan kan. ti o wa ni jade lati wa ni o lọra.

Awọn ilana ti o dara julọ yẹ ki o ṣe awọn mejeeji: pese ipilẹ to dara, ati fi awọn ihamọ si iṣẹ ti o gba ọ laaye lati ṣaṣeyọri abajade to dara.

Ṣiṣayẹwo awọn iye agbedemeji ti data kii yoo fun wa ni alaye ti a nilo. Ati, ni otitọ, ọna yii lọ kọja akiyesi wa ọpọlọpọ awọn nkan pataki. Dipo, Mo gba awọn ikun ogorun lati inu data ti Mo ni. Iwọnyi ni 10, 25, 50 (agbedemeji), 75, 90 ogorun.

Mo nifẹ paapaa si awọn ipin 10th ati 90th. Ida ọgọrun 10 duro fun iṣẹ ti o dara julọ (tabi o kere ju diẹ sii tabi kere si ti o dara julọ) fun ilana kan pato. Ni awọn ọrọ miiran, eyi tumọ si pe 10% nikan ti awọn aaye ti nlo ilana kan pato de ipele yii, tabi ipele ti o ga julọ. 90th ogorun, ni apa keji, jẹ apa keji ti owo - o fihan wa bi awọn ohun buburu ṣe le jẹ. Ida ogorun 90th ni awọn aaye itọpa — awọn ti o kẹhin 10% ti awọn aaye ti o ni iye ti o tobi julọ ti koodu JS tabi akoko ti o gun julọ ti o nilo lati ṣe ilana koodu wọn lori okun akọkọ.

Awọn iwọn didun ti JavaScript koodu

Lati bẹrẹ pẹlu, o jẹ oye lati ṣe itupalẹ iwọn koodu JavaScript ti o tan kaakiri nipasẹ awọn aaye oriṣiriṣi lori nẹtiwọọki naa.

Iye koodu JavaScript (KB) ti o gbe lọ si awọn ẹrọ alagbeka

Awọn ipin ogorun
10
25
50
75
90

Gbogbo ojula
93.4 
196.6 
413.5 
746.8 
1201.6 

jQuery ojula
110.3 
219.8 
430.4 
748.6 
1162.3 

Vue awọn aaye ayelujara
244.7 
409.3 
692.1 
1065.5 
1570.7 

Awọn oju opo wẹẹbu angula
445.1 
675.6 
1066.4 
1761.5 
2893.2 

Fesi awọn aaye ayelujara
345.8 
441.6 
690.3 
1238.5 
1893.6 

Iye owo ti awọn ilana JavaScript
Iye koodu JavaScript ti a fi ranṣẹ si awọn ẹrọ alagbeka

Iye koodu JavaScript (KB) ti a gbe lọ si awọn ẹrọ tabili

Awọn ipin ogorun
10
25
50
75
90

Gbogbo ojula
105.5 
226.6 
450.4 
808.8 
1267.3 

jQuery ojula
121.7 
242.2 
458.3 
803.4 
1235.3 

Vue awọn aaye ayelujara
248.0 
420.1 
718.0 
1122.5 
1643.1 

Awọn oju opo wẹẹbu angula
468.8 
716.9 
1144.2 
1930.0 
3283.1 

Fesi awọn aaye ayelujara
308.6 
469.0 
841.9 
1472.2 
2197.8 

Iye owo ti awọn ilana JavaScript
Iye koodu JavaScript ti a gbe lọ si awọn ẹrọ tabili

Ti a ba sọrọ nikan nipa iwọn koodu JS ti awọn aaye fi ranṣẹ si awọn ẹrọ, lẹhinna ohun gbogbo dabi bi o ṣe le nireti. Eyun, ti o ba ti lo ọkan ninu awọn ilana, eyi tumọ si pe paapaa ni ipo pipe, iwọn didun koodu JavaScript fun aaye naa yoo pọ si. Eyi kii ṣe iyalẹnu - o ko le ṣe ilana JavaScript ipilẹ ti aaye kan ati nireti pe iye koodu JS fun iṣẹ akanṣe yoo kere pupọ.

Ohun ti o ni iyanilenu nipa data yii ni pe diẹ ninu awọn ilana ati awọn ile-ikawe le jẹ awọn aaye ibẹrẹ ti o dara julọ fun iṣẹ akanṣe ju awọn miiran lọ. Awọn oju opo wẹẹbu pẹlu jQuery wo dara julọ. Awọn aaye tabili tabili wọn ni 15% diẹ sii JavaScript ju gbogbo awọn aaye lọ, ati pe awọn aaye alagbeka wọn ni 18% JavaScript diẹ sii. (Lati gba, diẹ ninu awọn skew wa ninu data nibi. Otitọ ni pe jQuery wa lori ọpọlọpọ awọn aaye, nitorinaa o jẹ adayeba pe iru awọn aaye yii ni ibatan pẹkipẹki si nọmba lapapọ ti awọn aaye ju awọn miiran lọ. Sibẹsibẹ, eyi ko ni ipa bi o ṣe le ṣe. data orisun ti jade fun ilana kọọkan.)

Lakoko ti 15-18% idagbasoke koodu jẹ nọmba pataki, nigba ti a bawe si awọn ilana ati awọn ile-ikawe miiran, owo-ori ti a paṣẹ nipasẹ jQuery jẹ kekere pupọ. Awọn aaye angula ni ipin 10th firanṣẹ data 344% diẹ sii si awọn ẹrọ tabili ju gbogbo awọn aaye lọ, ati 377% diẹ sii si awọn ẹrọ alagbeka. Awọn aaye idahun jẹ atẹle ti o wuwo julọ, fifiranṣẹ koodu 193% diẹ sii si awọn ẹrọ tabili ju gbogbo awọn aaye lọ, ati 270% diẹ sii si awọn ẹrọ alagbeka.

Mo ti mẹnuba tẹlẹ pe botilẹjẹpe lilo ilana kan tumọ si pe iye koodu kan yoo wa ninu iṣẹ akanṣe ni ibẹrẹ iṣẹ lori rẹ, Mo nireti pe ilana naa ni anfani lati bakan ṣe idinwo idagbasoke idagbasoke. Ni pato, a n sọrọ nipa diwọn iye koodu ti o pọju.

Ohun ti o yanilenu ni pe awọn aaye jQuery tẹle imọran yii. Botilẹjẹpe wọn, ni ipele ogorun 10th, wuwo diẹ diẹ sii ju gbogbo awọn aaye lọ (nipasẹ 15-18%), wọn, ni ipele 90th ogorun, fẹẹrẹ diẹ ju gbogbo awọn aaye lọ - nipa bii 3% ni tabili mejeeji ati awọn ẹya alagbeka. Eyi kii ṣe lati sọ pe eyi jẹ anfani pataki pupọ, ṣugbọn o le sọ pe awọn aaye jQuery o kere ju ko ni awọn titobi koodu JavaScript nla paapaa ni awọn ẹya ti o tobi julọ.

Ṣugbọn kanna ko le sọ nipa awọn ilana miiran.

Gẹgẹ bi ninu ọran ti 10th percentile, ni awọn aaye ogorun 90th lori Angular ati React yatọ si awọn aaye miiran, ṣugbọn wọn yatọ, laanu, fun buru.

Ni ogorun 90th, awọn aaye Angular firanṣẹ data 141% diẹ sii si awọn ẹrọ alagbeka ju gbogbo awọn aaye lọ, ati 159% diẹ sii si awọn ẹrọ tabili tabili. Awọn aaye idahun firanṣẹ 73% diẹ sii si awọn ẹrọ tabili ju gbogbo awọn aaye lọ, ati 58% diẹ sii si awọn ẹrọ alagbeka. Iwọn koodu ti awọn aaye React ni ipin 90th jẹ 2197.8 KB. Eyi tumọ si pe awọn aaye wọnyi firanṣẹ data 322.9 KB diẹ sii si awọn ẹrọ alagbeka ju awọn oludije orisun Vue ti o sunmọ wọn. Aafo laarin awọn aaye tabili tabili ti o da lori Angular ati React ati awọn aaye miiran paapaa tobi julọ. Fun apẹẹrẹ, awọn oju opo wẹẹbu React firanṣẹ koodu JS diẹ sii 554.7 KB si awọn ẹrọ ju awọn aaye Vue ti o jọra lọ.

Akoko ti o gba lati ṣe ilana koodu JavaScript lori okun akọkọ

Awọn data ti o wa loke tọka si kedere pe awọn aaye ti nlo awọn ilana ati awọn ile-ikawe ti a ṣe iwadi ni iye nla ti koodu JavaScript. Ṣugbọn, dajudaju, eyi jẹ apakan kan nikan ti idogba wa.

Lẹhin koodu JavaScript ti de ẹrọ aṣawakiri, o nilo lati mu wa sinu ipo iṣẹ. Paapa ọpọlọpọ awọn iṣoro ni o ṣẹlẹ nipasẹ awọn iṣe wọnyẹn ti o ni lati ṣe pẹlu koodu ni okun aṣawakiri akọkọ. O tẹle ara akọkọ jẹ iduro fun sisẹ awọn iṣe olumulo, iṣiro awọn aza, ati kikọ ati iṣafihan ifilelẹ oju-iwe naa. Ti o ba bori okun akọkọ pẹlu awọn iṣẹ-ṣiṣe JavaScript, kii yoo ni aye lati pari awọn iṣẹ ṣiṣe miiran ni ọna ti akoko. Eyi nyorisi awọn idaduro ati "brakes" ni iṣẹ ti awọn oju-iwe.

Ibi data ipamọ HTTP ni alaye nipa bi o ṣe pẹ to lati ṣe ilana koodu JavaScript lori okun akọkọ ti ẹrọ V8. Eyi tumọ si pe a le gba data yii ati kọ ẹkọ iye akoko ti okun akọkọ gba lati ṣe ilana JavaScript ti awọn aaye oriṣiriṣi.

Akoko Sipiyu (ni milliseconds) ti o ni ibatan si sisẹ iwe afọwọkọ lori awọn ẹrọ alagbeka

Awọn ipin ogorun
10
25
50
75
90

Gbogbo ojula
356.4
959.7
2372.1
5367.3
10485.8

jQuery ojula
575.3
1147.4
2555.9
5511.0
10349.4

Vue awọn aaye ayelujara
1130.0
2087.9
4100.4
7676.1
12849.4

Awọn oju opo wẹẹbu angula
1471.3
2380.1
4118.6
7450.8
13296.4

Fesi awọn aaye ayelujara
2700.1
5090.3
9287.6
14509.6
20813.3

Iye owo ti awọn ilana JavaScript
Akoko Sipiyu ti o ni ibatan si sisẹ iwe afọwọkọ lori awọn ẹrọ alagbeka

Akoko Sipiyu (ni awọn iṣẹju-aaya) ti o ni ibatan si sisẹ iwe afọwọkọ lori awọn ẹrọ tabili

Awọn ipin ogorun
10
25
50
75
90

Gbogbo ojula
146.0
351.8
831.0
1739.8
3236.8

jQuery ojula
199.6
399.2
877.5
1779.9
3215.5

Vue awọn aaye ayelujara
350.4
650.8
1280.7
2388.5
4010.8

Awọn oju opo wẹẹbu angula
482.2
777.9
1365.5
2400.6
4171.8

Fesi awọn aaye ayelujara
508.0
1045.6
2121.1
4235.1
7444.3

Iye owo ti awọn ilana JavaScript
Akoko Sipiyu ti o ni ibatan si sisẹ iwe afọwọkọ lori awọn ẹrọ tabili

Nibi o le rii nkan ti o faramọ pupọ.

Fun awọn ibẹrẹ, awọn aaye pẹlu jQuery na ni pataki ni ṣiṣe JavaScript sisẹ lori okun akọkọ ju awọn miiran lọ. Ni ogorun 10th, ni akawe si gbogbo awọn aaye, awọn aaye jQuery lori awọn ẹrọ alagbeka nlo 61% diẹ sii akoko ṣiṣe koodu JS lori okun akọkọ. Ninu ọran ti awọn aaye jQuery tabili tabili, akoko ṣiṣe pọ si nipasẹ 37%. Ni ogorun 90th, awọn maaki awọn aaye jQuery wa nitosi awọn ikun apapọ. Ni pato, awọn aaye jQuery lori awọn ẹrọ alagbeka lo 1.3% kere si akoko ni okun akọkọ ju gbogbo awọn aaye lọ, ati lori awọn ẹrọ tabili wọn lo 0.7% kere si akoko ni okun akọkọ.

Ni apa keji ti idiyele wa jẹ awọn ilana ti o jẹ afihan nipasẹ ẹru nla julọ lori okun akọkọ. Eyi jẹ, lẹẹkansi, Angular ati React. Iyatọ ti o wa laarin wọn nikan ni pe, botilẹjẹpe awọn aaye Angular fi iye koodu ti o tobi ju ranṣẹ si awọn aṣawakiri ju awọn aaye React lọ, o gba akoko Sipiyu kere si lati ṣe ilana koodu ti awọn aaye Angular. O kere pupọ.

Ni ipin 10th, awọn aaye tabili Angular n lo 230% diẹ sii akoko o tẹle okun akoko sisọ koodu JS ju gbogbo awọn aaye lọ. Fun awọn aaye alagbeka nọmba yii jẹ 313%. Awọn aaye idahun ni iṣẹ ti o buru julọ. Lori awọn ẹrọ tabili wọn lo 248% diẹ sii koodu ṣiṣe akoko ju gbogbo awọn aaye lọ, ati lori awọn ẹrọ alagbeka wọn lo 658% koodu sisẹ akoko diẹ sii. 658% kii ṣe typo. Ni ipin 10th, awọn aaye React lo awọn iṣẹju-aaya 2.7 ti akoko okun akọkọ sisẹ koodu wọn ti o wa tẹlẹ.

Awọn nọmba ogorun 90th wo o kere ju diẹ ti o dara julọ nigbati a ba ṣe afiwe awọn nọmba nla wọnyi. Awọn iṣẹ akanṣe, ni akawe si gbogbo awọn aaye, lo 29% diẹ sii akoko ni okun akọkọ lori awọn ẹrọ tabili, ati akoko 27% diẹ sii lori awọn ẹrọ alagbeka. Ninu ọran ti awọn aaye React, awọn itọkasi ti o jọra dabi 130% ati 98%, lẹsẹsẹ.

Awọn ipin ogorun iyapa fun ipin 90th wo dara ju awọn iye ti o jọra fun ipin 10th. Ṣugbọn nibi o tọ lati ranti pe awọn nọmba ti n tọka akoko dabi ohun idẹruba. Jẹ ki a sọ - 20.8 awọn aaya ni okun akọkọ ti ẹrọ alagbeka fun aaye ti a ṣe lori React. (Mo gbagbọ pe itan ti ohun ti o ṣẹlẹ gangan ni akoko yii yẹ fun nkan ti o yatọ).

Idiju ti o pọju kan wa nibi (o ṣeun Jeremiah fun iyaworan mi akiyesi si ẹya ara ẹrọ yi, ati fun fara ayẹwo awọn data lati aaye yi). Otitọ ni pe ọpọlọpọ awọn aaye lo ọpọlọpọ awọn irinṣẹ iwaju-opin. Ni pataki, Mo ti rii ọpọlọpọ awọn aaye ti o lo jQuery lẹgbẹẹ React tabi Vue bi awọn aaye wọnyi ṣe jade lati jQuery si awọn ilana miiran tabi awọn ile-ikawe. Bi abajade, Mo pada si ibi ipamọ data, ni akoko yii yiyan awọn ọna asopọ wọnyẹn ti o baamu si awọn aaye ti o lo React, jQuery, Angular tabi Vue nikan, ṣugbọn kii ṣe eyikeyi apapo wọn. Eyi ni ohun ti Mo gba.

Akoko isise (ni milliseconds) ti o ni ibatan si sisẹ iwe afọwọkọ lori awọn ẹrọ alagbeka ni awọn ipo nibiti awọn aaye ti lo ilana kan nikan tabi ile-ikawe kan ṣoṣo

Awọn ipin ogorun
10
25
50
75
90

Awọn aaye ti o lo jQuery nikan
542.9
1062.2
2297.4
4769.7
8718.2

Awọn ojula ti o lo nikan Vue
944.0
1716.3
3194.7
5959.6
9843.8

Awọn aaye ti o lo Angular nikan
1328.9
2151.9
3695.3
6629.3
11607.7

Awọn oju opo wẹẹbu ti o lo React nikan
2443.2
4620.5
10061.4
17074.3
24956.3

Iye owo ti awọn ilana JavaScript
Akoko isise ti o ni ibatan si awọn iwe afọwọkọ ṣiṣiṣẹ lori awọn ẹrọ alagbeka ni ipo nibiti awọn aaye ti lo ilana kan ṣoṣo, tabi ile-ikawe kan ṣoṣo

Ni akọkọ, nkan ti kii ṣe iyalẹnu: nigbati aaye kan ba lo ilana kan tabi ile-ikawe kan, iṣẹ ti iru aaye kan dara si nigbagbogbo ju bẹẹkọ lọ. Iṣe fun ohun elo kọọkan dara julọ ni awọn ipin 10th ati 25th. O jẹ oye. Aaye ti o ṣe ni lilo ilana kan yẹ ki o yara ju aaye ti a ṣe ni lilo awọn ilana meji tabi diẹ sii tabi awọn ile-ikawe.

Ni otitọ, awọn ikun fun gbogbo ọpa-ipari iwaju ti a ṣe ayẹwo wo dara julọ ni gbogbo awọn ọran, pẹlu iyasọtọ iyanilenu kan. Ohun ti o ya mi lẹnu ni pe ni ipin 50th ati loke, awọn aaye ti o nlo React ṣe buru nigba ti React jẹ ile-ikawe nikan ti wọn lo. Eyi, nipasẹ ọna, ni idi ti Mo fi data yii han nibi.

Eyi jẹ ajeji diẹ, ṣugbọn Emi yoo tun gbiyanju lati wa alaye fun ajeji yii.

Ti iṣẹ akanṣe kan ba lo mejeeji React ati jQuery, lẹhinna iṣẹ akanṣe yẹn ṣee ṣe julọ ni ibikan ni agbedemeji ilana gbigbe lati jQuery si React. Boya o ni koodu koodu ninu eyiti awọn ile-ikawe wọnyi ti dapọ. Niwọn igba ti a ti rii tẹlẹ pe awọn aaye jQuery lo akoko diẹ lori okun akọkọ ju awọn aaye React lọ, eyi le sọ fun wa pe imuse diẹ ninu iṣẹ ṣiṣe ni jQuery ṣe iranlọwọ lati mu iṣẹ ṣiṣe aaye diẹ sii.

Ṣugbọn bi iṣẹ akanṣe naa ti nlọ lati jQuery si React ati ti o gbẹkẹle siwaju ati siwaju sii lori React, ipo naa yipada. Ti aaye naa ba jẹ didara gaan gaan, ati pe awọn olupilẹṣẹ aaye lo React fara, lẹhinna ohun gbogbo yoo dara pẹlu iru aaye kan. Ṣugbọn fun aaye React apapọ, lilo lọpọlọpọ ti React tumọ si pe okun akọkọ jẹ koko-ọrọ si ẹru ti o pọ si.

Aafo laarin mobile ati tabili awọn ẹrọ

Ọna miiran ti Mo wo data naa ni lati ṣawari bi aafo naa ṣe tobi to laarin alagbeka ati awọn iriri tabili tabili. Ti a ba sọrọ nipa ifiwera awọn iwọn didun ti koodu JavaScript, lẹhinna iru afiwera ko ṣe afihan ohunkohun ẹru. Nitoribẹẹ, yoo dara lati rii awọn oye kekere ti koodu igbasilẹ, ṣugbọn ko si iyatọ pupọ ninu iye alagbeka ati koodu tabili tabili.

Ṣugbọn ti o ba ṣe itupalẹ akoko ti o nilo lati ṣe ilana koodu naa, aafo ti o tobi pupọ laarin alagbeka ati awọn ẹrọ tabili di akiyesi.

Alekun ni akoko (ni ipin) ti o ni ibatan si sisẹ iwe afọwọkọ lori awọn ẹrọ alagbeka ni akawe si awọn tabili tabili

Awọn ipin ogorun
10
25
50
75
90

Gbogbo ojula
144.1
172.8
185.5
208.5
224.0

jQuery ojula
188.2
187.4
191.3
209.6
221.9

Vue awọn aaye ayelujara
222.5
220.8
220.2
221.4
220.4

Awọn oju opo wẹẹbu angula
205.1
206.0
201.6
210.4
218.7

Fesi awọn aaye ayelujara
431.5
386.8
337.9
242.6
179.6

Lakoko ti iyatọ diẹ ninu iyara sisẹ koodu laarin foonu kan ati kọǹpútà alágbèéká kan ni lati nireti, iru awọn nọmba nla sọ fun mi pe awọn ilana ode oni ko ni ibi-afẹde to ni awọn ẹrọ agbara kekere ati ifẹ lati pa aafo ti a ti mọ. Paapaa ni ipin 10th, awọn aaye React lo akoko 431.5% diẹ sii lori okun akọkọ alagbeka ju o tẹle okun akọkọ tabili tabili. jQuery ni aafo ti o kere julọ, ṣugbọn paapaa nibi nọmba ti o baamu jẹ 188.2%. Nigbati awọn olupilẹṣẹ oju opo wẹẹbu ṣe awọn iṣẹ akanṣe wọn ni ọna ti wọn nilo akoko Sipiyu diẹ sii lati ṣe ilana wọn (ati pe eyi ni ohun ti o ṣẹlẹ, ati pe o buru si ni akoko diẹ), awọn oniwun ti awọn ẹrọ agbara kekere ni lati sanwo fun.

Awọn esi

Awọn ilana ti o dara yẹ ki o fun awọn olupilẹṣẹ ni ipilẹ ti o dara fun kikọ awọn iṣẹ wẹẹbu (ni awọn ofin aabo, iraye si, iṣẹ), tabi yẹ ki o ni awọn ihamọ ti a ṣe sinu ti o jẹ ki o ṣoro lati ṣẹda nkan ti o rú awọn ihamọ wọnyẹn.

Eyi ko dabi pe o kan si iṣẹ awọn iṣẹ akanṣe wẹẹbu (ati pe o han gbangba si wọn wiwọle).

O tọ lati ṣe akiyesi pe nitori React tabi awọn aaye Angula lo akoko Sipiyu diẹ sii ti ngbaradi koodu ju awọn miiran ko tumọ si pe awọn aaye React jẹ aladanla Sipiyu diẹ sii ju awọn aaye Vue nigba ṣiṣe. Ni otitọ, data ti a wo sọ diẹ diẹ nipa iṣẹ ṣiṣe ti awọn ilana ati awọn ile-ikawe. Wọn sọrọ diẹ sii nipa awọn ọna idagbasoke ti, mimọ tabi rara, awọn ilana wọnyi le Titari awọn olupilẹṣẹ si ọna. A n sọrọ nipa iwe fun awọn ilana, ilolupo wọn, ati awọn ilana idagbasoke ti o wọpọ.

O tun tọ lati darukọ nkan ti a ko ṣe itupalẹ nibi, eyun, iye akoko ti ẹrọ naa lo lati ṣiṣẹ koodu JavaScript nigba iyipada laarin awọn oju-iwe ti aaye naa. Awọn ariyanjiyan ni ojurere ti SPA ni wipe ni kete ti awọn nikan iwe ohun elo ti wa ni ti kojọpọ sinu awọn ẹrọ aṣawakiri, olumulo yoo, ni ero, ni anfani lati wọle si awọn oju-iwe ayelujara ni kiakia. Iriri ti ara mi sọ fun mi pe eyi jina si otitọ kan. Ṣugbọn a ko ni data lati ṣalaye ọran yii.

Ohun ti o han gbangba ni pe ti o ba lo ilana kan tabi ile-ikawe lati ṣẹda oju opo wẹẹbu kan, o n ṣe adehun ni awọn ofin ti iṣakojọpọ iṣẹ akanṣe ati ṣiṣe ni imurasilẹ lati lọ. Eyi kan paapaa si awọn oju iṣẹlẹ ti o dara julọ.

O ṣee ṣe lati ṣe diẹ ninu awọn adehun ni awọn ipo ti o yẹ, ṣugbọn o ṣe pataki ki awọn olupilẹṣẹ ṣe iru awọn adehun ni mimọ.

Ṣugbọn a tun ni idi fun ireti. Mo ni iyanju nipasẹ bawo ni awọn olupilẹṣẹ Chrome ṣe n ṣiṣẹ ni pẹkipẹki pẹlu awọn ti o wa lẹhin diẹ ninu awọn irinṣẹ iwaju-iwaju ti a ti bo lati ṣe iranlọwọ ilọsiwaju iṣẹ awọn irinṣẹ wọnyẹn.

Sibẹsibẹ, Emi jẹ eniyan pragmatic. Awọn ile ayaworan tuntun ṣẹda awọn iṣoro iṣẹ ni igbagbogbo bi wọn ṣe yanju wọn. Ati pe o gba akoko lati mu awọn ailagbara kuro. Gẹ́gẹ́ bí kò ṣe yẹ ká máa retí ìyẹn titun nẹtiwọki imo yoo yanju gbogbo awọn iṣoro iṣẹ, o ko yẹ ki o reti eyi lati awọn ẹya tuntun ti awọn ilana ayanfẹ wa.

Ti o ba fẹ lo ọkan ninu awọn irinṣẹ iwaju-ipin ti a jiroro ninu ohun elo yii, eyi tumọ si pe iwọ yoo ni lati ṣe awọn igbiyanju afikun lati rii daju pe, lairotẹlẹ, iwọ ko ṣe ipalara iṣẹ akanṣe rẹ. Eyi ni diẹ ninu awọn ero lati gbero ṣaaju ki o to bẹrẹ lilo ilana tuntun kan:

  • Ṣayẹwo ara rẹ pẹlu ogbon ori. Ṣe o nilo gaan lati lo ilana ti o yan bi? JavaScript mimọ le ṣe pupọ loni.
  • Njẹ yiyan fẹẹrẹfẹ si ilana ti o fẹ (bii Preact, Svelte tabi nkan miiran) ti o le fun ọ ni 90% awọn agbara ti ilana yẹn?
  • Ti o ba ti wa ni tẹlẹ lilo a ilana, ro boya o wa ni nkankan ti o nfun dara, diẹ Konsafetifu, boṣewa awọn aṣayan (Fun apẹẹrẹ, Nuxt.js dipo Vue, Next.js dipo ti React, ati be be lo).
  • Kini yoo jẹ isunawo JavaScript iṣẹ?
  • Bawo ni o ṣe le opin ilana idagbasoke lati jẹ ki o nira siwaju sii lati ṣafihan koodu JavaScript diẹ sii sinu iṣẹ akanṣe ju ti o jẹ dandan?
  • Ti o ba nlo ilana kan fun irọrun ti idagbasoke, ronu ṣe o nilo firanṣẹ koodu ilana si awọn alabara. Boya o le yanju gbogbo awọn ọran lori olupin naa?

Nigbagbogbo, awọn imọran wọnyi tọ lati wo ni pẹkipẹki, laibikita kini gangan ti o yan lati dagbasoke opin iwaju. Ṣugbọn wọn ṣe pataki paapaa nigbati o ba n ṣiṣẹ lori iṣẹ akanṣe ti ko ni iṣẹ ṣiṣe lati bẹrẹ pẹlu.

Eyin onkawe! Kini o rii bi ilana JavaScript ti o dara julọ?

Iye owo ti awọn ilana JavaScript

orisun: www.habr.com

Fi ọrọìwòye kun