„Gatsby vs Hugo“, išsamus palyginimas

Šiame straipsnyje aš palyginu du statinius svetainių generatorius - „Gatsby“ ir „Hugo“. Aš aptariu pagrindų pažinimą, stabilumą, saugumą, įrankius, greičio didinimą, efektyvumą ir juos supančią bendruomenę. Taigi, pradėkime.

Maždaug prieš metus aš pakeičiau savo svetainę iš „Wordpress“ į „Hugo“, kuri yra statinė svetainių generatorė, parašyta „Go“ ir kurios šablonams naudoja „Go“ šablonų bibliotekas. Neseniai įvertinau „Gatsby“ - dar vieną statinį svetainės generatorių, parašytą „React“, kuris naudoja „React“ šablonams.

Šiame straipsnyje palyginau skirtumus tarp „Hugo v0.42“ ir „Gatsby v1.93“. Palyginimui aš panaudojau šią „Hugo“ ir šią „Gatsby“ svetainę. Kiekvieno kodą galite rasti „Hith“ ir „Gatsby“ svetainių „Github“.

Pagrindų pažinimas

Jei nesate susipažinę su „React“ ir neketinate mokytis reaguoti, turbūt turėtumėte pasirinkti „Hugo“. Jei žinote ir jums patinka „React“, turėtumėte pasirinkti „Gatsby“? Na, nebūtinai.

Aš tvirtinčiau, kad jei norite naudoti „Gatsby“, jums reikia tinkamo „React“ supratimo (žr. Sužinokite, kaip reaguoti su šiais šaltiniais). O norint suprasti „React“, reikia gerai suprasti „JavaScript“ (žr. Sužinokite apie „JavaScript“ naudojant šiuos išteklius).

Nors aš beveik metus naudoju „Hugo“, man nereikėjo suprasti „Go“. Aš taip pat turėjau šiek tiek sužinoti apie „Go“ šablonų bibliotekas. Tačiau aš pastebėjau, kad turėjau dažniau kreiptis į Hugo dokumentus dėl to, kad man trūksta žinių. Gatsby reikalauja gilesnio „React“ supratimo, nei Hugo tikisi iš „Go“. Nepaisant to, jei pagrindų susipažinimas būtų vieninteliai kriterijai, aš rinkčiausi „Gatsby“, nes malonu, kai neprivalau remtis dokumentais pridedant naujų funkcijų į savo svetainę.

Stabilumas

Vienas iš būdų įvertinti stabilumą būtų palyginti „Hugo“ problemas „GitHub“ su „Gatsby“ problemomis „GitHub“. Pamatysite, kad „Gatsby“ turi daugiau funkcijų (tai yra įdomu), bet taip pat turi daugiau klaidų (o tai nėra taip jaudinantis). Iš pradžių nelaikiau stabilumo kaip kriterijaus, kol nesuradau šios klaidos ir tai privertė suvokti stabilumo svarbą programinėje įrangoje. Aš galbūt imuosi to asmeniškai dėl sugaišto laiko ir pastangų, bandydamas rasti tą klaidą, bet aš vis tiek manau, kad Hugo yra stabilesnis nei Gatsby.

Saugumas

„Gatsby“ naudoja „JavaScript“, o „JavaScript“ programos yra žinomos dėl to, kad reikia paleisti daug mazgų modulių. Yra net „Node“ modulis, kuris siunčia „Hot Pocket“ tviterius, ir kitas, kuris renka kredito kortelių numerius: D. Statinės svetainės iš prigimties yra saugesnės, tačiau aš vis tiek manau, kad verta paminėti, kad dėl didesnių priklausomybių atsiranda daugiau kodų, kuriais galbūt nepasitikite.

Įrankiai

„Gatsby“ turi visus „JavaScript“ įrankių grandinės pranašumus ir visus „JavaScript“ nuovargio trūkumus. Be to, „Gatsby“ turi tikrai puikią papildinių biblioteką. Visų pirma, „gatsby-plugin-offline“ leido man lengvai pridėti neprisijungus prie savo svetainės galimybių, kurių aš vis dar nesu išsiaiškinęs su „Hugo“.

Kita vertus, kai kurie dalykai, kuriems reikalingas papildymas su „Gatsby“, tiesiog pasirodo kartu su Hugo. Pvz., „Gatsby-plugin-react-šalmas“ reikalingas, norint redaguoti galvos žymę, tuo tarpu „Hugo“ tai galima padaryti naudojant paprastą HTML. Kadangi man patiko naudotis įrankiais, kuriuos gavome kartu su „Gatsby“, aš jį atiduodu „Gatsby“.

