Att hålla sig uppdaterad med samtiden innebär att hålla sig uppdaterad med de mest optimerade programmingsspråken idag (prestanda och minnesanvändningsmässigt), med alla nödvändiga medel.
Med detta som bakgrund bör en bra utvecklare vara bekant med de flesta av de så kallade "klassiska" språken där ute (C++, C#), samtidigt som hen noggrant övervakar utvecklingen av nya språk och potentialen att använda dem i fält.
Dart är definitivt ett av de nya språken, även om det bara är relativt nytt. I den här guiden ska jag försöka minska klyftan av att förstå vad Dart används till och hur man hittar grymma Dart-utvecklare utan att skapa allt för stor påverkan på alla inblandades förnuft.
Vad är Dart?
Dart är ett klientorienterat språk för utveckling av mobilappar, men det kan också användas för att bygga skrivbords- och serverappar.
Det utvecklades av Google och släpptes redan 2011 och fungerade i huvudsak som ett sidospår till en konferens i Danmark. Med lanseringen av Flutter 2018 har Dart dock vunnit mycket i popularitet sedan dess och blivit huvudspråket för Flutter SDK generellt sätt.
Idag kan du inte riktigt använda Dart utan Flutter, helt enkelt för att de går ihop lika bra som sylt och pannkakor gör. Denna kombination av Flutter + Dart är mycket populär för utveckling av mobilapplikationer, främst på grund av att de tillhandahåller cross-plattformskompatibilitet (iOS- och Android-appar) och minskar den tid och pengar som behöver spenderas på ett projekt.
Hur populärt är Dart?
Enligt StackOverflow 2021 års rapport var Dart det 19:e mest populära språket bland alla respondenter och det 18:e mest populära språket bland alla professionella utvecklare som deltog i undersökningen.
En intressant sak att notera är att majoriteten av utvecklare som vill prova Dart redan är bekanta med och skickliga i JavaScript.
Men när det gäller den högst betalande tekniken och teknikstacken hamnar Dart absolut sist på listan (även om det inte berättar hela historien, mer om det senare). En skicklig Dart-utvecklare förväntas tjäna cirka $33,000 årligen i USA.
Var hittar jag Dart-utvecklare?
Som StackOverflow berättade, bör högkvalitativa Dart-utvecklare redan vara skickliga i JavaScript och andra JavaScript-relaterade frontend-språk, inklusive Typescript och HTML + CSS-paketet.
I ljuset av detta innebär det att man måste följa brödsmulorna, eller i detta fall, finkamma de platser som besöks av JavaScript-rpoffs och andra webbutbecklings- eller UI/UX-entusiaster, för att bygga ett Dart-utvecklingsteam.
Dessa platser kan vara vilka som helst, inklusive online-jobbplattformer, tekniska forum, programvarukonferenser eller även här på Profixy.
Vi erbjuder en snabb och pålitlig tjänst som parar ihop dig med den bästa utvecklaren för dina behov på några dagar. Du kan testa tjänsten i en vecka, och om du inte är nöjd med vad du har finns det en 100% pengarna-tillbaka-garantipolicy, inga frågor ställda.
När det gäller tillgänglighet erbjuder vi också både deltids- och heltidsutvecklare samt extra handledning från en av våra duktiga kundansvariga som du kan kontakta vid en given tidpunkt.
Hur intervjuar jag Dart-utvecklare?
Oavsett om du vill anställa en projektledare, en så kallad "people's person" med maxade soft skills (rollspelslingo) eller en teammedlem som erbjuder kostnadseffektiva lösningar–att leda en strukturerad intervju är ett absolut MÅSTE.
Kandidaten måste ha en stark känsla för öppenhet, presentabilitet, flexibilitet och vara en utmärkt kommunikatör.
Dessutom bör de ha mellan 3-5 års erfarenhet av fälterfarenhet (eller mer!) och bör vara flitiga i hur de skriver, felsöker och debuggar sin kod.
De bästa tekniska färdigheterna dart-utvecklare bör ha och använda
Att anställa en Dart-utvecklare innebär vanligtvis att anställa en Flutter-utvecklare: du kan bara inte skilja de två åt! Och det är logiskt: Dart är Flutters huvudspråk, så den ideala kandidaten bör vara skicklig i att skriva Dart-kod och bekväm med att bygga appar i Flutter-miljön.
En lovande Dart-utvecklare bör ha följande allmänna ansvar:
- Delta i hela utvecklingsprocessen från början till slut
- Brainstorma, designa och utveckla applikationer
- Skriva konsekvent och ren kod med flitig dokumentation
- Hålla sig uppdaterad med ny teknik och implementera denne regelbundet
- Följa nya trender gällande Dart och Flutter
På tal om hårda färdigheter (teknisk skicklighet) bör en utmärkt Dart-utvecklare ha:
- Utmärkt kunskap om Git-förvaret
- Goda kunskaper i SQL
- Grundlig kunskap om programmeringsspråket Dart
- Grundlig kunskap om Flutter-ramverket
- Stark kunskap om olika metoder för mjukvaruarkitektur
- Erfarenhet av Swift eller Kotlin
- Erfarenhet av iOS- och Android-mobilutvecklingstjänster
Vi har sett att anställa Flutter-apputvecklingsteam är synonymt med att anställa Dart-utvecklare, så en bra rekryteringschef bör överväga båda när man bedömer en potentiell kandidat.
Enligt Omar Hussein, en utvecklare från Proxify-nätverket, finns det en skillnad på användningsområdena för Dart och några av de andra språken, till exempel C++.
"Dart optimeras mer för klient- och serverapplikationer. Medan C++ är optimerad för hög kontroll över minne och systemresurser."
Omar Hussein
På min fråga om vad som är det mest optimerade sättet (och det snabbaste) att köra Dart-kod, Omar var kort och koncis. "Genom att följa effektiv Dart-stil och standarder, och dessutom att köra Dart-kodmått", sa han.
Slutligen, vad används egentligen Dart bäst till? Omar avslutade med sitt nästa svar.
"Dart är bäst för att skapa mobilapplikationer på både iOS- och Android-plattformar med Flutter SDK."
Omar Hussein
Frågor för Dart-intervjuer
Här är några frågor för att bedöma kandidatens tekniska beredskap:
- Vilka är de mest framträdande Dart-funktionerna?
Förväntat svar: Refactoring, virtuella maskiner, lexikalisk omfång, valfria statiska typer, brytpunkter och stängningar, samt andra funktioner.
- Vilka datatyper stöds i Dart?
Förväntat svar: Strängar, booleska tecken, kartor, listor och den dynamiska typen.
- Vad används "typedef" för i Dart?
Förväntat svar: Typedef används för att skapa en funktions användardefinierade identitet, även kallat alias. Det aliaset används sedan i stället för programkoden i processen.
- Hur många operatörer stöder Dart?
Förväntat svar: Typtest, bitvis, logisk, aritmetisk, relationell och jämlikhet och tilldelningsoperatorer.
- Stöder Dart function overloading?
Förväntat svar: Det gör det inte.
- Vilka plattformar används i Dart?
Förväntat svar: Den mest populära plattformen som för närvarande stöds av Dart är Flutter, som är en SDK för att bygga plattformsoberoende mobilappar. Det finns dock Server-ramverk som Jaguar, Start och Alfred. Också. Dart stöder klientwebbappramverk som till exempel OverReact och AngularDart.
- Är Dart enklare än JavaScript?
Förväntat svar: Det beror på! Till exempel är det lättare att lära sig Dart för utvecklare som redan är bekanta med statiskt skrivna språk som följer OOP, till exempel Java och TypeScript.
- Vad är Dart och varför använder Flutter det?
Förväntat svar: Dart är ett språk med öppen källkod som kan användas för att bygga applikationer för mobila enheter och andra målgrupper. Det används främst av Flutter-ramverket för att bygga användargränssnitt för iOS- och Android-plattformar. Flutter använder Dart eftersom det är utvecklarfri i slutändan, snabbt samt pålitligt.
- Vilken redigerare används för att aktivera brytpunkt och steg-för-steg-felsökning?
Förväntat svar: Android Studio och Visual Studio Code är de två viktigaste IDE:erna för Dart-verktyg och felsökning.
- Vad är Method Overriding i Dart?
Förväntat svar: Method Overriding är en funktion i objektorienterade språk som gör att en metod kan definieras två gånger med different-implementeringar. I Dart görs detta med nyckelordet super. Detta möjliggör enorm flexibilitet i programmeringen och kan hjälpa till att undvika duplicering av kod.
Den huvudsakliga användningen för Method Overriding i Dart är för att utöka klasser. Om en klass har en metod med samma namn- och typsignatur som en överordnad klass kan den underordnade klassen åsidosätta den överordnade metoden.
- Vad är en constructor i Dart?
Förväntat svar: En constructor i Dart är en speciell funktion i en klass som ansvarar för att ställa in klassens variabel när den har skapats. Dart anger en constructor som använder klassens namn. Som en funktion kan en constructor parametriseras.
Varför ska du anställa en Dart-utvecklare?
Dart, och särskilt Flutter, är relativt nya datorprogrammingsverktyg, vilket gör dem mer optimerade och tillämpliga för det nuvarande mobila applikationsbyggnadslandskapet.
En Dart-utvecklare kommer att vara snabbare och effektivare med företagets resurser och kommer jämförelsevis att kunna slutföra project utan att använda komplikationerna med C++ eller C# (även om det också kan utnyttja de båda).
För ett snabbt, smidigt och framtidsorienterat företag är det en no-brainer att anställa Dart-utvecklare för att arbeta med alla kommande projekt och applikationer, punkt.