Maybaygiare.org

Blog Network

det goda och det dåliga med Xamarin Mobile Development

innehåll

lästid: 16 minuter

När vi överväger iOS-eller Android-apputveckling tänker de flesta av oss på Objective-C vs Swift och Java först och främst. Betraktas som inbyggda tekniska stackar, de används naturligtvis oftast mobila utvecklingsverktyg när det gäller iOS-och Android-apputveckling. Det finns dock fler sätt att bygga prestanda och användarvänliga mobilappar. Och Xamarin är en av dem. I den här artikeln genomför vi en djupgående Xamarin-granskning och jämför den med inbyggda och plattformsoberoende mobila utvecklingslösningar på marknaden. Om du känner till grunderna kan du överväga att hoppa till de avsnitt du är intresserad av.

Vad är Xamarin?

det är omöjligt att ignorera Xamarin när man talar om de viktigaste metoderna för mobil applikationsutveckling. Xamarin är ett verktyg som används för plattformsoberoende mobil app utveckling som tillåter ingenjörer att dela upp till 90 procent av koden över större plattformar. Som ett relativt nytt verktyg är det baserat på Microsoft technology stack och har redan en gemenskap med över 1, 4 miljoner utvecklare.

plattformen byggdes av utvecklarna bakom Mono, en öppen källkodsutvecklingsplattform baserad på.NET Framework, ledd av Miguel de Icaza och introducerades först 2001. Xamarin-företaget grundades den 16 maj 2011.

men till skillnad från föregångaren skapades Xamarin som ett kommersiellt projekt tills företaget förvärvades av Microsoft 2016. Xamarin blev en populär plattformsprodukt för att utveckla mobilappar inom Microsofts ekosystem. Detta förvärv bröt det finansiella hindret för att använda Xamarin. Som Microsoft gjorde Xamarin SDK öppen källkod, blev det en del av Xamarin Visual Studio Integrated Development Environment (vi diskuterar bästa ide att använda för Xamarin utveckling nedan). Vilka är huvuddragen i Xamarin?

c# språk. Xamarin använder ett enda språk, C#, för att skapa appar för alla mobila plattformar. Till skillnad från tolkade lösningar, som Appcelerator Titanium, är Xamarin inbyggt sammanställt, vilket gör det till ett alternativ för att bygga högpresterande appar med inbyggt utseende och känsla.

baserat på. NET framework. C # är ett moget språk med stark säkerhet-typing som förhindrar kod från oväntat beteende. Eftersom C# är ett av.NET framework-språken kan det användas med ett antal användbara. Net-funktioner som Lambdas, LINQ och asynkron programmering (async/await).

tekniskt sett använder Xamarin C # och inbyggda bibliotek inslagna i .Net lager för plattformsoberoende app utveckling. Sådana applikationer jämförs ofta med infödda för både iOS och Android mobila utvecklingsplattformar när det gäller prestanda och användarupplevelse. Dessutom kan Xamarin utnyttja all inbyggd och den senaste API-åtkomsten för att utnyttja underliggande plattformsfunktioner i Xamarin-appar som ARKit på iOS eller Android Multi-Window.

Xamarin platform

medan koden relaterad till affärslogik, databasåtkomst och nätverkskommunikation kan delas över alla plattformar, låter Xamarin dig skapa ett plattformsspecifikt UI-kodlager. Således ser Xamarin plattformsappar 100% inbyggda på vilken enhet som helst, vilket ger en bättre användarupplevelse jämfört med generiska hybridappar.

sammanställning. Plattformen har två stora produkter: Xamarin.iOS och Xamarin.Android. När det gäller iOS sammanställs källkoden direkt till inbyggd ARM-monteringskod (före-tidssamling), medan Android Xamarin – appar först sammanställs till mellanliggande språk och sedan-till inbyggd monteringskod vid körning (Just-in-Time-kompilering). I båda fallen är processen dock automatiserad och skräddarsydd för att hantera sådana problem som minnesallokering, sophämtning och plattformskompatibilitet som standard.

