Tudja meg, érdemes-e megtanulni a Remixet 2022-ben.

A Remix a React keretrendszerek legújabb híre, amellett, hogy 2020 óta létezik, 2022 első felében (alapvetően akkor, amikor ingyenessé válnak!) felkeltette a figyelmet, és több mint 15 000 csillagot ért el a Repo-jukon.



Mi is az a Remix pontosan?

A "Remix" egy teljes veremű webes keretrendszer, amely lehetővé teszi, hogy JavaScript React-ban kódoljon a frontend alkalmazáshoz és a háttér logikához. A „React Router” mögött álló emberek alkották meg.

A Remix főbb jellemzői, amelyek kiváltják a vágyat, hogy megtanuld

Útválasztás és beágyazott útvonalak

Ahogy korábban említettük, a Remix a React Routerre épül, így minden, ami a React Routeren működik, működik a Remixben (például Outlet és Links), a Remix egy ügyes „beágyazott útválasztási stratégia”, amely lehetővé teszi, hogy az alkalmazás csak az oldalhoz vagy a felhasználói interakcióhoz szükséges beágyazott összetevőket töltse be és frissítse.

Távoli adatok lekérése

A Remix többnyire szerveroldali rendereléssel fog működni, nem támogatja a statikus generálást, de az, ahogyan az adatlekérést megvalósítja (a kérések komponens szinten történnek, és gyorsítótárazásra kerülnek), az oldalak betöltése nagyon gyors lesz.
Összetevők kérése adatokat a loader (az adatokat lekérő funkció) és a useLoaderData (az adatokat az oldalba „beszúró” horog) használatával.

Feladás távoli szerverre

A loader-el szemben a action függvényt találjuk, amely kezeli a feladási kérelmet (POST, PUT, DELETE…); a <Form>-el (az űrlap kezelésére szolgáló Remix komponens) párosítva egyszerű feladattá teszi az űrlapkezelést és a mutációkat (nincs szükség a onClick onChange kezelésére, nincs szükség useState-re).

A actionés loader ugyanazon a komponensen élhet, így egyetlen fájlon belül kezelheti a GET és a POST logikát.

Optimista felhasználói felület

A Remix egy sor stratégiát és funkciót valósít meg annak érdekében, hogy az alkalmazás azonnal reagáljon, még akkor is, ha az adatok nem lettek lekérve (vagy közzétéve) teljesen. Ez egy nagyszerű funkció! Az Optimistic UI-ról itt olvashat bővebben:



Hibakezelés

A Remix egy új módszert valósít meg a hibák kezelésére, ahol automatikusan felfogja a hibákat, és egy ErrorBoundaryjelet jelenít meg, így csak a „törött” szakasz/összetevő jelenít meg hibát, míg az alkalmazás többi része megfelelően működik. — például ha az adatokat beolvasó több összetevő közül csak az egyik sikertelen, a hiba csak a hibás összetevőben jelenik meg.

Fejléc, meta, hivatkozások, szkriptek

A Remix támogatja az egyéni fejléceket, meta- és linkekkel (és szkriptekkel), így könnyen SEO-optimalizálható. Mindent be lehet illeszteni HTML-be alkalmazásszinten vagy egyetlen oldal szintjén.

.server és .client

A Remixben hozzáadhat speciális fájlokat (filename.server.ts és filename.client.ts), amelyek csak a szerver vagy az ügyfél kéréseire futnak le, így teljes mértékben ellenőrizheti, hogy mi érheti el az ügyfelet, vagy mi maradjon meg a szerver (például db kapcsolatok, HttpOnly cookie-k, munkamenetek stb.).

Dokumentáció

A Remix nagyon jól dokumentált, és a hivatalos repóban rengeteg példa található, amelyek lefedik az elképzelhető valós funkciók többségét (a hitelesítéstől a Stripe-fizetéseken át a CMS-integrációkig).

Szilárd TypeScript

Ez nem valós szolgáltatás, ez az, amit minden szilárd keretrendszertől elvárhat. Amúgy a Remixben ez jól van megvalósítva.

Sablonok

A Remix különféle kezdősablonokat kínál, amelyek előre konfigurált DB-t, CSS-keretrendszereket, telepítési szolgáltatásokat és így tovább tartalmaznak. Azt állítják, hogy mindegyik gyártásra és méretezésre kész konfigurációval rendelkezik.

Könnyű telepítés

A Remix alkalmazás előre konfigurált szkriptek és sablonok segítségével telepíthető a legáltalánosabb szolgáltatásokra, de a Remix-szel készült alkalmazások minden esetben könnyen telepíthetők bármely elérhető szerver nélküli szolgáltatásra.

Ami a Remix hiányzik

A Remix valóban a kliens/szerver architektúrájára összpontosít, de minden logika rajtad múlik, így hiányoznak a beépített csatlakozók a szolgáltatásokhoz (például a Gatsbyhez), így minden kapcsolatot egyedül kell bekötni (egyébként, rengeteg könyvtár van az API-hoz, adatbázisokhoz, GraphQL-hez és így tovább való csatlakozáshoz.
Hiányzik néhány előtér-modul is, például képoptimalizálási komponensek (mint a Next.js-ben).

Ez elég a Remix megtanulásához?

A funkciók önmagukban nem elegendőek a döntéshez, még akkor sem, ha közülük legalább 3 igazán ígéretes, és a hiányzó funkciók nem tűnnek nagy bajnak, de itt van még több ok, hogy megtanuljam:

  • Ha Ön (mint én) Next.js-háttérrel rendelkezik, néhány órába telhet, amíg elkezdődik egy alkalmazás prototípusának elkészítése a Remix segítségével.
  • Egy új programozási nyelv megtanulása mindig jó ötlet, új dolgokat tanulni mindig jó ötlet. Új mintákat tanít meg, új módszereket szabadít fel a problémák megoldására, és sok más dolgot tanulhat meg és használhat más nyelveken vagy más területeken.
  • Ha több keret közül lehet választani a fejlesztés megkezdésekor, az valóban javíthatja a fejlesztési időt és a kód minőségét, egy bizonyos keret kiválasztása valóban előnyös lehet egyes alkalmazások számára.

A nap végén véleményem szerint a Remix megtanulása, különösen egy strukturáltabb React keretrendszer mellett, valóban megéri az időt. Ez egy olyan eszközt ad hozzá, amellyel gyors és érzékeny webalkalmazást fejleszthet a fejlesztői arzenáljába.

További tartalom a PlainEnglish.io oldalon. Iratkozzon fel ingyenes heti hírlevelünkre. Kövessen minket a Twitteren és a LinkedIn-en. Csatlakozz a «közösségi viszályunkhoz