En insiders titt på Googles bidrag til nettverket til Next.js og mer

Bilde: Getty Images / iStockphoto

Internett har vært snill mot Google, delvis fordi Google har jobbet hardt for å være snill mot nettet. Ja, det er egeninteresse i den godheten (disse annonsene kommer ikke til å legge ut selv), men gjennom årene har Google investert mye i å gjøre det enklere å bygge applikasjoner for nettet, samtidig som det bygger en nettleser som mange bruker for å få tilgang til disse applikasjonene (Google Chrome).

I en samtale med Nicole Sullivan, en produktansvarlig for Google Chrome, gikk hun meg gjennom en av de viktigste måtene Google hjelper med å fremme nettutvikling: Frameworks. Utviklere henvender seg til rammer av mange grunner, men økt produktivitet er alltid i topp 10. Med dette i bakhodet ønsket jeg å høre hvordan Google bidrar til produktutvikler på nettet ved å bidra til rammer som Next.js, AngularJS og mer.

Hvordan bygge en vellykket utviklerkarriere (gratis PDF)

I begynnelsen var kantete

Gjennom årene har Google aktivt omfavnet en rekke front-end nettutviklingsrammer, inkludert å bygge og åpne sourcing av det svært populære AngularJS. Når det gjelder Angular, ønsket Google å "løse et vanlig problem som mange utviklere står overfor - hvordan de kan bygge, arkitekt og administrere en nettapplikasjon, " sa Sullivan. Ved å bruke en tidlig prototype av rammen, klarte en av forfatterne faktisk å barbere tusenvis av kodelinjer i en enkelt applikasjon. Som mange selskaper forstår Google hvor nyttig et funksjonelt, kamptestet rammeverk kan være for å bygge store og komplekse applikasjoner.

Dette forklarer ikke nøyaktig hvorfor Google velger å gå inn for å lette utviklingen gjennom rammer. Internett er ikke i ferd med å forsvinne. Antagelig kan nettutviklere (og nettrammer) ta seg av seg selv?

Må-lese utviklerinnhold

  • Java og JavaScript dominerte programvareutvikling på 2010-tallet
  • Hvordan bli utvikler: Et jukseark
  • 10 måter å forhindre utbrenthet av utviklere (gratis PDF)
  • Python spiser verden: Hvordan en utviklerens sideprosjekt ble det hotteste programmeringsspråket på planeten

I følge Sullivan har Chrome-teamet som mål å investere i områdene som vil forbedre brukeropplevelsen mest på nettet. Med fire femtedeler av JS-utviklere i front-end som bruker minst ett stort JavaScript-rammeverk, er støtterammer en av de beste måtene for å forbedre nettet. " Med andre ord, utviklere bruker allerede rammene, så det er fornuftig å sikre at rammene vil være av høyest mulig kvalitet.

Den kvaliteten stopper selvfølgelig ikke. "Rammer og nettlesere er egentlig to halvdeler av samme helhet. Utviklere bygger funksjonene sine på toppen av en plattform som inkluderer begge deler. Og for å oppnå flott UX, må applikasjonen, rammeverket og nettleseren være innstilt for å fungere sammen, "indikerte hun.

Når du stiller inn, er det imidlertid potensielle hikke.

Du vil virkelig ikke gå alene

For å bygge komplette applikasjoner basert på et UI-bibliotek (som React), må mange verktøy samles. For eksempel må kodemoduler pakkes ved hjelp av en pakker som nettpakke og transformeres ved hjelp av en kompilator som Babel. Det er mange andre brikker som trengs for å lage en vellykket applikasjon som gjengivelse på serversiden, automatisk kodedeling, statisk eksport, pakking, distribusjon, CSS-innkapsling og mer, for ikke å nevne viktige forbedringer i utvikleropplevelser som varm omlasting.

Bilde: Stack Overflow / Count / Nick Heath

Front-end rammer kan ikke garantere god ytelse, fordi de generelt ikke kontrollerer klient-server-integrasjonen (et punkt diskutert i lengden av Yehuda Katz nylig). Det er her metaframeworks som Next.js (Guillermo Rauchs hjernebarn), Nuxt (for Vue-økosystemet) og Gatsby kan hjelpe.

For eksempel hjelper Next.js utviklere som har valgt React, å bruke mer tid på å bygge funksjoner og mindre tid på å konfigurere infrastruktur. Det gir også rekkverk for å forhindre antimønstre, og sikrer at prosjektene skaleres fra et lite nettsted til en fullverdig nettapplikasjon. Rammeøkosystemet er mangfoldig, og det er mye spesifikk kunnskap som trengs for å få alle disse brikkene til å spille godt sammen.

Dette betyr ikke at selskaper ikke vil prøve det alene - det gjør de. Det ender vanligvis ikke bra, som Sullivan bemerket: "Den konsistente tilbakemeldingen vi får fra selskaper er at de prøvde å lage sin egen løsning og det viste seg å være vanskelig å opprettholde over tid." For eksempel fant Hulu at utviklerne ble mer produktive etter at de byttet fra en tilpasset løsning til Next.js.

Samarbeider om hva som er Next.js

Ja, Angular ble født på Google, men selskapet prøver å kaste et bredere nett når de optimaliserer nettrammer, ifølge Sullivan. "Hvert rammeverk har sine egne brukssaker og smak. Og ingenting erstatter en smart utvikler som vurderer alle kriteriene og velger riktig ramme for en bestemt applikasjon." Når det er sagt, "Vi la merke til at mange utviklere velger å bruke React, Angular og Vue, så vi møter utviklere der de er. Vi hadde en erkjennelse av at denne beslutningen hører til utviklere. Vi ønsker å gjøre dem vellykkede (og deres apper raskt) uansett hvilken ramme de velger. "

Når det gjelder Next.js, bidro Chrome-teamet til 43 trekkforespørsler i 2019, og reduserte ubrukt JavaScript med over 100 kb i ett område og droppet total blokkeringstid (tiden når en bruker ikke kan klikke på siden) med halvparten (800 ms til 400ms på zeit.com). De har også lagt til nye resultatmålinger til Next.js, slik at team som bruker den, bedre kan forstå applikasjonen deres rett ut av boksen.

Hvordan få en utviklerjobb: De beste programmeringsspråk å lære i 2020 (TechRepublic)

Og utover Next.js? "Bortsett fra Next, får vi også gode tilbakemeldinger fra andre rammer, som Vue, Gatsby, Angular (selvfølgelig), Ember og Svelte - en nykommer. Hvor vi ikke har bidratt med kode direkte, har vi støttet flere ytelser prosjekter gjennom vårt rammefond med mål om å tillate flere slike gevinster å perkolere gjennom rammenes økosystem og dermed til utviklerne, uavhengig av rammen de velger. "

Avsløring: Jeg jobber for AWS, men ingenting her refererer direkte eller indirekte til arbeidet mitt der.

Google Weekly Newsletter

Se hvordan du får mest mulig ut av Google Dokumenter, Google Apps, Chrome, Chrome OS, Google Cloud Platform og alle andre Google-produkter som brukes i forretningsmiljøer. Leveres fredager

Registrer deg i dag

© Copyright 2021 | pepebotifarra.com