Xamarin.Form. Xamarin.Forms är en separat produkt som är utformad för att skapa prototyper eller mobilappar som delar upp till 100 procent av koden över iOS och Android.

Xamarin.Mac. Dessutom kan ingenjörer använda Xamarin.Mac för att bygga applikationer för Mac OS. Dessa och några andra produkter från Xamarin-stacken kommer att diskuteras lite.

plattform SDK. Xamarin ger tillgång till plattformsspecifika SDK (Cocoa Touch för iOS och Android SDK) via enkel C# syntax.

plattformsspecifika kodbindningar. I de flesta fall kommer ingenjörer att kunna hantera utveckling som håller det ursprungliga utseendet på respektive plattformar inom Xamarin-miljön. Men Xamarin låter dig ringa befintlig plattformskod (t.ex. Swift för iOS) om du måste återanvända vissa moduler eller realisera vissa plattformsspecifika funktioner som streckkodsskanning, PayPal eller Google Analytics-integration.

stöd för wearables. Xamarin stöder att bygga appar för Apple och Android Watch-enheter. Ingenjörer kan använda Visual Studio både för Mac och Windows för att bygga iOS Apple Watch-appar. Dessutom stöder Xamarin fullt ut Android Wear.

Xamarin projektstruktur. Det mesta av Xamarin-relaterat arbete förväntas köras via en Windows-utvecklingsdator med Visual Studio och Xamarin installerat. Apparna kan felsökas direkt från skrivbordet eller på enheter och emulatorer. Om du planerar att utveckla iOS-appar på Windows är det också möjligt eftersom Visual Studio ansluter till iOS storyboard designer och iOS simulator. Det finns också Visual Studio för Mac som gör det möjligt att köra en simulator på Mac eller direkt på en bunden iPhone. Felsökning körs via Visual Studio.

Xamarin project structure

Xamarin project structure. Image source: Developer Support Blog

To get a more in-depth understanding of Xamarin engineering aspects consider checking these resources:

Main Xamarin Documentation Hub

Xamarin.Android Documentation

Xamarin.iOS Documentation

Xamarin.Forms Documentation

Visual Studio för Xamarin

Xamarin Studio App Center

Xamarin Community Forum

precis som någon annan teknik har Xamarin sina egna fördelar och nackdelar, som nyligen har varit föremål för en het diskussion. För att fatta ett välgrundat beslut om Xamarin vs native development, låt oss väga alla fördelar och nackdelar med apputveckling med Xamarin. Om du verkligen har ont om tid rekommenderar vi att du tittar på den här videon som ger en överblick över Xamarin-plattformens styrkor och svagheter på under 6 minuter.

om du vill komma till detaljer, Fortsätt läsa.

fördelar med att använda Xamarin för utveckling

det finns goda skäl till varför Xamarin används av många företag, inklusive Trello, Slack och GitHub.

bisexuell en teknik Stack för att koda för alla plattformar

Xamarin använder C# kompletteras med.NET framework för att skapa appar för alla mobila plattformar. Således kan du dela i genomsnitt 80-90 procent av koden över plattformar som påskyndar ingenjörscykeln. Xamarin behöver inte heller växla mellan utvecklingsmiljöerna: du kan bygga alla dina Xamarin-appar i Visual Studio eller Visual Studio Code. Plattformsutvecklingsverktygen tillhandahålls som en inbyggd del av IDE utan extra kostnad.

prestanda nära Native

till skillnad från traditionella hybridlösningar baserade på webbteknik kan en plattformsapplikation byggd med Xamarin fortfarande klassificeras som native. När plattformen utvecklas förbättras Xamarin performance ständigt för att helt matcha standarderna för inbyggd utveckling, med Microsoft som ger råd om optimeringstekniker. Visual Studio erbjuder också en komplett lösning för att bygga, testa och spåra appens prestanda: Visual Studio App Center låter dig köra automatiserade UI-tester och identifiera problem innan de släpps. Denna tjänst tillhandahålls dock mot en extra avgift.

