olvasási idő: 16 perc
ha figyelembe vesszük iOS vagy Android app development, a legtöbben gondolni Objective-C vs Swift, és a Java először. Mivel natív tech stacknek tekintik őket, természetesen a leggyakrabban használt mobil fejlesztési eszközök, amikor az iOS és az Android alkalmazásfejlesztésről van szó. Azonban több módja van a hatékony és felhasználóbarát mobilalkalmazások felépítésének. Xamarin pedig az egyik. Ebben a cikkben mélyreható Xamarin felülvizsgálatot végzünk, és összehasonlítjuk a piacon lévő natív és cross-platform mobil fejlesztési megoldásokkal. Ha ismeri az alapokat, fontolja meg, hogy ugorjon az érdeklődő szakaszokra.
- mi az a Xamarin?
- A Xamarin fejlesztésének előnyei
- egy technológiai verem az összes platform kódolásához
- a natív teljesítményhez közeli teljesítmény
- ca natív felhasználói élmények
- teljes hardver támogatás
- nyílt forráskódú technológia erős vállalati Támogatással
- egyszerű karbantartás
- teljes fejlesztési ökoszisztéma
- Xamarin.Forms: a keret létrehozása natív UI elrendezések
- Xamarin.Forms XAML Hot Reload
- a xamarinnal rendelkező Mac alkalmazások építése.Mac eszköz
- Xamarin Learning Resources
- Xamarin TV-k, hordható eszközök és IoT támogatása
- Xamarin hátránya, hogy fontolja meg
- ++ kissé késleltetett támogatás a legújabb Platformfrissítésekhez
- A nyílt forráskódú könyvtárakhoz való korlátozott hozzáférés
- magas költségek a professzionális és vállalati használatra
- Xamarin Talent Pool és közösségi korlátok
- az anyanyelv alapvető ismerete
- Xiaxamarin.Az űrlapok hamarosan megszűnnek
- kompatibilitási problémák harmadik féltől származó könyvtárakkal és eszközökkel
- Xamarin Visual Studio IDE
- váltás Android Studio-ról vagy Xcode-ról Visual Studio-ra
- figyelembe véve más lehetőségeket: Xamarin vs hibrid fejlesztés vs natív iOS / Android vs más cross-Platform keretek
- Tanács
mi az a Xamarin?
lehetetlen figyelmen kívül hagyni a xamarint, amikor a mobilalkalmazások fejlesztésének kulcsfontosságú megközelítéseiről beszélünk. A Xamarin egy platformközi mobilalkalmazás-fejlesztéshez használt eszköz, amely lehetővé teszi a mérnökök számára, hogy a kód akár 90% – át megosszák a főbb platformokon. Mivel viszonylag új eszköz, a Microsoft technology stack-en alapul, és már több mint 1,4 millió fejlesztővel rendelkezik.
a platformot a mono mögött álló fejlesztők építették, egy nyílt forráskódú fejlesztői platform, amely a.net keretrendszeren alapul, Miguel de Icaza vezetésével, és először 2001-ben vezették be. A Xamarin cég-ben alakult május 16, 2011.
elődjével ellentétben azonban a Xamarint kereskedelmi projektként hozták létre, amíg a céget 2016-ban a Microsoft meg nem vásárolta. A Xamarin népszerű platformközi termék lett a mobilalkalmazások fejlesztésére a Microsoft ökoszisztémájában. Ez az akvizíció megtörte a Xamarin használatának pénzügyi akadályát. Mivel a Microsoft nyílt forráskódúvá tette a Xamarin SDK-t, a Xamarin Visual Studio integrált fejlesztői környezetének részévé vált (az alábbiakban a Xamarin fejlesztéséhez használható legjobb ide-ket tárgyaljuk). Melyek a Xamarin főbb jellemzői?
c# nyelv. A Xamarin egyetlen nyelvet használ, a C# – ot, hogy alkalmazásokat hozzon létre az összes mobil platformra. Ellentétben az értelmezett megoldásokkal, mint például az Appcelerator Titanium, a Xamarin natív módon van összeállítva, ami lehetővé teszi a nagy teljesítményű alkalmazások natív megjelenéssel történő felépítését.
A.NET-keretrendszer alapján. A C# egy érett nyelv, erős biztonsági gépeléssel, amely megakadályozza a kód váratlan viselkedését. Mivel a C# A. NET framework nyelvek egyike, számos hasznos. Net funkcióval használható, mint például a Lambdas, a LINQ és az aszinkron programozás (async/wait).
technikailag szólva, Xamarin használ C# és natív könyvtárak csomagolva a .Nettó réteg a platformok közötti alkalmazásfejlesztéshez. Az ilyen alkalmazásokat gyakran összehasonlítják a natív iOS és Android mobil fejlesztési platformokkal a teljesítmény és a felhasználói élmény szempontjából. Ezenkívül a Xamarin kihasználhatja az összes natív és a legújabb API-hozzáférést, hogy kihasználja a mögöttes platform képességeket a Xamarin alkalmazásokban, mint például az ARKit iOS vagy Android Multi-Window rendszeren.
míg az üzleti logikával, az adatbázis-hozzáféréssel és a hálózati kommunikációval kapcsolatos kód minden platformon megosztható, a Xamarin lehetővé teszi egy platformspecifikus felhasználói felület kódréteg létrehozását. Így a Xamarin cross-platform Alkalmazások 100% – ban natív módon néznek ki bármely eszközön, jobb felhasználói élményt nyújtva az Általános hibrid alkalmazásokhoz képest.
Összeállítás. A platformnak két fő terméke van: Xamarin.iOS és Xamarin.Android. Az iOS esetében a forráskódot közvetlenül a natív ARM assembly kódba fordítják (idő előtti összeállítás), míg az Android Xamarin alkalmazásokat először köztes nyelvre, majd futásidőben natív assembly kódra fordítják (Just – In-Time összeállítás). A folyamat azonban mindkét esetben automatizált, és olyan problémák kezelésére van szabva, mint a memóriaelosztás, a szemétgyűjtés és a platform interoperabilitása alapértelmezés szerint.
Xamarin.Formák. Xamarin.A Forms egy különálló termék, amelyet prototípusok vagy mobilalkalmazások létrehozására terveztek, amelyek a kód akár 100% – át megosztják az iOS és az Android rendszeren.
Xamarin.Mac. Ezenkívül a mérnökök használhatják a Xamarint.Mac építeni alkalmazások Mac OS. Ezeket és néhány más terméket a Xamarin veremből egy kicsit megvitatunk.
Platform SDK-k. Xamarin hozzáférést biztosít a platform-specifikus SDK (Cocoa Touch iOS és Android SDK) keresztül egyszerű C # szintaxis.
Platform – specifikus kódkötések. A legtöbb esetben a mérnökök képesek lesznek kezelni a fejlesztést, megtartva az adott platformok natív megjelenését a Xamarin környezetben. A Xamarin azonban lehetővé teszi a meglévő platformkód hívását (pl. Swift iOS esetén), ha újra kell használnia néhány modult, vagy olyan platformspecifikus funkciókat kell megvalósítania, mint a vonalkód-szkennelés, a PayPal vagy a Google Analytics integráció.
Hordható anyagok támogatása. A Xamarin támogatja az alkalmazások építését az Apple és az Android Watch eszközök számára. A mérnökök mind a Mac, mind a Windows Visual Studio segítségével iOS Apple Watch alkalmazásokat készíthetnek. A Xamarin teljes mértékben támogatja az Android Wear alkalmazást is.
Xamarin projekt felépítése. A Xamarinnal kapcsolatos munkák nagy része várhatóan egy Windows Fejlesztő számítógépen fut, amelyen a Visual Studio és a Xamarin telepítve van. Az alkalmazások hibakereshetők közvetlenül az asztalról vagy eszközökön és emulátorokon. Ha azt tervezi, hogy iOS alkalmazásokat fejleszt a Windows rendszeren, akkor az is lehetséges, hogy a Visual Studio csatlakozik az iOS storyboard designerhez és az iOS szimulátorhoz. Van még Visual Studio for Mac, amely lehetővé teszi a futó szimulátor a Mac vagy közvetlenül egy lekötött iPhone. A hibakeresés a Visual Studio segítségével történik.
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 for Xamarin
Xamarin Studio App Center
Xamarin Közösségi Fórum
mint minden más technológia, a Xamarinnak is megvannak a maga előnyei és hátrányai, amelyek a közelmúltban heves vita tárgyát képezték. Ahhoz, hogy tájékozott döntést hozzunk a Xamarin vs natív fejlesztésről, mérlegeljük az alkalmazásfejlesztés összes előnyét és hátrányát a Xamarin segítségével. Ha nagyon szorít az idő, javasoljuk, hogy nézze meg ezt a videót, amely magas szintű áttekintést nyújt a Xamarin platform erősségeiről és gyengeségeiről 6 perc alatt.
Ha a részletekre szeretne térni, olvassa tovább.
A Xamarin fejlesztésének előnyei
jó oka van annak, hogy a Xamarint számos vállalat használja, beleértve a Trello, a Slack és a GitHub.
egy technológiai verem az összes platform kódolásához
a Xamarin C # – ot használ, kiegészítve a. Net-keretrendszerrel, hogy alkalmazásokat hozzon létre bármely mobil platformhoz. Így a kód átlagosan 80-90% – át megoszthatja a platformok között, felgyorsítva a mérnöki ciklust. A Xamarin nem igényel váltást a fejlesztői környezetek között: az összes Xamarin alkalmazást Visual Studio vagy Visual Studio kódba építheti. A platformok közötti fejlesztőeszközöket az IDE beépített részeként biztosítják, további költségek nélkül.
a natív teljesítményhez közeli teljesítmény
a webes technológiákon alapuló hagyományos hibrid megoldásokkal ellentétben a Xamarinnal épített platformközi alkalmazás továbbra is natív kategóriába sorolható. A platform fejlődésével a Xamarin teljesítményét folyamatosan fejlesztik, hogy teljes mértékben megfeleljenek a natív fejlesztés szabványainak, a Microsoft pedig tanácsot ad az optimalizálási technikákról. A Visual Studio teljes körű megoldást kínál az alkalmazás teljesítményének felépítésére, tesztelésére és nyomon követésére: a Visual Studio App Center lehetővé teszi automatizált felhasználói felület-tesztek futtatását és a problémák azonosítását a kiadás előtt. Ezt a szolgáltatást azonban felár ellenében nyújtják.
korábban teszteltük és összehasonlítottuk a Xamarin és a natív alkalmazások teljesítményét. Az eredmények kissé elavultak lehetnek; ezek azonban egyértelműen bizonyítják a Xamarin alkalmazások teljesítményének megfelelő szintjét.
ca natív felhasználói élmények
a Xamarin lehetővé teszi, hogy hibátlan élményeket hozzon létre platformspecifikus felhasználói felület elemek használatával. Az is lehetséges, hogy építsenek cross-platform Alkalmazások iOS, Android, vagy a Windows segítségével Xamarin.Forms eszköz, amely átalakítja az alkalmazás felhasználói felületének összetevőit a platform-specifikus interfész elemekké futás közben. Mivel a használata Xamarin.Az űrlapok jelentősen növelik az alkalmazásfejlesztés sebességét, ez egy nagyszerű lehetőség üzleti orientált projektek számára. Ennek ellenére az extra absztrakciós réteg miatt a teljesítmény kissé csökkenhet. Az egyéni alkalmazás felhasználói felületéhez és a nagyobb teljesítményhez továbbra is használhatja a Xamarint.iOS és Xamarin.Android külön-külön a kiváló eredmények biztosítása érdekében.
hagyományosan úgy gondolják, hogy a Xamarin nem a legjobb megoldás a nehéz grafikával rendelkező alkalmazások számára. Ennek ellenére számos olyan könyvtár létezik, mint az OpenGL ES és a skiasharp és az Urho, amelyek gazdag egyedi felhasználói felülettel, összetett animációkkal vagy játékokkal rendelkező alkalmazások fejlesztését teszik lehetővé még a Xamarin-ban is.
teljes hardver támogatás
a Xamarin segítségével a megoldás natív szintű alkalmazásfunkciókat kap. Kiküszöböli az összes hardverkompatibilitási problémát, beépülő modulok és speciális API-k használatával, hogy a platformok közös eszközfunkcióival működjön. A platformspecifikus API-khoz való hozzáférés mellett a Xamarin támogatja a natív könyvtárakkal való összekapcsolást. Ez lehetővé teszi a jobb testreszabást és a natív szintű funkcionalitást, kevés költséggel.
nyílt forráskódú technológia erős vállalati Támogatással
miután a céget a Microsoft 2016 februárjában megvásárolta, a Xamarin licencelési politikája radikális változásokon ment keresztül. A Xamarin SDK, beleértve a futásidőt, a könyvtárakat és a parancssori eszközöket, nyílt forráskódúvá vált, és mindenki számára elérhető az MIT licenc alatt a Visual Studio részeként. A fő akadály, a licenc költségeinek kiküszöbölésével a Microsoft előkészítette az utat a platform további növekedéséhez. Plusz, élén a Microsoft, és támogatja a Unity, JetBrains, és a Red Hat, a .A NET Foundation általában és a Xamarin kifejezetten megbízható és hatékony technológiai stack lett.
egyszerű karbantartás
platformokon átívelő alkalmazásának köszönhetően a Xamarin megkönnyíti a karbantartást és a frissítéseket. Egyszerűen telepítheti a módosításokat vagy frissítéseket a forrásfájlba, és azokat mind az iOS, mind az Android alkalmazásokra alkalmazzák. Így időt és pénzt takaríthat meg, miközben naprakészen tartja alkalmazásait.
teljes fejlesztési ökoszisztéma
a Xamarin egy csomagban érkezik egy teljes fejlesztési eszközkészlettel, beleértve a saját IDE-jét is. 2018 áprilisában sok korábban különálló funkcióként ismert Xamarin fejlesztőeszköz a Visual Studio App Center részévé vált. Tartalmazza magát a platformot (Xamarin SDKs), a tesztelést (korábban Xamarin Test Cloud), a disztribúciót és az elemzést (korábban Xamarin.Insights) platformok, és még sok más. Mivel az eszközkészlet továbbra is ingyenes, nincs szükség további eszközökbe történő befektetésre vagy harmadik féltől származó alkalmazások integrálására a Xamarin-alkalmazások létrehozásához, teszteléséhez és telepítéséhez.
Xamarin.Forms: a keret létrehozása natív UI elrendezések
Xamarin javasolja a fejlesztők építeni mobilalkalmazások két módon. Az első a Xamarin használata.iOS és Xamarin.Android, amely korábban megjelent, és eredetileg alkalmasabbnak tartották. Xamarin Használata.A formák a második megközelítés. Ez egy fejlettebb verzió, amely lehetővé teszi a gyors prototípuskészítést vagy a kevésbé platformspecifikus funkciókkal rendelkező alkalmazások előállítását. Ezért Xamarin.Az űrlapok a legjobban megfelelnek azoknak az alkalmazásoknak, ahol a kódmegosztás fontosabb, mint az egyéni felhasználói felület. Ez lehetővé tenné a kód akár 99% – ának újrafelhasználását, ami azt jelenti, hogy egyetlen felületet hozhat létre, és megoszthatja azt a platformok között anélkül, hogy minden platformra külön-külön tervezne. Olyan alkalmazásokat is építhet, ahol a felhasználói felületek egyes részei a Xamarinnal készülnek.Az űrlapokat és a többieket a natív felhasználói felület eszközkészletével tervezték.
mint Xamarin.A formák az évek során fejlődtek, univerzális eszközzé váltak, és élénk közösséget szereztek, amely figyelmet fordít rá. Például egyes technológiai szolgáltatók hozzájárulnak könyvtáraikhoz, mint például a Telerik UI, amelyek gazdagítják a mérnöki képességeket, előre konfigurált felhasználói felület-összetevőket biztosítva.
Xamarin.Forms XAML Hot Reload
mint Xamarin.A Forms célja a gyors és súrlódásmentes fejlesztés, a Microsoft javasolja egy XAML Hot Reload eszköz használatát. Felgyorsítja a fejlesztést azáltal, hogy a hibakeresés során megváltoztathatja az XAML-t, és azonnal láthatja ezeket a változásokat a futó alkalmazásban, anélkül, hogy le kellene állítania és újra kellene építenie. Ezenkívül a navigációs állapot és az adatok megmaradnak, így gyorsan megismételheti az UI-t. Így az XAML Hot Reload lehetővé teszi az alkalmazások gyorsabb újjáépítését és telepítését a felhasználói felület módosításainak érvényesítéséhez.
a xamarinnal rendelkező Mac alkalmazások építése.Mac eszköz
Xamarin.A Mac lehetővé teszi a teljesen natív Mac alkalmazások fejlesztését a C# és a .NET használatával. integrálódik ugyanazokkal a könyvtárakkal, amelyeket az Objective-C Xcode-ban fejlesztenek. Xamarin használatával.Mac kombinálva Xamarinnal.iOS és Xamarin.Android, a fejlesztők a natív kód akár 90% – át is megoszthatják Android, iOS és Mac OS rendszeren. Továbbá Xamarin.A Mac integrálódik az Xcode-szal, így a fejlesztő az Xcode Interface Builder segítségével létrehozhatja az alkalmazás felhasználói felületeit.
Xamarin Learning Resources
a Microsoft Learn egy online oktatási portál, amely segíti az embereket a Microsoft termékeivel kapcsolatos technikai készségek fejlesztésében, beleértve a Xamarint is. A platform tanfolyamokat kínál mind a kezdők, mind a tapasztalt mérnökök számára, lehetővé téve a tanulók számára, hogy felkészüljenek a Microsoft tanúsítványaira. Az oktatási források közé tartozik az ingyenes önálló tanulás, élő online osztályok, irodai előadások és vendégelőadások.
Xamarin TV-k, hordható eszközök és IoT támogatása
a Xamarin keretrendszer, köszönhetően a Xamarin-nak.Űrlapok, lehetővé teszi az épület hordozható változat sok platformon. Az iOS, az Android, A Windows telefonok és a Mac mellett alkalmazásokat fejleszthet a Tizen – hez – néhány Samsung eszközön használt operációs rendszerhez-Hordható eszközökhöz, tévékhez és IoT-hez. Ezen kívül Xamarin.az iOS lehetővé teszi a tvOS Alkalmazások építését az Apple és a watchOS számára.
Xamarin hátránya, hogy fontolja meg
azonban még mindig vannak hátrányai, amelyek árnyékot vethetnek a platformra. Tehát miért nem használja a Xamarint?
++ kissé késleltetett támogatás a legújabb Platformfrissítésekhez
Ez teljes mértékben a Xamarin fejlesztői csapatától függ. Lehetetlen, hogy harmadik féltől származó eszközök azonnali támogatást nyújtsanak a legújabb iOS és Android kiadásokhoz, mivel időbe telik a változások végrehajtása és/vagy új bővítmények bevezetése stb
A nyílt forráskódú könyvtárakhoz való korlátozott hozzáférés
a natív fejlesztés széles körben használja a nyílt forráskódú technológiákat. A Xamarin használatával a platform által biztosított elemeket és néhány. Net nyílt forráskódú erőforrást kell használni, mind a fejlesztők, mind a fogyasztók számára. Bár a választás nem annyira gazdag, mint az Android és az iOS mobilalkalmazások fejlesztésénél, használhatja a NuGet csomagokat, amelyek most mindent tartalmaznak, ami a nyugdíjas Xamarin komponensekben volt.
magas költségek a professzionális és vállalati használatra
bár a Xamarin egy ingyenes nyílt forráskódú platform az egyes fejlesztők számára, a keretrendszer elég fillérbe kerülhet a vállalati igényekhez. Sokat fog költeni a Visual Studio licencének megvásárlására. Például a Visual Studio Professional a Fejlesztőeszközök alapvető készletével az első évben 1199 dollárba, a megújításért pedig 799 dollárba kerül. Ugyanakkor a Visual Studio vállalkozás, amely lehetővé teszi a további eszközök kísérletezését, az első évben 5999 dollárba, a megújítás pedig 2569 dollárba kerül. A funkciók mind az alábbiakban ismertetjük.
Xamarin Talent Pool és közösségi korlátok
nyilvánvaló, hogy a Xamarin közösség lényegesen kisebb, mint a natív iOS vagy Android. Kisebb, mint a React és az ionos közösségek. Így egy tapasztalt Xamarin Fejlesztő megtalálása kihívást jelenthet.
a 2020-as verem túlcsordulási felmérés szerint csak 5.8 százalék használta a Xamarin keretrendszert 2020-tól, szemben a React Native 11,5 százalékával és a Flutter 7,2 százalékával.
a Xamarin használata más keretrendszerekhez képest. Képforrás: Stack Overflow
annak ellenére, hogy a Xamarin mérnökeinek száma nem hasonlítható össze az iOS vagy az Android natív közösségeivel, a platform széles körű támogatást nyújt fejlesztőinek. Mint már említettük, a Microsoft Learn erőforrásokat és gyakorlati képzést kínál azok számára, akik újak ebben a technológiában. Ezzel a támogatással a tapasztalt C#/. Net mérnök tanulási görbéje minimális.
egy másik probléma, amelyet egyes fejlesztők tapasztalnak, a tanulási és fejlesztési erőforrások, köztük a dokumentumok széttagoltsága és a szabványok hiánya. Ez befolyásolja a támogatás minőségét, amelyet kapni fog.
az anyanyelv alapvető ismerete
a Xamarin használatakor.iOS és Xamarin.Android a valóban natív megjelenésű mobilalkalmazások létrehozásához továbbra is meg kell írnia egy platformspecifikus kódréteget az egyes platformok natív API-jainak felhasználásával. Tehát annak ellenére, hogy ez nem kötelező, mint régen, hasznos lenne, ha legalább alapvető ismeretekkel rendelkeznénk a natív technológiákról (Java/Kotlin Androidra és Objective-C/Swift iOS-re) ahhoz, hogy megértsük és a lehető legtöbbet hozzuk ki a platform-specifikus dokumentációból. Továbbá, Xamarin.Az Essentials library több platformközi API-t biztosít, és a natív funkciók eléréséhez használható. Ez azonban nem vonatkozik a Xamarinra.Formák.
nagyobb alkalmazásméret
típusuktól és összetettségüktől függően a Xamarin alkalmazások általában nagyobbak, mint a natív alkalmazások (ez utóbbi fele lehet egy Xamarin alkalmazás méretének). Egy egyszerű “hello, world” alkalmazás Androidra akár 16 MB-ot is igénybe vehet, amelynek nagy részét a kapcsolódó könyvtárak, tartalom, Mono futásidejű és Base Class Library (BCL) szerelvények használják.
Xamarin alkalmazás mérete. Kép forrása: Fejlesztő.xamarin.com
tehát a Xamarin alkalmazásoknak általában további optimalizálásra van szükségük, például összekapcsolásra, hogy eltávolítsák a fel nem használt kódot a mellékelt könyvtárakból, és ésszerűek maradjanak az alkalmazás fájlmérete.
Xiaxamarin.Az űrlapok hamarosan megszűnnek
2020 májusában megtartották az éves Microsoft Build konferenciát. Egyéb hírek között bejelentették, hogy Xamarin.Forms fog egyesülni a. net és fejlődni egy új cross-platform keret úgynevezett. Net Multi-platform App UI, vagy Maui. MAUI lesz minden natív UI és hozzáférést biztosít az összes natív API.
szintén a fokozatos részeként .Nettó egyesítés, Xamarin.Android és Xamarin.az iOS végül a. net 6 részévé válik. net for iOS és. net for Android néven, és frissítésre kerül, hogy megfeleljen a többi.Net munkaterhelésnek. Ennek ütemterve még nem ismert, ezért figyeljen a jövőbeli frissítésekre.
közben a Xamarin.Űrlapok a migrációnak 2021 novemberében kell megtörténnie. A MAUI kiadása után a Xamarin további 12 hónapig támogatott lesz. Tehát, ha jelenleg a Xamarinnal dolgozik, vagy ha új Xamarin alkalmazásokat tervez építeni, érdemes szemmel tartani a dátumokat, és keresni a Microsoft útmutatóit a zökkenőmentes átmenet érdekében.
kompatibilitási problémák harmadik féltől származó könyvtárakkal és eszközökkel
előfordulhat, hogy bizonyos problémák merülnek fel, amikor harmadik féltől származó erőforrásokat integrál a Xamarin alkalmazásba. Míg a legtöbb eszköz és könyvtár teljes mértékben támogatja a natív technológiákat, előfordulhat, hogy a Xamarin támogatást nem egy gyártó nyújtja. Bár a Xamarinnak saját alkatrészboltja van, mindig van esély arra, hogy az alkalmazáson belül olyan speciális képességre vagy integrációra van szüksége, amelyet a platform nem biztosít. Tehát más harmadik féltől származó csomagok kihasználásához csomagolókat kell használnia.
Xamarin Visual Studio IDE
Ha úgy érzi, hogy a Xamarin az Ön számára megfelelő, akkor érdekelni fogja, hogy milyen főbb Xamarin ID-k használhatók, és hogyan hasonlíthatók össze egymással.
a Visual Studio (VS) egy Microsoft integrált fejlesztői környezet vagy IDE szoftver, amelyet alkalmazások építésére, hibakeresésére és közzétételére használnak minden platformon és eszközön. Három fő Visual Studio verzió létezik a Xamarin számára: Visual Studio Community, Visual Studio Professional és Visual Studio Enterprise. Az elfogadható verzió kiválasztásának kulcsfontosságú tényezői a fejlesztők (hallgatók vagy hivatásos mérnökök) tapasztalata és csapatmérete. A programozók szoftvereket fejleszthetnek webre, mobilra, szerverre és asztali számítógépre az összes verzióval. Tudjon meg többet a Visual Studio-ról a.net fejlesztéséhez használt eszközökről szóló cikkünkben.
a legújabb verzió a Visual Studio 2019. A VS 2017-hez képest számos fejlesztést tartalmaz, amelyek felgyorsítják az alkalmazásfejlesztést, a valós idejű együttműködéstől a Visual Studio Live Share használatával az új Visual Studio start ablakig. Ezenkívül támogatja a monitoronkénti DPI-t és a továbbfejlesztett hibakeresési képességeket.
a Xamarin munkaterhelése most körülbelül 3-szor csökkent a korábbi verziókhoz képest, ami azt jelenti, hogy 23 GB-ról 7 GB-ra csökkent. Drasztikusan csökkenti a lemez hatását és felgyorsítja a telepítést. Ezenkívül az új kiadás jelentős fejlesztéseket hajtott végre az Android SDK és az emulátorok kezelésében. Jelentős erőfeszítéseket tett az UI szerzői jogának megerősítése érdekében is. Ez magában foglalja a Xamarint is.Forms fejlesztések IntelliCode XAML, AXML-fejlesztések Android, továbbfejlesztett Xamarin iOS szállítás, és sok más funkciók.
a Visual Studio Community jól illeszkedik a diákok, a nyílt forráskódú projektek, a kis fejlesztő csapatok számára, legfeljebb 5 felhasználóval. A közösségi csomag olyan csapatok számára is jó, amelyek újak a Visual Studio-ban. Ez a verzió ingyenesen használható.
a Visual Studio Professional olyan eszközök és szolgáltatások összessége, amelyeket professzionális fejlesztők, kis csapatok és vállalati használatra hoztak létre. Ez a verzió hatékony funkciókat kínál a kód gyors megértéséhez: kódhivatkozások megjelenítése, a kód módosítása, a módszer utolsó módosításának megjelenítése, vagy annak felfedezése, hogy a teszteket átadják-e. A professzionális verzió tartalmazza az Azure DevOps-ot, amely olyan funkciók gyűjteménye, mint az agilis projekttervezési és tesztelési eszközök, A CI/CD csővezetékek, a jelentési megoldások stb. Ennek a verziónak az éves ára 1199 USD.
a Visual Studio Enterprise erősebb támogatási eszközökkel és szolgáltatásokkal rendelkezik. Lehetővé teszik a bonyolultabb folyamatok kezelését a fejlesztés és az informatikai műveletek között; a minőség nyomon követését kézi és automatizált tesztelő eszközökkel; a szakmai képzéshez és a teljes Microsoft mérnöki és tesztelési ökoszisztémához való hozzáférést. A Vállalati verzió is kiemelt támogatást, partner ajánlatok, és még sok más. Az Enterprise Studio éves ára 5999 dollár.
vállalati használatra azt is javasoljuk, hogy ellenőrizze a Visual Studio App Center alkalmazást. Ez egy olyan eszköz, amely szervezi app fejlesztési munkafolyamat különböző mobil technológiák, beleértve Xamarin. Itt a több alkalmazáson dolgozó mérnöki csapatok összehozhatják eszközkészletüket. Automatizálja az alkalmazások csomagolását a GitHub-on vagy a Bitbucket-en keresztül, integrációt biztosít a különböző tesztelési szolgáltatásokhoz, lehetővé teszi az e-mail alkalmazások terjesztését teszteléshez, összeomláskövetést és elemzést végez.
a Visual Studio Code vagy VS Code 2019-ben a legnépszerűbb fejlesztői környezetnek számít, a fejlesztők 50,7 százaléka jelentette be, hogy használja. A VS Code egy ingyenes, könnyű, nyílt forráskódú szerkesztő, amely biztosítja a kódszerkesztés, az építés és a hibakeresés egyszerű ciklusához szükséges összes fő eszközt, de hiányzik a teljes funkcionalitású ide-k képességei, amelyek lehetővé teszik a bonyolultabb munkafolyamatok kezelését. Mac, Linux és Windows rendszeren fut, és támogatja az olyan alapvető fejlesztési műveleteket, mint a feladat futtatása, a hibaelhárítás és a Verziókezelés. Az IntelliSense az AI által támogatott fejlesztéshez is működik, a Githubmal működik, és gazdag kiterjesztésű ökoszisztémával rendelkezik. A VS Code gyors, egyszerűen használható, jól konfigurálható, és jó választás lehet, ha valami könnyűre van szüksége, de jó funkcionalitással a
Visual Studio Online, vagy a GitHub Cloudspaces egy böngésző alapú fejlesztői környezet, amely támogatja a VS 2019-et és a VS Code-ot. Most már csak bétaverzióban érhető el, és korlátozott funkcionalitással rendelkezik
váltás Android Studio-ról vagy Xcode-ról Visual Studio-ra
Ha fejlesztői csapata fontolóra veszi az Android Studio (AS) vagy Xcode-ról a Visual Studio-ra való áttérést, a tanulási görbe nem lesz olyan meredek. A funkciók közötti összehasonlítások azt mutatják, hogy az IDE-k nagyon azonosak a fejlesztési folyamatok szempontjából, kevés árnyalattal az egyes környezetekben.
az Android stúdióból a Visual Studio-ba. Míg az Android Studio hivatalos támogatása a Java, A C/C++, a Kotlin és az XML nyelvekre összpontosít, a VS támogatja az összes főbb programozási nyelvet, beleértve az AS nyelveket is. Ennek oka az IDE által kiszolgált platformok széles spektruma. A VS nagyobb mérnöki szabadságot biztosít, és lehetővé teszi a különböző projektekkel való munkát egy környezetből. Ha az AS-vel integrált Google Cloud Platformot használta virtuális gépek futtatásához vagy csak projektek kezeléséhez, a Google elég kedves ahhoz, hogy felhőplatform-kiterjesztését biztosítsa a VS számára is. Alapvetően, akkor mind a Microsoft cloud ökoszisztéma és a Google Cloud közvetlenül VS. Visual Studio lehet telepíteni az összes fő platformon: Windows, Android, Mac OS és Linux.
az Xcode-tól a Visual Studio-ig. Az Xcode IDE, hasonlóan a VS-hez, támogatja az összes főbb programozási nyelv forráskódját. Az átállás után nem lesz meglepetés. Ismét, ha már kötve Mac OS használata közben Xcode, Apple hardver nem szükséges VS. azok számára, akik a CloudKit szerver oldali Tárolás, Visual Studio és Xamarin lehetővé teszik az egyszerű integráció CloudKit. A VS használatának fő hátránya az Xcode-hoz képest az ár: mind az Android Studio, mind az Xcode szabadon használható, míg a VS meglehetősen magas előfizetési díjat igényel.
a fejlesztők becslései szerint a Visual Studio és az Android Studio többnyire ugyanolyan könnyű használatú és támogatási minőségű. Összehasonlítva ugyanazokat az indexeket a VS és az Xcode, azt mondhatjuk, hogy a VS becslések egy kicsit jobbak. Ezenkívül a Visual Studio népszerűbb a vállalkozások körében (>1000 alkalmazott), míg az Android Studio és az Xcode felhasználók körülbelül 50 százaléka kisvállalkozás (50 vagy kevesebb alkalmazott).
figyelembe véve a stratégiai elemzési rangsorokat a mobil fejlesztői környezetekben, az Xcode a legmagasabb rangot érte el a tesztelési kapacitások terén, akárcsak a Visual Studio. Az Android Studio lemaradt. Az összes pontszám: Xcode-22; Visual Studio -21; Android Studio -13.
figyelembe véve más lehetőségeket: Xamarin vs hibrid fejlesztés vs natív iOS / Android vs más cross-Platform keretek
a közelmúltban sok fejlesztő egyetért abban, hogy a Xamarin “natív” fejlesztési eszköznek tekinthető. Valójában van egy vélemény, hogy ” bármi, amit meg lehet tenni egy iOS alkalmazásban az Objective-C vagy a Swift használatával, és bármi, amit meg lehet tenni egy Android alkalmazásban a Java használatával, C# – ban is elvégezhető a Xamarin használatával.”
mégis sok buktató van a natív vs Xamarin vitában. Lássuk, hogyan viszonyul a Xamarin a natív fejlesztőeszközökhöz és hibrid fejlesztési platformokhoz (Ionic, PhoneGap/Cordova).
Xamarin vs hibrid vs natív fejlesztés dióhéjban
bár a hibrid mobil fejlesztői eszközök gyorsan fejlődnek, még mindig hiányoznak azok a teljesítmény és natív képességek, amelyeket a Xamarin nagyjából azonos áron kínál. A piacra jutás rövidebb ideje azonban továbbra is a fő előnyük.
a Xamarin vagy a natív iOS/Android közötti választásnál figyelembe kell venni a rendelkezésre álló időt és költségvetést (a natív fejlesztés általában drágább és hosszabb ideig tart) és az alkalmazás típusát. Ha csúcsminőségű teljesítményre és tökéletesen beállított felhasználói felületre van szüksége, érdemes a natív alkalmazásokat használni.
ahogy egyre több platformközi keretrendszer jelenik meg és fejlődik, a Xamarin számára egyre nehezebb megtartani pozícióját a piacon. Napjainkban számos keretrendszer már meghaladta a Xamarint a népszerűség és a teljesítmény szempontjából. A React Native – t 2020 legjobb választásának választották, amelyet szorosan követett Flutter.
cross-platform mobil keretek Használati dinamikája. Forrás: Statista
minden platformközi alkalmazás keretrendszer különböző funkcionalitással és struktúrával rendelkezik. Ha jobb képet szeretne kapni, nézze meg összehasonlító cikkeinket: Xamarin vs Flutter és Xamarin vs React Native vs Ionic vs NativeScript. Ez utóbbi például annak ellenére, hogy kevésbé népszerű, különösen értékes lenne azoknak a fejlesztőknek, akik az Angular framework-et használják, mivel szorosan összekapcsolódnak.
Tanács
az előnyök és hátrányok összehasonlításakor a felsorolt hátrányokat általában járulékos kárnak tekintik. A legtöbb cégtulajdonos a Xamarin mobilalkalmazás-fejlesztési platformot választja, mivel a kód megosztásával és egyetlen technológiai verem használatával csökkenti a piacra jutási időt és a mérnöki költségeket. Az alkalmazás célja és célközönsége azonban még fontosabb tényező lehet.
csapatunk tapasztalatai alapján a Xamarin legjobb felhasználási esete az enterprise mobile solutions. A szabványos felhasználói felülettel, amely a projektek 90% – át lefedi, az összes alapvető terméklogika könnyen megosztható a platformokon. Ezért a platform testreszabása csak a mérnöki erőfeszítések 5-10 százalékát teszi ki.
nehéz felhasználói felületű, fogyasztóval szemben álló alkalmazások esetén a megosztott kód mennyisége drasztikusan csökken. Így a Xamarin cross-platform fejlesztése elveszíti fő előnyét, és időben és költségben megegyezhet a natív megoldásokkal.
Ez a cikk a “jó és rossz” sorozatunk része. Ha érdekel a webfejlesztés, nézd meg a blogbejegyzést a
A jó és a rossz Angular Development
A jó és a rossz a JavaScript Full Stack Development
A jó és a rossz a Node.js Web App Development
A jó és a rossz a ReactJS és reagálnak natív
A jó és a rossz a Swift programozási nyelv
A jó és a rossz szelén teszt automatizálási eszköz
A jó és a rossz az Android App Development
A jó és a rossz a .NET Development
A jó és a rossz a Ranorex GUI teszt automatizálási eszköz
A jó és a rossz a Flutter App Development