Denne artikel er udarbejdet i samarbejde med Sencha. Tak fordi du støtter de partnere, der gør SitePoint muligt.
JavaScript er den teknologi, der er kernen i nutidens hurtige og hurtige webapps. Der findes utallige UI-rammer og biblioteker til opbygning af komplekse, reaktive apps, der skalerer godt.
Nogle vil hjælpe dig med at skrive mere effektiv og vedligeholdelsesvenlig kode. Eller du har brug for hjælp til at designe et sæt konsistente, interoperable og hurtige brugergrænsefladekomponenter. I næsten alle situationer kan du finde en mulighed, der gør en stor del af det tunge arbejde for dig. Der er ingen grund til at starte fra bunden og genopfinde hjulet.
De mest populære JavaScript-rammer, der findes, har nogle fælles funktioner. De har især:
- kan holde tilstand og visning synkroniseret
- tilbyder routing-funktionalitet
- lader udviklere bygge, genbruge og vedligeholde brugergrænsefladekomponenter, der er effektive og hurtige til at reagere på brugerinteraktion.
Det tilgængelige antal JS-frameworks er stort, og det antal fortsætter med at vokse. Tag et kig på disse muligheder. Jeg har listet både stabile, populære biblioteker og nyere muligheder for de nysgerrige.
Lad os springe ind med en elegant JavaScript-ramme på virksomhedsniveau – Ext JS fra Sencha.
Ext JS fra Sencha
Bør du bygge en webapp, der håndterer store datamængder, og har du brug for kraftfulde, fleksible front-end-værktøjer til at vise og arbejde med dem?
Sencha Ext JS beskrives som den…
mest omfattende JavaScript-ramme til at bygge dataintensive, tværgående web- og mobilapplikationer på tværs af platforme til alle moderne enheder. Ext JS indeholder 140+ præintegrerede og testede højtydende UI-komponenter med høj ydeevne.
Nogle af disse komponenter omfatter bl.a:
- en HTML5-kalender
- gitre
- træer
- lister
- formularer
- menuer
- værktøjslinjer
- og meget mere
Ext JS er et pålideligt, betalt framework, der leveres med fremragende dokumenter, tutorials og supportpakker. Nylige tests viste, at Ext JS-datagitteret var 300x hurtigere end førende konkurrenter. Faktisk henter og viser dens Virtual Scrolling-oplevelse store mængder data på under et sekund.
Fordelene ved Ext JS omfatter:
- hurtig, smidig udvikling. Få glæde af problemfri integration mellem en virksomhedsramme og de nyeste komponenter og værktøjer.
- Det omfattende sæt af sikre komponenter. Du behøver aldrig at gå ud af rammen for at finde en manglende widget eller funktionalitet.
- store designmuligheder takket være de medfølgende integrerede værktøjer. Sencha Architect tilbyder træk og slip-muligheder. Sencha Stencils giver udviklere mulighed for at lave mock-up, stil, prototype og teste UI-koncepter.
- Godt værktøj til enheds- og end-to-end-testning med Sencha Test.
- en layoutmanager. Administrer visning af data og indhold på tværs af forskellige browsere og skærmstørrelser. Et responsivt konfigureringssystem tilpasser grænsefladen til enhedens orientering og browserens vinduesstørrelser.
- det er nemt at opnå overensstemmelse med tilgængelighed med Ext JS ARIA-pakken
- en robust datapakke, der afkobler brugergrænsefladekomponenterne fra datalaget.
Du kan få mere at vide om Ext JS på rammens websted.
React
React er enormt populær blandt front-end-udviklere. Det er et JavaScript-bibliotek med åben kildekode til at bygge lynhurtige, interaktive brugergrænseflader. React blev først skabt af Jordan Walke, en softwareingeniør, der arbejder for Facebook. Det blev først implementeret i Facebooks nyhedsfeed i 2011 og på Instagram i 2012. Det bruges af bl.a. Netflix, Airbnb, Instagram og New York Times.
Grundene til at vælge React til dit næste projekt er bl.a.:
- React er hurtig at lære og bruge. Det er JavaScript med et lille API.
- Kodekomponenter er stabile og genanvendelige. De er nemme at oprette og vedligeholde ved hjælp af API’ets deklarative syntaks.
- En stor virksomhed og et stærkt fællesskab støtter React.
- Biblioteket er stack agnostisk, kan også rendere på serveren med Node.js og på mobilapps med React Native.
Angular
Angular er et gratis open source-framework fra Google, der fungerer til både desktop og mobil.
Der er en indlæringskurve, herunder at blive fortrolig med TypeScript, en supersætning af JavaScript. På trods af det er Angular stadig en fantastisk ramme at arbejde med. Her er nogle af grundene til at bruge det:
- på tværs af platforme – progressive webapps, native mobilapps og desktop
- giver hastighed og ydeevne
- har fantastiske funktioner som filtre, tovejs databinding, direktiver og meget mere
- gør fantastiske værktøjer tilgængelige til hurtigere udvikling
- har fuld støtte fra Google og et stærkt fællesskab af udviklere bag det.
For flere detaljer skal du ikke gå glip af Angular Introduktion: What It Is, and Why You Should Use It af Ilya Bodrov-Krukowski.
Vue
Vue JS er en gratis og open source progressiv JavaScript-ramme, der er skabt af Evan You. Det bruger en skabelonsyntaks (ligesom Angular) og er baseret på en komponentbaseret arkitektur (ligesom React).
Sådan beskriver Vue sig selv på sin egen GitHub-repositorieside:
Vue (udtales
/vjuː/
, ligesom view) er en progressiv ramme til opbygning af brugergrænseflader. Det er designet fra bunden til at kunne vedtages gradvist og kan nemt skaleres mellem et bibliotek og en ramme afhængigt af forskellige brugssituationer. Det består af et lettilgængeligt kernebibliotek, der kun fokuserer på view-laget, og et økosystem af understøttende biblioteker, der hjælper dig med at tackle kompleksiteten i store Single-Page Applications.
Her er nogle af Vues stærkeste punkter:
- udviklervenlig. Hvis du kan websprogene (HTML, CSS og JavaScript), er Vue-dokumentationen alt, hvad du behøver for at begynde at bygge med det samme.
- Du kan integrere det gradvist i et projekt. Det kan nemt skaleres fra et bibliotek til et fuldgyldigt framework.
- Det er lille og leveres med et superhurtigt virtuelt DOM.
- Har et fantastisk fællesskab bag sig, hvilket gør det til et stabilt framework at tage til sig.
- Byder god dokumentation.
Hvis du gerne vil dykke dybere ned, kan du læse How to Tell If Vue.js er den rette ramme til dit næste projekt af Karolina Gawron.
Ember
Ember blev udgivet i december 2011 af Yehuda Katz og Tom Dale og er:
En ramme til ambitiøse webudviklere.
Ember.js er en produktiv, kampafprøvet JavaScript-ramme til opbygning af moderne webapplikationer. Det indeholder alt, hvad du har brug for til at bygge fyldige brugergrænseflader, der fungerer på alle enheder.
Denne JavaScript-ramme er gratis, open source og har et stærkt fællesskab bag sig. Her er nogle af grundene til, at Ember har succes blandt udviklere:
- Hæver den tilgang med konventioner frem for konfiguration, som David Heinemeier Hansson er fortaler for. Den har til formål at reducere antallet af beslutninger, som en udvikler skal træffe (uden at ofre fleksibilitet).
- Næsten alt, hvad du har brug for til at konfigurere din app, følger med Ember ud af boksen.
- bagudkompatibel.
- hurtig til at tage de nyeste webstandarder og JavaScript-funktioner til sig.
- Byder gode dokumenter og ressourcer.
Svelte 3
Svelte 3 er den nye dreng i rammeblokken, selv om den vokser hurtigt op. Rich Harris udgav Svelte i november 2016 som et open source-projekt. Version 3 kom ud i april 2019 og var en komplet overhaling.
Svelte fungerer anderledes end de fleste frameworks, der er nævnt indtil videre. Især:
Hvor traditionelle frameworks som React og Vue udfører hovedparten af deres arbejde i browseren, flytter Svelte det arbejde over i et kompileringstrin, der sker, når du bygger din app.
Mange frameworks bruger ved hjælp af teknikker som virtuel DOM-diffing. I stedet opdaterer Svelte DOM’en kirurgisk, når tilstanden af din app ændres. Kompilering af kode skaber mærkbare ydelsesfordele.
Svelte er hurtig for begyndere at komme i gang med. Du kan bygge komponenter uden masser af boilerplate-kode. Du skal blot bruge HTML, CSS og JavaScript. Svelte-webstedet indeholder nybegyndervenlige ressourcer. Disse omfatter en vejledning, eksempler og en detaljeret API for mere erfarne Svelte-udviklere. Hvis du ønsker hjælp og support, opfordres du til at deltage på den dedikerede Discord-server.
Slutning
Det er altid en omstændig beslutning at vælge et framework. Det indebærer, at du skal være opmærksom på, hvad dit specifikke projekts udfordringer er. Det betyder også, at man skal tage hensyn til dit teams erfaringer og præferencer.
For eksempel, hvis dit team skal bygge dataintensive projekter på virksomhedsniveau, der har brug for en sikker, pålidelig og omfattende ramme med et stort sæt komponenter, der fungerer godt sammen, er Ext JS fra Sencha et godt valg. Du behøver aldrig at gå ud af rammen for at søge efter komponenter. For projekter, der starter småt, men som har brug for fleksibilitet og skaleringsmuligheder, kan Vue fungere godt. Og hvis dit front-end team har omfattende React-ekspertise, kan det være det bedste valg at vælge React.
Har du andre JS UI frameworks eller biblioteker, du vil foreslå? Hvilke af dem har du fundet dig selv bruge mest som udvikler? Lad os vide det på Twitter.