tidigare testade och jämförde vi prestandan hos Xamarin och inbyggda appar. Resultaten kan vara något föråldrade; de visar dock tydligt den anständiga nivån på Xamarin apps-prestanda.

Portugals inbyggda användarupplevelser

Xamarin låter dig skapa felfria upplevelser med hjälp av plattformsspecifika gränssnittselement. Det är också möjligt att bygga plattformsappar för iOS, Android eller Windows med Xamarin.Forms tool, som konverterar app UI-komponenter till plattformsspecifika gränssnittselement vid körning. Som användning av Xamarin.Former ökar hastigheten på apputveckling avsevärt, det är ett bra alternativ för affärsorienterade projekt. Ändå kan det finnas en liten nedgång i prestanda på grund av det extra abstraktionsskiktet. För anpassad app UI och högre prestanda kan du fortfarande använda Xamarin.iOS och Xamarin.Android separat för att säkerställa utmärkta resultat.

traditionellt tros Xamarin inte vara det bästa alternativet för appar med tung grafik. Som sagt, det finns ett antal bibliotek som OpenGL ES och ramar som SkiaSharp och Urho som gör utveckling av program med rika anpassade UI, komplexa animationer, eller spel möjligt även i Xamarin.

full hårdvarustöd

med Xamarin får din lösning appfunktionalitet på inbyggd nivå. Det eliminerar alla hårdvarukompatibilitetsproblem, med hjälp av plugins och specifika API: er, för att arbeta med vanliga enheter funktionalitet över plattformarna. Tillsammans med tillgången till plattformsspecifika API: er stöder Xamarin länkning med inbyggda bibliotek. Detta möjliggör bättre anpassning och inbyggd funktionalitet med lite overhead.

öppen källkodsteknik med starkt företagsstöd

efter att företaget förvärvades av Microsoft i februari 2016 genomgick Xamarin licenspolicy radikala förändringar. Xamarin SDK, inklusive runtime, bibliotek och kommandoradsverktyg, har blivit öppen källkod och tillgänglig för alla under MIT-licensen som en del av Visual Studio. Genom att eliminera den stora barriären, kostnaden för licens, banade Microsoft vägen för den fortsatta tillväxten av plattformen. Plus, leds av Microsoft, och stöds av Unity, JetBrains, och Red Hat, de .NET Foundation i allmänhet och Xamarin specifikt har blivit en pålitlig och kraftfull tech stack.

förenklat underhåll

tack vare sin plattformsapplikation gör Xamarin underhåll och uppdateringar enklare. Du kan helt enkelt distribuera ändringarna eller uppdateringarna till källfilen och de kommer att tillämpas på både iOS-och Android-appar. Således hjälper det dig att spara tid och pengar samtidigt som du håller dina appar uppdaterade.

total utveckling ekosystem

Xamarin kommer i ett paket med en komplett utveckling verktygsuppsättning, inklusive sin egen IDE. I April 2018 blev många Xamarin-utvecklingsverktyg som tidigare kallades separata funktioner en del av Visual Studio App Center. Inkluderat är själva plattformen (Xamarin SDK), testning (tidigare Xamarin Test Cloud), distribution och analys (tidigare Xamarin.Insights) plattformar, och många fler. Eftersom verktygslådan förblir gratis behöver du inte investera i ytterligare verktyg eller integrera appar från tredje part för att bygga, testa och distribuera dina Xamarin-appar.

Xamarin.Former: ett ramverk för att skapa inbyggda UI-layouter