Sukurkite greitį

„Hugo“ gali sukurti mano svetainę be jokių papildomų įrankių mažiau nei per 100 ms. „Gatsby“ gali sukurti mano svetainę per maždaug 15 sekundžių, tačiau tai apima daugybę papildomų įrankių. Pridėjus „PostCSS“ ir „Imagemin“ prie „Hugo“ sąrankos, kaupimo laikas sutrinka iki maždaug 5 sekundžių. „Hugo“ taip pat greičiau stebėjo pokyčius kuriant. Manau, kad Hugo čia yra nugalėtojas.

Dokumentacija

Tiek „Gatsby“, tiek „Hugo“ dokumentai yra tikrai gražūs. „Hugo“ turi „Quick Start“, o „Gatsby“ - skyrių „Getting Started“. „Gatsby“ taip pat turi tikrai puikų vadovėlį, kuris išlygina standesnę mokymosi kreivę. Asmeniškai man buvo lengviau pradėti dirbti su „Gatsby“, bet taip yra todėl, kad aš jau supratau „React“. Manau, kad teisinga sakyti, kad tiek Hugo, tiek Gatsby turi puikią dokumentaciją.

Spektaklis

Naudojant „Švyturį“, mano svetainės „Hugo“ atlikimo balas buvo 100, o „Gatsby“ - 95. Pirmasis turinys, skirtas 3G ryšiui, buvo apie 1 sekundę „Hugo“ svetainei ir 1,5 sekundės „Gatsby“ svetainei. Tinklalapio naudojimas Išbandykite 2G ryšio įkrovos laiką „Hugo“ buvo 8,7 sekundės ir „Gatsby“ - 11,7 sekundės.

Tačiau atlikdamas paprastą rankinį testą, kad pamatytumėte, kuri svetainė įkeliama pirmiausia, „Gatsby“ buvo pastebimai greitesnis, todėl nelabai suprantu, ką matavo švyturio ar tinklalapio testas. Be to, kadangi „Gatsby“ yra vieno puslapio programa, norint naršyti svetainėje nereikia serverio užklausos. Puslapiai tiesiog atkuriami naudojant „JavaScript“. Bet kokiu atveju galiu užtikrintai pasakyti, kad ir Hugo, ir Gatsby yra greiti. Man būtų įdomu išgirsti jūsų mintis toliau pateiktuose komentaruose.

Bendruomenė

Greitai populiarėja „Gatsby“, o tai ateina su klestinčia bendruomene. Tai nereiškia, kad Hugo bendruomenė yra nuobodi. Jei „GitHub“ žvaigždės yra ką aplankyti, „Hugo“ turi daugiau nei 27 tūkstančius, o „Gatsby“ - daugiau nei 23 tūkstančius. „Twitter“ tinkle „Gatsby“ atrodo aktyvesnis nei „Hugo“.

Galutinės mintys

Taigi kurį turėtumėte pasirinkti? „Gatsby“ naudoja „React“, su kuria esu labiau susipažinęs, ji turi geresnius įrankius ir turi klestinčią bendruomenę. Kita vertus, Hugo yra stabilesnis ir praleidžia mažiau laiko statyboms. Didesnėms svetainėms svarbesnis kūrimo greitis, o kai kurie iš jūsų gali visai nesirūpinti „React“. Mano atveju, stabilumas buvo svarbiausi kriterijai, todėl nusprendžiau laikytis Hugo. Labai džiaugiuosi pamatęs, ką šioje erdvėje atneša ateitis.

Prieš išvykdami ... Dėkojame, kad perskaitėte straipsnį! Jei jums tai patiko, nepamirškite parodyti savo įvertinimo spustelėdami toliau pateiktą !

Aš rašau apie savo, kaip savarankiško mokymosi, programinės įrangos kūrėjo patirtį, taigi, jei tai jus domina, spustelėkite mygtuką „Sekti“! Norėdami sužinoti daugiau turinio, galite peržiūrėti mano tinklaraštį arba užsiprenumeruoti mano informacinį biuletenį.

Tau taip pat gali patikti:

  • Kaip leidžiu atnaujinti savo asmeninę svetainę
  • Mokomoji medžiaga - programinės įrangos kūrimas (mokymosi šaltinių sąrašas, pradedant nuo įvado į informatiką)
  • Kaip parašyti gyvenimo aprašymą kaip programinės įrangos kūrėją (pridedamas CV)