Det kan vÊre vanskelig Ä finne de beste Vue.js-utviklerne. Du mÄ vite hvor du skal lete, kunne bestemme ferdighetene deres, og til slutt mÄ du passe pÄ at de er riktig for din bedrift.
Heldigvis vet vi i Proxify akkurat hvordan det gjĂžres.
Les videre for Ă„ finne svarene i denne praktiske, korte og konkrete Vue.js-veiledningen.
Hva er Vue.js?
I 2013 kom en Google-ingeniĂžr ved navn Evan You over et problem. Han og teamet hadde behov for Ă„ utvikle en ganske kompleks UI (brukeropplevelse) prototype, men de trengte den raskt. Ă
skrive overflÞdig (jeg kan legge til: kjedelig) HTML-kode kom ikke til Ä forkorte tiden, sÄ de lette etter en annen tilnÊrming.
De fant ingen lĂžsning. Til Evan og hans jevnaldrendes overraskelse, fantes det ikke noe verktĂžy, rammeverk, applikasjon eller bibliotek som kunne gjĂžre dem i stand til Ă„ lage en prototype raskt. De satt rett og slett fast!
De eksisterende verktĂžyene inkluderte Angular.js (en proto-React.js), og Backbone.js som hovedsakelig ble brukt til store MVC-baserte applikasjoner, og de var egentlig ikke tilstrekkelige for prosjektene de Ăžnsket Ă„ gjennomfĂžre.
LÞsningen lÄ rett foran dem hele tiden: Angular.js. Evan tok delene han likte fra Angular, brukte dem pÄ nytt og laget Vue.js, til hele Google Creative Lab-teamets glede.
De slapp sin fÞrste Vue.js-iterasjon i 2013, tett etterfulgt av den fÞrste stabile Vue.js-utgivelsen i 2014. Du kan finne historien bak Vue.js-utgivelse pÄ GitHub.
Hvor populĂŠr er Vue.js?
Vue.js, et rammeverk som stammer fra programmeringssprÄket JavaScript, er i dag veldig populÊrt blant alle utviklere, spesielt for programvareutvikling som krever en lett tilnÊrming til et komplekst sett med problemer.
Her er noen fÄ av de store nettapplikasjonene og plattformene som er bygget med Vue.js:
- Gitlab
- Trivago
- Statista
- Behance
- Og den velkjente 9GAG
NÄr det gjelder utprÞvde (eldre) teknologier, er de vanligvis bedre enn nye, eller kommende rammeverk, nÄr det gjelder sikkerhet. Dette er hovedsakelig fordi eldre rammeverk har blitt utsatt for et stort antall sÄrbarheter gjennom Ärene, og teamet bak dem har hatt tid til Ä endre og forbedre den generelle arkitekturen.
Ă
bruke relativt "umodne" verktĂžy medfĂžrer en todelt risiko:
- Flere feil, sÄrbarheter eller utelatelser
- Mindre fellesskap, med utilstrekkelig dokumentasjon, om det er behov for hjelp
Vue.js er et eldre rammeverk med Äpen kildekode (2014), noe som betyr at det bestÄr modenhetstesten med glans.
I fĂžlge en JavaScript-undersĂžkelse fra 2020 var Vue.js det tredje mest populĂŠre JS-rammeverket det Ă„ret, rett bak React.js (2.) og Svelte (1.). I tillegg er utviklerne stort sett positive til Ă„ jobbe med Vue.js. Rundt 42 % av respondentene sa at de ville bruke rammeverket igjen, mens 32 % uttrykte interesse for Ă„ lĂŠre mer om Vue.js i fremtiden.