Xamarin föreslår att utvecklare bygger mobilappar på två sätt. Den första är att använda Xamarin.iOS och Xamarin.Android, som dök upp tidigare och ursprungligen ansågs vara mer kapabla. Använda Xamarin.Former är det andra tillvägagångssättet. Det är en mer avancerad version som möjliggör snabb prototypning eller produktion av appar med mindre plattformsspecifik funktionalitet. Det är därför Xamarin.Formulär passar bäst för appar där koddelning är viktigare än anpassat användargränssnitt. Det skulle låta dig återanvända upp till 99% av koden, vilket innebär att du kan skapa ett enda gränssnitt och dela det över plattformar utan att designa för varje plattform individuellt. Du kan också bygga applikationer där vissa delar av deras användargränssnitt är gjorda med Xamarin.Former och de andra är konstruerade med hjälp av den inbyggda användargränssnittet.

som Xamarin.Former som utvecklats genom åren blev det ett universellt verktyg och förvärvade ett levande samhälle som uppmärksammar det. Till exempel bidrar vissa tekniska leverantörer till sina bibliotek som Telerik UI som berikar tekniska funktioner som tillhandahåller förkonfigurerade gränssnittskomponenter.

Xamarin.Former XAML Hot Reload

som Xamarin.Forms syftar till snabb och friktionslös utveckling, föreslår Microsoft att man använder ett XAML Hot Reload-verktyg. Det påskyndar utvecklingen genom att låta dig ändra XAML under felsökning och omedelbart se dessa förändringar i den löpande appen, utan att du behöver stoppa och bygga om den. Dessutom kommer ditt navigeringstillstånd och data att bibehållas, så att du snabbt kan iterera på ditt användargränssnitt. På så sätt möjliggör XAML Hot Reload snabbare ombyggnad och distribution av dina appar för att validera UI-ändringar.

att bygga appar för Mac med Xamarin.Mac verktyg

Xamarin.Mac möjliggör utveckling av helt inbyggda Mac-appar med C # och. NET. IT integreras med samma bibliotek som används för att utvecklas i Objective-C med Xcode. Genom att använda Xamarin.Mac kombinerat med Xamarin.iOS och Xamarin.Android, utvecklare kan dela upp till 90 procent av inbyggd kod över Android, iOS och Mac OS. Dessutom Xamarin.Mac integreras med Xcode, så en utvecklare kan använda Xcodes gränssnittsbyggare för att skapa en apps användargränssnitt.

Xamarin learning Resources

Microsoft Learn är en online utbildningsportal som hjälper människor att utveckla tekniska färdigheter relaterade till Microsoft-produkter inklusive Xamarin. Plattformen erbjuder kurser för både nybörjare och erfarna ingenjörer, så att eleverna kan förbereda sig för Microsoft-certifieringar. Utbildningsresurser inkluderar gratis självstyrt lärande, live online-klasser, kontorsföreläsningar och gästföreläsningar.

Xamarin stöd för TV, wearables och IoT

Xamarin framework, tack vare dess Xamarin.Former, gör det möjligt att bygga bärbara versioner för många plattformar. Förutom iOS, Android, Windows – telefoner och Mac kan du utveckla applikationer för Tizen – ett operativsystem som används på vissa Samsung-enheter-för bärbara datorer, tv-apparater och IoT. Förutom det, Xamarin.iOS gör det möjligt att bygga applikationer för tvOS för Apple och watchOS.

Xamarin nackdelar att överväga

det finns dock fortfarande några nackdelar som kan kasta en skugga på plattformen. Så varför inte använda Xamarin?

Brasilien något försenat stöd för de senaste Plattformsuppdateringarna

detta beror helt på Xamarin-utvecklarteamet. Det är omöjligt för tredjepartsverktyg att ge omedelbart stöd för de senaste iOS-och Android-utgåvorna, eftersom det tar lite tid att genomföra ändringarna och/eller introducera nya plugins, etc

IX begränsad tillgång till Open Source-bibliotek

Native development använder omfattande open source-teknik. Med Xamarin måste du använda elementen från plattformen och vissa.net open source-resurser, inför både utvecklare och konsumenter. Medan valet inte är lika rikt som det är för Android-och iOS-mobilapputveckling, kan du använda NuGet-paket som nu innehåller allt som fanns i de pensionerade Xamarin-komponenterna.

