Xamarin Software
Det förmodligen bästa ramverket för flera plattformar
För att säga det på förhand: Jag har erfarenhet av både Xamarin- och .Forms-varianter, med Visual Studio som IDE. Utvecklingen är okomplicerad och det finns gott om inlärningsmaterial som gör att även .Net-utvecklare på mellannivå kan bli produktiva på några dagar. Ur en produktägares perspektiv är detta det bästa verktyget när man måste inrikta sig på flera plattformar. Du får fördelen av att kunna rikta in dig på enhet & plattformsspecifika funktioner utan att behöva använda webbcontainrar som Cordova eller Ionic-ramar) För standardutvecklaren är den största smärtan felsökningen. Den är vanligtvis långsam (den saknar till exempel den ursprungliga Androids funktion ”Fast deployment”) och på grund av kompileroptimeringar kommer Intelisense knappt att fungera (du får inga listor över tillgängliga egenskaper & metoder, medan vissa egenskapsvärden inte kommer att vara tillgängliga överhuvudtaget) – även om detta kan mildras genom att använda ett bra loggningsverktyg. Dessutom kommer det (relativt) nya Xamarin Forms att ytterligare tvinga utvecklaren att använda en enhetlig implementering, vilket gör den övergripande produkten ännu mer underhållbar (även om detta kan ha begränsningar vid konvertering av befintliga native-appar). På det hela taget är detta en mognadsprodukt som alltid bör övervägas när man siktar på programvara för flera plattformar.
Pros
– Först och främst är det portabilitet som driver marknaden. Att kunna skriva en enda implementering som riktar sig till flera plattformar är extremt kostnadseffektivt – Eftersom det stöds av .Net (extremt vanligt bland mjukvaruutvecklare) är det mycket lättare att underhålla en Xamarin-lösning (i motsats till att behöva hitta utvecklare för den inhemska plattformen) – Hårdvarustödet är verkligen på topp – till och med hårdvaruproducenter (t.ex. Motorola) ger ut SDK:er för Xamarin.
Konsekvenser
– Den kanske enda verkliga nackdelen är att det alltid finns en fördröjning innan den uppdateras för att stödja den senaste plattformsuppdateringen – Felsökning kan bli tråkig och jag har sett detta särskilt på de infödda implementeringarna på grund av Xamarins mindre än optimala sätt att rapportera ett problem (dvs. du kan hamna i situationer där ett felmeddelande relaterat till en Android-körning i själva verket orsakades av ett litet layoutproblem där ett behövligt element inte finns med)
.