Turint tiek daug pasirinkimų, atvaizdavimas yra tema, kurią reikia nuolat stebėti.

Šiuolaikinės žiniatinklio sistemos siūlo daugybę variantų, kaip pateikti svetainę ar programą iš serverio į klientą. Galite generuoti HTML iš abiejų pusių arba iš anksto pateikti jį, kad būtų galima greitai platinti per turinio pristatymo tinklą.

Sprendžiant, kaip sukurti svetainės ar programos struktūrą, reikia atsižvelgti į kelis skirtingus veiksnius. Turite žinoti, kaip lankytojai pasieks jūsų svetainę ar programą. Turėtumėte suprasti, ar krovimo greitis yra svarbesnis pradiniam įkėlimui ar vėlesniam navigavimui. Taip pat apsvarstykite, kaip dažnai atnaujinsite svetainę.

Turėkite omenyje visus šiuos veiksnius, kad įvertintumėte kiekvienos atvaizdavimo paradigmos privalumus ir trūkumus.

Svetainių atvaizdavimas daugiau nei vienu būdu

Svetainės atvaizdavimas reiškia procesą, kurio metu svetainė rodoma žiniatinklio naršyklėje. Yra daug skirtingų būdų, kaip vartotojo ekrane neapdorotus duomenis konvertuoti į formatuotą HTML.

instagram viewer

Kiekvienas metodas turi savo privalumų ir trūkumų, o žinodami kiekvieno privalumus ir trūkumus, galite pasirinkti tinkamą jūsų svetainei.

CSR: Naršyklė prisiima atsakomybę

CSR reiškia kliento pusės atvaizdavimą. Kai pateikiate programos ar svetainės kliento pusę, serveris perduoda mažai HTML arba jo neperduoda, išskyrus nedidelę pagrindinio kodo dalį. Tada puslapis prašo bet kokių jam reikalingų duomenų iš serverio po puslapio įkėlimo įvykio per AJAX užklausas.

Kai programa arba puslapis pateikia kliento pusę, serveris klientui perduoda scenarijų, kuris sugeneruos HTML kliento naršyklėje. Tai leidžia naudoti vieno puslapio programas, kurios neatnaujina naršyklės, kai su jomis sąveikaujate.

CSR programos dažnai greitai įkeliamos naudojant navigaciją, tačiau iš pradžių jos gali būti įkeliamos lėtai. Greitis labai priklausys nuo sistemos, kurią pasirinksite atvaizduoti, ir nuo to, kiek papildomų bibliotekų ir priedų naudojate. Dauguma populiarios šiuolaikinės JavaScript sistemos įtraukti CSR parinktį.

Visiškai kliento pusėje pateikti puslapiai ir programos kenčia nuo nesugebėjimo tiesiogiai pereiti į tam tikrą puslapį naudojant URL. Kai pirmą kartą paleidžiama kliento pusėje pateikta programa, neatsižvelgiant į įvestą URL, ji nukreipiama į tą patį pradžios tašką.

SSR: atvaizdavimas centriniame serveryje

SSR reiškia serverio pusės atvaizdavimą. Tai daug labiau tradicinė tinklalapio atvaizdavimo forma, kai svetainės generuoja HTML pagal šablonus ir klientui siunčia HTML, stiliaus lentelių ir scenarijų derinį. Didžioji dalis populiariausios užpakalinės žiniatinklio sistemos patenka į šią kategoriją.

Serverio pusėje pateiktos programos ir svetainės paprastai įkeliamos greičiau, tačiau kiekvieną paskesnį naršymą reikės visiškai atnaujinti. Tai reiškia, kad jie ne tik užtruks ilgiau, bet ir kūrėjai, dirbantys su SSR, turės atsižvelgti į seansų valdymą.

Didžiausias SSR sukurtų svetainių ir programų pranašumas yra kelio naršymo nuoseklumas. Vartotojas, įvedęs nurodytą kelią, bus nukreiptas tiesiai į pageidaujamą puslapį. Kai kurios sistemos tvarko naudotojų peradresavimus iš programos puslapio į puslapį, tačiau iš pradžių vartotojai gali negalėti pasiekti norimo puslapio.