hög kostnad för professionell och företagsanvändning

Även om Xamarin är en gratis öppen källkodsplattform för enskilda utvecklare, kan ramverket kosta ett ganska öre för företagets behov. Du kommer att spendera mycket för att köpa en licens för Visual Studio. Till exempel kostar Visual Studio Professional med kärnuppsättningen utvecklingsverktyg $1,199 för det första året och $799 för förnyelse. Samtidigt kommer ett Visual Studio-företag, som möjliggör experiment med ytterligare verktyg, att kosta $5,999 för det första året och $2,569 för förnyelse. Funktionerna för båda vi täcker nedan.

Xamarin Xamarin talangpool och Samhällsbegränsningar

uppenbarligen är Xamarin-samhället betydligt mindre än de för infödda iOS eller Android. Det är också mindre än React och Joniska samhällen. Således kan det vara en utmaning att hitta en erfaren Xamarin-Utvecklare.

enligt Stack Overflow-undersökningen 2020 är det bara 5.8 procent använde Xamarin framework från och med 2020, jämfört med React Native ’s 11.5 procent och Flutter’ s 7.2 procent.

användning av Xamarin jämfört med andra ramverk. Bildkälla: Stack Overflow

trots att antalet Xamarin-ingenjörer inte jämför med iOS – eller Android-infödda samhällen, ger plattformen omfattande stöd till sina utvecklare. Som nämnts ovan erbjuder Microsoft Learn resurser och praktisk utbildning för dem som är nya för denna teknik. Med hjälp av detta stöd är inlärningskurvan för en erfaren C#/. Net-ingenjör minimal.

ett annat problem som vissa utvecklare upplever är fragmenteringen och bristen på standarder för lärande och utvecklingsresurser, inklusive dokument. Detta påverkar kvaliteten på det stöd du kommer att få.

Brasilien grundläggande kunskaper i modersmål

Vid användning av Xamarin.iOS och Xamarin.Android för att bygga mobilappar med riktigt inbyggt utseende måste du fortfarande skriva ett plattformsspecifikt kodlager med de inbyggda API: erna för varje plattform. Så även om det inte är obligatoriskt som det brukade vara, skulle det vara till hjälp att ha minst en grundläggande kunskap om inbyggd teknik (Java/Kotlin för Android och Objective-C/Swift för iOS) krävs för att kunna förstå och få ut det mesta av den plattformsspecifika dokumentationen. Också, Xamarin.Essentials library tillhandahåller flera plattformsoberoende API: er och kan användas för att komma åt inbyggda funktioner. Detta gäller dock inte Xamarin.Form.

Bisexuell större appstorlek

beroende på deras typ och komplexitet är Xamarin-appar vanligtvis större än inhemska (den senare kan vara halva storleken på en Xamarin-app). En enkel” Hej, värld ” app för Android kan ta upp till 16 MB, mycket av det som används av tillhörande bibliotek, innehåll, Mono runtime och Base Class Library (BCL) församlingar.

Xamarin app storlek

Xamarin app storlek. Bildkälla: Utvecklare.xamarin.com

så, Xamarin-appar behöver vanligtvis ytterligare optimering som att länka för att ta bort den oanvända koden från de medföljande biblioteken och hålla appfilstorleken rimlig.

Occurxamarin.Formulär kommer snart att upphöra att existera

i maj 2020 hölls den årliga Microsoft Build-konferensen. Bland andra nyheter meddelades att Xamarin.Forms kommer att gå samman med. NET och utvecklas till en ny plattformsoberoende ram som kallas.Net Multi-platform App UI, eller MAUI. MAUI kommer att ha alla inbyggda användargränssnitt och ge tillgång till alla inbyggda API: er.

också, som en del av den gradvisa .NET enande, Xamarin.Android och Xamarin.iOS kommer så småningom att bli en del av.Net 6 som. Net för iOS och. NET för Android och kommer att uppdateras för att matcha andra. net-arbetsbelastningar. Tidslinjen för det är okänd än, så håll dig uppdaterad för framtida uppdateringar.

