Bruges Xamarin stadig?
Xamarin er en populær ramme til udvikling af apps på tværs af platforme, der bruger C#. Microsoft købte det, hvilket gjorde det til et open source-produkt og øgede dets popularitet. Det bruges til at oprette mobilapplikationer med C# og .NET-rammen til Android, iOS og Windows. Desuden giver det programmører mulighed for at dele deres kode på tværs af alle platforme.
Selv om den har mange fordele, er rammen muligvis ved at dø ud. Men da det er ved at blive omdannet til .NET MAUI, kan det ikke siges at være dødt. Som det blev annonceret i maj 2020, afvikler Microsoft Xamarin.Forms i november 2021 til fordel for Multiform App User Interface, som vil erstatte rammen. I denne artikel diskuteres rammen, dens popularitet og dens fremtid i udviklingsbranchen.
Baggrund for rammen
Udviklingen af rammen var uundgåelig, da den har haft en urolig og forvirret udviklingshistorie. Selv om det var en god teoretisk ramme, var den dårligt implementeret, fejlbehæftet og for omfattende. Derfor erstattede Microsoft det med MAUI for at konkurrere med nyere, mere brugervenlige og praktiske moderne udviklingsrammer. Udviklerne havde af mange årsager svært ved at arbejde med rammen. De største ulemper er bl.a. følgende.
- Open Source-biblioteker med begrænset adgang
- Inkompatible biblioteker og værktøjer fra tredjepart
- Ikke anbefalet til komplekse apps
- Større app-størrelse
- Forsinket understøttelse af de seneste platformopdateringer
- Omkostelig løsning for erhvervsbrugere
- Begrænset talentmasse og fællesskab
1. Open Source-biblioteker med begrænset adgang
Du skal bruge platformens begrænsede elementer og .NET-bibliotekerne med åben kildekode. Så du skal lave en masse native kodning uafhængigt, da mulighederne ikke er lige så forskellige som for native udvikling til iOS og Android. Det er desuden beklageligt, at platformen ikke understøtter alle tredjepartsbiblioteker til Android og iOS nativt, hvilket tvinger udviklere til at bruge ekstra tid på at skabe de nødvendige komponenter.
2. Inkompatible biblioteker og værktøjer fra tredjeparter
Som nævnt ovenfor understøtter rammen ikke biblioteker og værktøjer fra tredjeparter, medmindre du bruger specifikke plugins eller integrationer uden for platformen. På denne platform kan du bruge wrappere eller oprette bindinger, før du går videre til næste fase af appudviklingen, hvis det er nødvendigt at bruge integrationer fra tredjepart.
3. Ikke anbefalet til komplekse apps
Komplekse apps, der kræver en omfattende brugergrænseflade, er meget afhængige af udseende eller bruger brugerinteraktioner i stor udstrækning, er ikke kompatible med Xamarin. Det skyldes, at det vil tage længere tid at udvikle ved hjælp af rammen, og at udviklerne skal have omfattende viden om iOS- og Android-teknologier. Den er derfor kun velegnet til mindre og mindre komplekse apps, der er nemme at udvikle og arbejde med.
4. Større app-størrelse
Det næste problem er størrelsen af de apps, der oprettes med rammen. Sammenlignet med de oprindeligt byggede kan deres størrelse variere og blive større. Deres basisklassebiblioteker bestemmer størrelsen af Xamarin-apps, Mono runtime og deres databiblioteker.
Det er muligt at reducere store app-størrelser på et par forskellige måder. Den bedste måde at fjerne kode på og holde filstørrelsen under kontrol er at bruge yderligere optimeringer som f.eks. linking, hvilket mange udviklere gør. Fjernelse af unødvendig kode er en anden metode til at reducere filstørrelsen.
5. Forsinket understøttelse af de seneste platformopdateringer
Da ændringer tager tid, kan tredjepartsværktøjer ikke tilbyde øjeblikkelig understøttelse af de nyeste iOS- og Android-udgaver. Det tager tid for supportteamet at følge med i nye udgivelser, når man bruger platformen. Så hvis du bruger platformen til app-udvikling, betyder det forsinket understøttelse af de seneste platformsopdateringer.
6. En dyr løsning for erhvervsbrugere
Selvfølgelig er rammen en gratis platform med åben kildekode for individuelle udviklere. Men det er en dyr løsning for erhvervsbrugere. Du bliver nødt til at skifte til et mere avanceret sæt værktøjer til virksomheder med mange udviklere. Det første år, hvor du kommer ind i den avancerede version, vil koste dig mere end senere, fordi du får rabatter. Så mange udviklere undlader at bruge Xamarin, da rammen ikke er værd at investere i på grund af mange andre ulemper.
7. Begrænset talentmasse og fællesskab
Xamarin-udviklere er svære at finde på grund af det relativt lille udviklerfællesskab. Ifølge en undersøgelse, der blev foretaget i 2020, brugte kun 5,8 % af udviklerne platformen. Microsoft begyndte at yde omfattende support gennem gratis kurser for at tilskynde udviklere til at bruge rammen.
Rammernes fremtid
Alle rammer eller programmer ændrer sig med tiden. Det samme gælder for Xamarin. Nu er rammen ved at blive udskiftet for at udvikle sig til en bedre version. Microsoft har officielt annonceret, at det vil blive slået sammen med .NET og blive til .NET Multi-platform App UI, eller MAUI.
Microsoft vil fortsætte med at støtte Xamarin i yderligere et år for at sikre en gnidningsløs overgang, når MAUI frigives, selv om det præcise tidspunkt endnu er ukendt. Flere udviklere, der arbejder med C#- og .NET core-funktioner, vil blive tiltrukket af Xamarin-platformen som følge af sammenlægningen.
Så svaret på spørgsmålet “Bliver Xamarin stadig brugt?” er her. Ja, det bruges stadig, og Microsoft vil fortsætte med at understøtte det indtil den 1. maj 2024. Der vil ikke være nye opdateringer til platformen eller officiel support fra Microsoft efter dette tidspunkt, men apps, der er oprettet med platformen, vil stadig fungere og kunne vedligeholdes.
Grunden til, at den ikke kan betegnes som død, er det antal apps, der i øjeblikket bruger den. Der er mange virksomheder, der bruger apps, der er lavet med rammen, og som har investeret penge i dem. Efterhånden vil der kun være få udviklere på markedet til at understøtte eller vedligeholde det. Nye og mere effektive løsninger udvikles uundgåeligt i takt med den teknologiske udvikling, især.
Interessante links:
Det gode og det dårlige ved Xamarin Mobile Development
Hi, my name is Rahil. I work at YUHIRO Global and I help web agencies and software companies from Europe to build developer teams in India.