Daugelis šiuolaikinių sistemų siūlo mišrius sprendimus, kurie prasideda serverio pateikto puslapio pateikimu klientui. Kai puslapis įkeliamas, įvyksta įvykis, vadinamas hidratacija, kai kliento scenarijaus įvykiai pridedami prie puslapio valdiklių. Nuo šiol klientas tvarko bet kokią navigaciją.

Sumaišyta dinamika suteikia vartotojams galimybę eiti tiesiai į bet kurį programos puslapį, tuo pačiu išlaikant vieno puslapio programos greitį ir sklandumą. Next.js siūlo kelias atvaizdavimo paradigmas, kaip ir Nuxt.js bei Sveltekit.

SSG: minimalus atvaizdavimas

SSG arba statinė svetainių generavimas apeina būtinybę generuoti HTML kliento ar serverio pusėje. Vietoj to, SSG stiliaus svetainės ir programos iš anksto sukompiliuoja kiekvieną puslapį, kurio joms gali prireikti, ir perkelia rezultatus į CDN, kad būtų galima greitai pristatyti.

Tai itin efektyvus būdas itin greitai aptarnauti tinklalapius. Rezultatai paprastai kaupiami paprastais paketais, kuriuose yra visas HTML ir stilių lentelės, reikalingos atskiram puslapiui. Šie paketai laikomi kuo kompaktiškesni, kad vartotojas juos gautų kuo greičiau.

SSG svetainės paprastai siūlo ypač greitą įkėlimo greitį, nepaisant to, kad kiekvieną naršymą reikia atnaujinti. Tačiau pagrindinis statinės svetainės trūkumas yra lankstumo trūkumas. Labai dinamiškoms sistemoms, tokioms kaip socialinės žiniasklaidos programos ar sudėtingos el. prekybos platformos, reikės daug daugiau pakeitimų, nei SSG gali lengvai atlikti.

Daugeliui statinių svetainių taip pat reikės daugiau pridėtinių išlaidų, nes kiekvienas naujas pakeitimas turės būti sudarytas atskirai. Dėl to SSG stiliaus pateikimas yra prastas pasirinkimas greitai besikeičiančioms svetainėms, pvz., skaitmeninei parduotuvei su greitai besikeičiančiomis atsargomis arba socialinės žiniasklaidos programomis.

ISR: Truputis visko

Lengvai sudėtingiausias, bet ir naudingiausias atvaizdavimo tipas ISR reiškia laipsnišką statinį atkūrimą. ISR sujungia statiškai sukurtų svetainių greitį ir mastelį su SSR ir CSR stiliaus programų reaktyvumu.

Kai ISR ​​stiliaus puslapyje arba programoje pateikiamas bet kurio puslapio užklausa, serveris pirmiausia patikrins, ar yra nepasibaigusi talpykloje saugoma puslapio versija. Jei yra, serveris nedelsdamas aptarnaus talpykloje saugomą puslapį.

Jei talpykloje esančios puslapio versijos nėra arba nuo jos sukūrimo praėjo pakankamai laiko, serveris sugeneruos naują versiją. Ši nauja versija bus perduota klientui ir saugoma talpykloje ateityje.

Šio tipo atvaizdavimą sudėtingiau nustatyti, tačiau jis automatizuoja daugumą problemų, su kuriomis paprastai susiduria SSG svetainės. Tai leidžia programoms pasiūlyti statiškai generuojamos programos greitį ir patikimumą, tuo pačiu sumažinant papildomas išlaidas.

Kai kurios šiuolaikinės sistemos jau siūlo ISR stiliaus atvaizdavimą. Daugelis kitų palaiko laipsnišką kartos vystymąsi. Daugelis pagrindinių sistemų netrukus palaikys ISR pateikimą, jei dar nepalaiko.

Kuris atvaizdavimo tipas yra geriausias?

Yra keletas būdų, kaip pateikti svetainę ar programą. Kiekvienas iš šių keturių atvaizdavimo tipų turi keletą variantų. Nė vienas atvaizdavimo tipas nėra idealus visiems projektams, o kurį tipą pasirinksite, priklausys nuo to, kas yra svarbiausia jūsų svetainėje ar programoje.

Renkantis savo projekto atvaizdavimo paradigmą, svarbu atsižvelgti į greitį, kaip auditorija naudosis jūsų projektu ir kaip dažnai keisis svetainė. Tai bus pagrindiniai principai, padėsiantys nuspręsti, kaip geriausiai struktūrizuoti svetainę ar programą.