under tiden Xamarin.Blanketter migration bör ske i November 2021. När MAUI släpps kommer Xamarin att stödjas i ytterligare 12 månader. Så om du just nu arbetar med Xamarin eller om du planerar att bygga nya Xamarin-appar är det värt att hålla ett öga på datumen och leta efter Microsoft-guider för en smidig övergång.

kompatibilitetsproblem med tredjepartsbibliotek och verktyg

det kan finnas några problem när du integrerar tredjepartsresurser med din Xamarin-app. Medan de flesta verktyg och bibliotek erbjuder fullt stöd för inbyggd teknik, kanske Xamarin-stöd inte tillhandahålls av en leverantör. Även om Xamarin har sin egen komponentbutik finns det alltid en chans att du behöver en specifik kapacitet eller integration i din app som inte tillhandahålls av plattformen. Så, för att utnyttja andra paket från tredje part måste du använda omslag.

Xamarin Visual Studio IDE

om du har en känsla av att Xamarin är rätt för dig, kommer du att vara intresserad av att veta de viktigaste Xamarin IDEs som kan användas och hur de jämför med varandra.

Visual Studio (VS) är en Microsoft Integrated Development Environment, eller IDE, programvara som används för att bygga, felsöka och publicera applikationer på alla plattformar och enheter. Det finns tre huvudsakliga Visual Studio-versioner för Xamarin-Visual Studio Community, Visual Studio Professional och Visual Studio Enterprise. De viktigaste faktorerna för att välja en acceptabel version är upplevelsen av utvecklare (studenter eller professionella ingenjörer) och deras lagstorlek. Programmerare kan utveckla programvara för webb, mobil, server och skrivbord med alla versioner. Läs mer om Visual Studio i vår artikel om verktygen som används för.NET-utveckling.

den senaste versionen är Visual Studio 2019. I jämförelse med VS 2017 innehåller den många förbättringar som påskyndar applikationsutveckling, från samarbete i realtid med Visual Studio Live Share till det nya Visual Studio start-fönstret. Det stöder också dpi per bildskärm och förbättrade felsökningsfunktioner.

Xamarin-arbetsbelastningen reduceras nu med cirka 3 gånger från tidigare versioner, vilket betyder minskat från 23 GB till 7 GB. Det minskar drastiskt diskpåverkan och accelererar installationen. Dessutom gjorde den nya versionen betydande förbättringar för Android SDK och emulatorer hantering. Det gjorde också stora ansträngningar för att stärka användargränssnittet. Detta inkluderar Xamarin.Formulärförbättringar med IntelliCode för XAML, AXML-förbättringar för Android, uppgraderad Xamarin iOS-frakt och många andra funktioner.

Visual Studio Community är en bra passform för studenter, open source-projekt, små utvecklingsteam med upp till 5 användare. Gemenskapspaketet är också bra för lag som är nya i Visual Studio. Denna version är gratis att använda.

Visual Studio Professional är en uppsättning verktyg och tjänster som skapats för professionella utvecklare, små team och företagsanvändning. Den här versionen ger kraftfulla funktioner för att snabbt förstå din kod: visar kodreferenser, ändringar i din kod, visar vem som senast ändrade en metod eller upptäcker om tester passeras. Den professionella versionen innehåller Azure DevOps som är en samling funktioner som smidiga projektplanerings-och testverktyg, CI/CD-rörledningar, rapporteringslösningar och mer. Det årliga priset för denna version är $ 1,199.

Visual Studio Enterprise har starkare stödverktyg och tjänster. De möjliggör hantering av mer komplexa processer mellan utveckling och IT-drift; spårningskvalitet med manuella och automatiserade testverktyg; få tillgång till yrkesutbildning och hela Microsofts teknik-och testekosystem. Enterprise-versionen har också prioriterat stöd, partnererbjudanden och mycket mer. Det årliga priset för Enterprise Studio är $5,999.