Vue.js er veldig populÊr pÄ GitHub. Den har for tiden 194K+ stjerner, og mer enn 400 bidragsytere stÞttet av et betydelig antall sponsorer og andre stÞttespillere.
Hvor finner du Vue.js-utviklere?
Som nevnt ovenfor, er sÊrdeles dyktige Vue.js-utviklere vanskelige Ä fÄ tak i. Det Ä ansette en utvikler er generelt en veldig spesiell oppgave som involverer flere deler, og det er mange ting som kan gÄ galt, pÄ uforutsigbare mÄter.
Heldigvis har vi i Proxify gjort prosessen med Ä finne og ansette Vue.js-utviklere bÄde rask og effektiv.
Det er to hovedtilnĂŠrminger til Ă„ finne dyktige Vue.js-utviklere:
- Manuelt (Internt)
- Automatisert (Ekstern)
Den manuelle mÄten involverer enten deg selv, eller en ansettelsesansvarlig fra bedriften din (eller til og med noen andre!), som manuelt sÞker, lokaliserer og snakker med den potensielle utvikleren.
Ansettelsesansvarlig mÄ vurdere deres soft skills, stack proficiency og andre ferdigheter, ferdigheter og arbeidserfaring som du tror vil vÊre relevant for det kommende prosjektet. Mer om det Ä intervjue utviklere senere.
Her er noen av de mest populĂŠre plattformene der du kan finne erfarne Vue.js-talenter:
- Upwork
- Toptal
- Proxify
- PeoplePerHour
- Indeed
- Working Nomads
- LinkedIn
Som en stolt Proxifier vil jeg anbefale Ä starte sÞket med Proxify og gÄ videre derfra. Det er en sÞmlÞs ansettelsesopplevelse, og en trippel-vinn (vinn-vinn-vinn?)-for klienten, utvikleren og vÄr plattform.
PÄ den andre siden kan du jobbe med et bemanningsbyrÄ, og automatisere/outsource hele ansettelsesprosessen mens du fokuserer pÄ andre oppgaver i bedriften din.
Denne tilnÊrmingen frigjÞr noe av tiden din, men problemet er at "du aldri vet hva du kommer til Ä fÄ"-som Forrest Gump sa. BemanningsbyrÄer er ofte upÄlitelige og uegnet nÄr det gjelder Ä finne egnede teammedlemmer som vil vÊre genuint interesserte og lidenskapelige i forhold til Ä jobbe med prosjektene dine.
Betydningen av Ă„ finne den rette freelance Vue.js-utvikleren er stor, da en utvikler kan gjĂžre et utviklingsteam enten sterkere eller svakereâuavhengig av utviklingsstadiet til applikasjonen.
Hvordan intervjue Vue.js-utviklere
Enten du leter etter utviklere pÄ heltid eller deltid, er det et par ting du bÞr huske pÄ under intervjuprosessen:
- Antall Ă„r med erfaring;
- Soft skills;
- Stack proficiency (frontend, backend, full-stack);
- KompetanseomrÄde (webutvikling, mobilutvikling, hybrid utviklingsmodell)
Oppsummert bĂžr kandidaten vĂŠre dedikert til arbeidet sitt, alltid ivrig etter Ă„ lĂŠre mer og forbedre seg, ha et godt Ăžye for detaljer og identifisere feil i stor og kompleks kode.
Tekniske ferdigheter enhver Vue.js-utvikler bĂžr ha
Som et av de raskest voksende JavaScript-rammeverkene i dag, har Vue.js ogsÄ etablert seg som et populÊrt rammeverk blant utviklere pÄ grunn av dets tilgjengelighet, allsidighet og ytelse.
PĂ„ bakgrunn av dette, er noen av de viktigste tekniske ferdighetene en lovende Vue.js-utvikler bĂžr ha:
HTML + CSS: Som de fleste av dere vet, er HTML og CSS ryggraden i hele Internett. HTML forteller siden hva den skal vise, og CSS forteller nettet hvordan siden skal se ut. Siden Vue.js-applikasjoner er opprettet med SFC (Single File Components), lar den samme modellen utviklere definere JavaScript-logikken, HTML-koden og CSS-stilene i applikasjonen.
Moderne JavaScript: Vue.js-apper fungerer med dynamiske i stedet for statiske data. Utviklere vil kunne bruke moderne JavaScript for Ä skrive hvordan Vue.js-applikasjonene deres skal hÄndtere denne logikken i SFC. Dette vil forbedre effektiviteten og hastigheten til hele utviklingsprosessen og la utviklerne skrive bedre kode.
Git: Enhver programvareutvikler bÞr vÊre kjent med Git. Git representerer et versjonskontrollsystem (VSC) som gjÞr det mulig for utviklere Ä spore endringer i filene sine, og gjÞr det enklere Ä jobbe med flere personer pÄ samme prosjekt. Vue.js-utviklere bÞr vÊre kjent med GitHub, eller Gitlab, og bÞr enkelt kunne bruke dem.
Vue, Vue CLI og Vue Native: Det sier seg selv, men vellykkede Vue.js-utviklere bÞr vÊre godt kjent med programmeringssprÄket til Vue. For kommende utviklere er Vue-dokumentasjonen et flott sted Ä starte.
I tillegg er Vue.js ogsÄ "utstyrt" med et kommandolinjegrensesnitt (CLI) for Ä gjÞre utviklingsprosessen raskere, enklere og mer pÄlitelig. Den siste CLI-en opererer pÄ en helt ny plugin-basert arkitektur, som lar utviklerne lage egne, unike forhÄndsinnstillinger og plugins.
Vue Native har nÄ blitt avviklet. Vue.js-utviklere bÞr imidlertid alltid strebe etter Ä lÊre nye rammeverk som vil hjelpe dem med Ä forbedre sine mobile utviklingsferdigheter (native, cross-platform, hybrid).
I fÞlge en av vÄre Proxify-utviklere, Akin Oztorun, er de tre viktigste tekniske konseptene enhver Vue.js-utvikler bÞr kjenne til:
- Reaktivitet
- Composition API
- Watchers og computed properties
PÄ spÞrsmÄlet mitt om anvendbarheten til Vue.js, ble Akin tankefull.
"Dette er faktisk et vanskelig spĂžrsmĂ„l, fordi jeg tror jeg kan skrive alle slags enkeltside-applikasjoner med Vue. Men jeg tror problemet bunner i kompleksitet. Ă
hÄndtere kompleksitet krever mer erfaring med Vue, antar jeg. Den eneste mÄten Ä skrive komplekse apper med Vue.js pÄ, er ved Ä fokusere pÄ ren, modulÊr og gjenbrukbar kode."
Akin Oztorun
"Hvis du bare Ăžnsker Ă„ skrive en mvp eller en app til en liten startup, spiller ansiennitetsnivĂ„et ditt ingen rolle; skriv det med Vue fordi det er raskestâ, sier han.
Og hva med optimalisering: hvordan vil du optimalisere Vue.js-applikasjonene dine for ytelse og hastighet? Akin er rett pÄ sak:
âDen beste mĂ„ten Ă„ optimalisere koden pĂ„, er Ă„ lage gjenbrukbare, komponerbare, vanlige filer via Composition API, mener jeg. Ă
fÞlge SOLID-prinsipper kan vÊre nyttig. GjÞr alle funksjoner sÄ smÄ som mulig, og gi hver funksjon ett formÄl. Og gjÞr dem ogsÄ gjenbrukbare hvis mulig."
Akin Oztorun
Mateus Ăvila Isidoro, en annen utvikler fra Proxify-nettverket, utdypet videre.
"For det fĂžrste er Vue.js rask, veldig rask. Dette kan sees i nyere benchmarks som disse. Denne hastigheten kommer med mange argusĂžyne som observerer prosjektet, en av de mest innflytelsesrike pĂ„ GitHub.â
For potensielle Vue.js-utviklere, er dette hva Mateus hadde Ă„ si:
"Vel, jeg tror en god Vue-utvikler kan skape magi uten Ă„ legge ned stor innsats. De kan bare legge til CDN-filen og instansiere Vue-objektet, og voilĂĄ! Eldre prosjekter kan oppdateres pĂ„ sekunder. SĂ„ hvis du er en ung utvikler som kan HTML, CSS og JS, er du i stand til Ă„ bli en god Vue-utvikler. LĂŠringskurven er slak, det er en fornĂžyelse, og dokumentasjonen er unik.â
Mateus Ăvila Isidoro
Han legger ogsĂ„ til at nye utviklere raskt vil oppdage at HTML er en fornĂžyelse Ă„ jobbe med. "Veien til lĂŠring er enkel og gir mye mening. For backend-utviklere betyr det at de enkelt kan implementere kompleks logikkâ, legger han til.
NĂ„r det gjelder applikasjonskompleksitet, var Mateus tydelig.
âVue 2 fungerer med klasser, men den nye versjonen kommer med composition API som tilbyr en stor forbedring i modularitet, slik React gjorde med kroker. SmĂ„ prosjekter kan ikke kjĂžres med React. Selv store selskaper med komplekse, logiske data kan enkelt bruke Vue i kjernen, og rammeverket kjĂžrer smidig.â
Mateus Ăvila Isidoro
IfÞlge ham er Vue.js veldig vennlig for applikasjoner av alle slag. Han legger til at enhver applikasjon kan kjÞre Vue. "Folk sier at Vue.js ikke har like god stÞtte som React Native eller Flutter har. Dette er en misforstÄelse, for Vue stÞttes av Ionic og Tauri (dette fantastiske verktÞyet jeg oppdaget forrige sÞndag pÄ Fireship Channel- du kan se det her)."
"Fantastiske rammeverk som Nuxt og Quasar kan lage alle typer applikasjoner. SelvfĂžlgelig legger store selskaper som Facebook og Google mye penger og krefter i Ă„ bygge applikasjoner som React og Flutter, men Vue nĂŠrmer seg stadig."
Mateus Ăvila Isidoro
Mateus avsluttet med et ord om skaperen av Vue.js.
"Og til slutt, skaperen av Vue.js, Evan You, laget et annet fantastisk verktĂžy kalt Vite. Dette verktĂžyet bruker ES-moduler. De er mye raskere Ă„ kjĂžre i nettlesere, og alle de nye nettleserne kjĂžrer Vite ganske braâ.
"Med dette verktĂžyet kan du lage smĂ„ og ultraoptimaliserte pakker distribuert til HTTP 2/0 og HTTP 3/0. Dette er ikke et Vue-spĂžrsmĂ„l, men sluttresultatet av en Vue-applikasjon kan sammenlignes med en React-applikasjon. Vue kjĂžrer raskere i nettleseren, lager smĂ„ pakker nĂ„r det bygges, og er en fornĂžyelse Ă„ jobbe med - med Typescript-stĂžtte og >ES6 ogsĂ„.â
Mateus Ăvila Isidoro
Endrit Veseli, en senior programvareingeniÞr hos Proxify, kom med sin mening ogsÄ. Han er dyktig i Angular, Vue.js, Node.js og et par andre rammeverk.
PÄ spÞrsmÄlet mitt om de tre viktigste tekniske konseptene angÄende Vue.js, er dette hva han valgte:
- Reactivity and Change Detection Cycle
- Data Binding and Component State
- Virtual DOM
IfĂžlge Endrit er Vue.js egnet for alle typer applikasjoner. Han utdypet ytterligere:
"Alle applikasjoner nÄ til dags, men det skinner aller mest i de eldre appene, vil jeg si. Du skjÞnner, Vue er et av fÄ biblioteker som kan integreres i en eksisterende nettapplikasjon ved ganske enkelt Ä legge til Vue-kilde skriptet i en eksisterende HTML ved Ä bruke en vanlig < script >-tag, og begynne Ä jobbe med API-en uten mye overhead og uten behov for kompleks npm eller node_modules installasjon."
Endrit Veseli
Han fortsetter: "I og med at det er en minimal overhead, siden all kompilering skjer pÄ farten nÄr du bruker den pÄ denne mÄten, er fordelen ved Ä bruke Vue til Ä modernisere noen deler av siden, at du slipper Ä mÄtte skrive om (fra bunnen av) den eksisterende nettappen."
NÄr det gjelder optimering for ytelse og hastighet, var Endrit Äpen og rett pÄ sak.
âBruk stateless komponenter nĂ„r det er mulig. Cacherdata (for det meste gjort ved Ă„ bruke beregnede egenskaper som Vue automatisk cacher og ikke beregner pĂ„ nytt hvis ingen nye endringer har funnet sted).
Endrit Veseli
Bruk alltid nÞkkelattributter nÄr du gÄr gjennom DOM-data. PÄ denne mÄten vil Vue holde styr pÄ elementene og bare handle pÄ disse endringene, og ikke pÄ hele delen av den gjengitte HTML-en. Lazy loading av komponentene nÄr det er mulig."
Vue.js intervjuspÞrsmÄl + forventede svar
Her er noen tekniske spÞrsmÄl for Ä vurdere de tekniske ferdighetene til en potensiell Vue.js-utvikler:
- Hva er forskjellen mellom slots og scoped slots?
Forventet svar: En slot er en metode for Ä sende informasjon til en komponent. Det er en plassholder som du kan fylle med data fra den overordnede komponenten, som for eksempel en rekke objekter som tilhÞrer et objekt. De er nyttige nÄr du Þnsker Ä kommunisere informasjon mellom overordnede og underordnede komponenter.
Scoped slots likner, men de er mer spesifikke og gjenbrukbare. Du kan definere dem som vanlige HTML-elementer, og innholdet deres vil bli gitt videre som rekvisitter nÄr de brukes i andre komponenter.
- Hva er fordelene og ulempene med Ă„ jobbe med mixins?
Forventet svar:
Fordeler: Mixins er flotte for Ä lage gjenbrukbar funksjonalitet som du kan dele mellom flere komponenter uten Ä duplisere kode, eller Ä mÄtte skrive alt fra bunnen av hver gang. De gjÞr det ogsÄ enklere for utviklere, som ikke er kjent med Vue, Ä raskt komme i gang ved Ä bruke forhÄndsbygde funksjoner. De slipper Ä skrive sin egen kode hver gang noe nytt trenger implementering (noe som kan ende opp med Ä bli vanskeligere for dem enn om de brukte forhÄndsskrevne funksjoner).
Ulemper: En ulempe er at det noen ganger er vanskelig for utviklere som ikke kjenner Vue eller JavaScript Ä forstÄ hva som skjer i mixins hvis de aldri har sett dem fÞr.
- Hva utgjĂžr en enkeltfilkomponent?
Forventet svar: En enkeltfilskomponent er en HTML-fil som inneholder all nĂždvendig JavaScript-kode som trengs for at den skal fungere.
- Definer den virtuelle DOM og dens bruk i forhold til Vue.js.
Forventet svar: Den virtuelle DOM er en representasjon av HTML-dokumentet som er lagret i minnet. Den brukes for Ă„ fremskynde prosessen med Ă„ oppdatere selve dokumentet.
Vue.js bruker den virtuelle DOM som standard, noe som betyr at eventuelle endringer i egenskapene fÞrst gjÞres pÄ klientsiden for deretter Ä reflekteres i den faktiske DOM nÄr de er klare. Dette sikrer at det ikke er noen forsinkelse mellom nÄr endringen gjÞres og nÄr den sees pÄ skjermen.
- IfĂžlge deg, hva er fordelene og ulempene ved Ă„ bruke Vue.js?
Forventet svar: Det er flere fordeler med Ä bruke Vue.js: det er enkelt Ä lÊre, det er raskt i bÄde utvikling og produksjon, og det har god dokumentasjon. Imidlertid er det ogsÄ noen ulemper - den stÞtter bare moderne nettlesere (IE9+), siden det ikke er innebygd mobilstÞtte ennÄ (selv om det er tredjepartsbiblioteker som NativeScript), og en mangel pÄ plugins.
- Hva er attributtbindinger i Vue?
Forventet svar: Attributtbindinger i Vue er en mÄte Ä kommunisere pÄ mellom komponenter, og brukes til slikt som Ä overfÞre data fra en komponent til en annen.
- Beskriv hvordan data flyter mellom komponenter i en Vue.
Forventet svar: Dataene flyter mellom komponenter i en Vue gjennom props. Props tilsvarer HTML-attributter, og de overfĂžres fra overordnet til underordnet. Hvis du for eksempel har en overordnet komponent som har en liste over produkter, vil hvert produkt ha sin egen underordnende komponent som er ansvarlig for Ă„ vise informasjonen om produktet. Den overordnede vil videreformidle produktinformasjonen som props, slik at den underordnende vet hva det skal vise.
- Hva er direktiver i Vue?
Forventet svar: Direktiver er en av kjernekomponentene i Vue.js. De lar deg utvide funksjonaliteten til komponentene dine ved Ă„ legge til tilpassede HTML-attributter og atferd.
- Er det mulig Ă„ kombinere lokale og globale stiler?
Forventet svar: Det er mulig Ä kombinere lokale og globale stiler ved Ä bruke stilobjekter, som kan lages med v-bind:style pÄ elementer, eller med {} parentes i JavaScript-koden. Dette lar deg opprettholde riktig separasjon mellom stiler uten bekymring for overskriving.
- Hvorfor ville du valgt Vue.js fremfor andre frontend-rammeverk?
Forventet svar: Ă
velge Vue fremfor andre frontend-rammeverk gjĂžres fordi det er enkelt Ă„ lĂŠre og implementere, og det er kraftig nok for store applikasjoner med komplekse krav.
Hvorfor burde du ansette en Vue.js-utvikler?
Det er flere grunner til Ă„ ansette en profesjonell Vue.js-utvikler, eller bygge et team med flere utviklere avhengig av stĂžrrelsen og omfanget av prosjektet ditt.
For det fĂžrste er Vue.js enkel Ă„ bygge med, bruke og feilsĂžke. Enkelheten fĂžrer til forbedret feilsporing i forhold til andre nett-rammeverk. Nettapplikasjon din vil bli mindre utsatt for feil og andre problemer i koden.
Som noen av vÄre Proxify-utviklere sa ovenfor, er Vue.js veldig fleksibelt og tilpasningsdyktig. Det kan fungere med alle eksisterende populÊre applikasjoner og rammeverk, uavhengig av tilstanden til utviklingssyklusen som allerede er pÄ plass.
Til slutt gir Vue.js en enkel tilnĂŠrming til det som ellers ville vĂŠrt en kompleks utviklingsprosess. Dyktige Vue.js-utviklere vil kunne utnytte dette til sin fordel for Ă„ bygge bedre apper.