för företagsanvändning rekommenderar vi också att du kontrollerar Visual Studio App Center. Det är ett verktyg som organiserar arbetsflöde för apputveckling över olika mobila tekniker inklusive Xamarin. Här kan ingenjörsteam som arbetar med flera appar samla sina verktygsuppsättningar. Det automatiserar appförpackningar via GitHub eller Bitbucket, ger integration för olika testtjänster, möjliggör distribution av e-postprogram för testning, kraschar spårning och analys.

Visual Studio Code, eller VS Code, rankad som den mest populära utvecklingsmiljön 2019 med 50,7 procent av utvecklarna som rapporterar att använda den. VS Code är en fri, lätt öppen källkod redaktör som ger alla de viktigaste verktygen som behövs för en enkel cykel av kod redigering, byggnad, och felsökning, men saknar funktionerna i fullfjädrad IDEs som gör det möjligt att hantera mer komplexa arbetsflöden. Den körs på Mac, Linux och Windows och stöder sådana grundläggande utvecklingsoperationer som uppgiftskörning, felsökning och versionskontroll. Det har också IntelliSense för AI-assisterad utveckling, arbetar med GitHub och har ett rikt ekosystem av tillägg. VS Code är snabb, enkel att använda, mycket konfigurerbar och kan vara ett bra val om du behöver något lätt, men med bra funktionalitet

Visual Studio Online, eller GitHub Cloudspaces, är en webbläsarbaserad utvecklingsmiljö som stöder VS 2019 och VS Code. Det är nu bara tillgängligt i beta och har begränsad funktionalitet

växla från Android Studio eller Xcode till Visual Studio

Om ditt utvecklingsteam överväger att övergå från Android Studio (AS) eller Xcode till Visual Studio, kommer inlärningskurvan inte att vara så brant. Funktion-till-funktion-jämförelserna visar att iDe: erna är mycket desamma när det gäller utvecklingsflöden med små nyanser för var och en av miljöerna.

från Android Studio till Visual Studio. Medan Android Studio officiellt stöd är inriktat på Java, C/C++, Kotlin och XML-språk, Stöder VS alla större programmeringsspråk inklusive AS. Detta beror på det breda spektrum av plattformar som IDE tillgodoser. VS ger mer teknisk frihet och möjliggör arbete med olika projekt från en miljö. Om du har använt Google Cloud Platform integrerad med AS för att köra virtuella maskiner eller bara hantera projekt, är Google vänlig nog att tillhandahålla sin molnplattformstillägg för VS också. I grund och botten kan du använda både Microsofts molnekosystem och Google Cloud direkt från VS. Visual Studio kan installeras på alla huvudplattformar: Windows, Android, Mac OS och Linux.

från Xcode till Visual Studio. Xcode IDE, som liknar VS, stöder källkod för alla större programmeringsspråk. Så det kommer inte att bli någon överraskning efter övergången. Återigen, om du har varit knuten till Mac OS när du använder Xcode, behövs inte Apple-maskinvara för VS. för dem som använder CloudKit för lagring på serversidan, Visual Studio och Xamarin möjliggör enkel integration av CloudKit. Den största nackdelen med att använda VS jämfört med Xcode är det pris: både Android Studio och Xcode är gratis att använda medan VS kräver en ganska hög abonnemangsavgift.

enligt utvecklarens uppskattningar har Visual Studio och Android Studio, båda, oftast samma användarvänliga nivå och supportkvalitet. Att jämföra samma index med VS och Xcode kan vi säga att VS-uppskattningar är lite bättre. Visual Studio är också mer populärt bland företag (>1000 anställda) medan cirka 50 procent av Android Studio-och Xcode-användare är småföretag (50 eller färre anställda).

Med tanke på Strategi Analytics rankas på mobila utvecklingsmiljöer, Xcode uppnått den högsta rankningen på testkapacitet som gjorde Visual Studio. Android Studio släpar efter. Totalt poäng var: Xcode-22; Visual Studio -21; och Android Studio -13.

med tanke på andra alternativ: Xamarin vs Hybrid Development vs Native iOS / Android vs andra plattformsoberoende ramar

nyligen, många utvecklare tenderar att komma överens om att Xamarin kan betraktas som ”native” utvecklingsverktyg. Det finns faktiskt en åsikt att ” allt som kan göras i en iOS-applikation med Objective-C eller Swift, och allt som kan göras i en Android-app med Java, kan göras i C# med Xamarin.”

ändå finns det många fallgropar i native vs Xamarin-debatten. Låt oss se hur Xamarin jämförs med de inbyggda utvecklingsverktygen och hybridutvecklingsplattformarna (Ionic, PhoneGap/Cordova).

Xamarin vs Native vs Hybrid utveckling

Xamarin vs hybrid vs native utveckling i ett nötskal

även om hybrida mobila utvecklingsverktyg utvecklas snabbt, saknar de fortfarande prestanda och inbyggda funktioner som Xamarin erbjuder till ungefär samma kostnad. Den kortare tiden till marknaden är dock fortfarande deras största fördel.

När det gäller att välja mellan Xamarin eller inbyggd iOS/Android måste du överväga tillgänglig tid och budget (inbyggd utveckling är vanligtvis dyrare och tar längre tid) och typen av app. Om du behöver avancerad prestanda och ett perfekt justerat användargränssnitt är det värt att gå till inbyggda appar.

När fler plattformsramar dyker upp och utvecklas blir det svårare för Xamarin att behålla sin position på marknaden. Idag har ett antal ramar redan överträffat Xamarin när det gäller popularitet och prestanda. React Native röstades till toppvalet 2020, tätt följt av Flutter.

plattformsoberoende mobila ramar användning dynamik. Källa: Statista

varje plattformsappramverk har olika funktioner och struktur. För att få en bättre bild, kolla våra jämförelseartiklar: Xamarin vs Flutter och Xamarin vs React Native vs Ionic vs NativeScript. Den senare, till exempel, trots att den är mindre populär, skulle vara särskilt värdefull för de utvecklare som använder Angular framework eftersom de är nära sammankopplade.

råd

När man jämför för-och nackdelar anses de listade nackdelarna vanligtvis vara en säkerhetsskada. De flesta företagare väljer Xamarin mobile App development platform eftersom det minskar tiden till marknaden och tekniska kostnader, genom att dela koden och använda en enda teknik stack. Ändå kan syftet med appen och dess målgrupp vara en ännu viktigare faktor att tänka på.

baserat på vårt teams erfarenhet är det bästa användningsfallet för Xamarin företagets mobila lösningar. Med standard UI som täcker 90 procent av projekten kan All kärnproduktlogik enkelt delas över plattformarna. Därför tar plattformsanpassning bara 5-10 procent av ingenjörsinsatsen.

vid konsumentvända appar med tungt användargränssnitt minskar mängden delad kod drastiskt. Således förlorar Xamarin plattformsoberoende utveckling sin stora fördel och kan vara lika i tid och kostnad för inhemska lösningar.

den här artikeln är en del av vår serie” The Good and the Bad”. Om du är intresserad av webbutveckling, ta en titt på vårt blogginlägg på

det goda och det dåliga med Vinkelutveckling

det goda och det dåliga med JavaScript Full Stack Development

det goda och det dåliga med Node.js Web App Development

det goda och det dåliga av ReactJS och React Native

det goda och det dåliga av Swift programmeringsspråk

det goda och det dåliga av Selenium Test Automation Tool

det goda och det dåliga av Android App Development

det goda och det dåliga av .NET Development

det goda och det dåliga med Ranorex GUI Testautomatiseringsverktyg

det goda och det dåliga med Flutter App Development

Lämna ett svar

Din e-postadress kommer inte publiceras.