MicrosoftNewsReport

[Erläuterung] Was genau ist Xamarin und wieso hat Microsoft es gekauft?

Microsoft Windows 10

Der Kauf von Xamarin vor einigen Tagen hat innerhalb der Microsoft Community f√ľr Aufsehen gesorgt. Aber wieso eigentlich? Viele von uns haben sicher schon von Xamarin geh√∂rt und wissen auch so ungef√§hr was man damit machen kann („gleichzeitig f√ľr iOS, Android und Windows programmieren“).

Vielleicht ist es f√ľr manche aber interessant zu erfahren, wof√ľr genau Xamarin n√ľtzlich ist und wieso die Redmonder sich dazu entschlossen haben es zu √ľbernehmen. Diese Fragen m√∂chte ich in bester „L√∂wenzahn“-Manier (R.I.P.) versuchen zu beantworten.

Ich gebe dabei zu bedenken, dass ich kein Entwickler bin und lediglich recherchierte Informationen, geb√ľndelt an euch weitergeben kann. Developer k√∂nnen mich also gerne auf Unklarheiten aufmerksam machen.

Xamarin – Was ist das eigentlich?

Wie im normalen Leben auch, gibt es in der Programmierwelt verschiedene Sprachen. Die relevantesten f√ľr diesen Artikel sind C (genauer gesagt C#), Java und Objective-C.

Vereinfacht ausgedr√ľckt, k√∂nnen wir jede dieser drei Sprachen einzelnen Betriebssystem zuordnen, auf denen vornehmlich damit gearbeitet wird: C# -Windows, Java – Android und Objective-C – iOS. Bei iOS verlagert sich die Entwicklerpr√§ferenz gerade auf die Programmiersprache Swift, was an dieser Stelle erstmal keine Rolle spielt.

Xamarin ist deshalb so praktisch f√ľr Windows Entwickler, weil sie den Gro√üteil ihres Codes, der in C# kompiliert wurde, f√ľr die Programmierung von Android und iOS Apps nutzen k√∂nnen.

F√ľr Betriebssystemspezifische Features wie Live-Kachel-Funktion oder Widgets, m√ľssen Entwickler noch Anpassungen vornehmen. Das C# Grundger√ľst und damit ein Gro√üteil des Codes kann aber √ľbernommen werden und erleichtert den Arbeitsaufwand enorm.

Man kann also durchaus von einer universellen Programmiersprache sprechen, die aber einige Einschr√§nkungen mit sich bringt. Ohne zus√§tzliche Anpassungen erh√§lt der Entwickler zwar eine App, die auf Windows, iOS und Android l√§uft. Die UI (User Interface) ist dann aber recht simpel gehalten. Neuere Versionen von Xamarin sollen aber enorme Fortschritte gemacht haben, so das „universeller“ Code auch komplexere UIs erlaubt.

Das erstaunliche an Xamarin ist, dass der Code auf jede der Plattformen nativ läuft und so eine sehr gute Performance bietet. So gibt es zwar Cross-Platform Tools, die ebenfalls inkompatible Programmiersprachen auf verschiedenen Systemen lauffähig machen, doch hier wird eine Emulation verwendet Рdementsprechend Probleme, gibt es dann auch in der Stabilität und Geschwindigkeit der Anwendungen.

ios-app-xamarin

Wie man diesem Diagramm entnehmen kann, sind Xamarin Apps auf iOS sogar schneller als das √ľblicherweise verwendete Objective-C. Das neuere Swift hat aber noch die Nase vorn.

Xamarin vs. die Windows „Bridges“ (Project Islandwood, Astoria etc.)

Xamarin ist aber kein Konverter im Sinne der Windows „Bridges“, die Microsoft auf der letztj√§hrigen Build vorgestellt hat. Ein iOS Entwickler kann mittels Project Islandwood eine App von „seinem“ (Objective-C) System , in eine Universal App f√ľr Windows konvertieren. Entwickler, die mit Xamarin arbeiten m√∂chten, m√ľssen jedoch in C# programmieren k√∂nnen.

So gesehen ist Xamarin eine Erg√§nzung und, zumindest f√ľr bereits bestehende Apps, kein Ersatz f√ľr die „Bridges“.

*Project Astoria ist mittlerweile gestorben und spielt an dieser Stelle keine Rolle mehr.

Probleme von Xamarin

Eines der gr√∂√üten Probleme von Xamarin d√ľrfte der Preis sein.

K1024_Screenshot (74)

F√ľr Unternehmen (die momentan auch Hauptnutzer von Xamarin sind) sind die Ausgaben Peanuts. M√∂chte aber ein kleines Team aus 5 Mann eine App erschaffen, die dann auch auf iOS und Android laufen soll, m√ľssen sie j√§hrlich mit knapp $10.000 rechnen.

Indie Entwickler, haben immer noch eine Rechnung von knapp $600 zu bezahlen und m√ľssen auch noch auf eine Visual Studio Lizenz verzichten (‚ā¨2000/Jahr).

Ich bin gespannt was sich Microsoft einfallen l√§sst, um diese Kosten zu senken. Warum nicht f√ľr ein paar Jahre kostenlos anbieten?

Ausblick

Wie bereits weiter oben erw√§hnt ist Xamarin eine Erg√§nzung zur „Bridge“-Strategie von Microsoft. Entwicklern stehen nun sowohl Tools zur Konvertierung ihrer iOS Apps zur Windows Plattform zur Verf√ľgung als auch Mittel, um eine neue App von Anfang an f√ľr alle gro√üen mobilen Systeme komaptibel zu machen.

Und das ist erst der Anfang. Nach dem Kauf von ¬†Xamarin werden die Redmonder das System nun weiter verfeinern. Das Ziel d√ľrfte sein, einen Konverter zu entwickeln, der jede g√§ngige Programmiersprache f√ľr alle Systeme kompatibel macht.¬†

Ich habe keinen Schimmer ob so etwas in naher Zukunft realisierbar ist, aber Microsoft verfolgt meiner Meinung nach eine sehr klare Strategie zum Thema „echte Universal Apps“.

Ich bin gespannt auf die Build 2016.


Quelle

Vorheriger Artikel

Acer präsentiert seine Windows 10 Phones in aufwendigen Werbevideos

Nächster Artikel

WhatsApp stellt Support f√ľr Windows Phone 7 und andere Betriebssysteme ein

Der Autor

Leonard Klint

Leonard Klint

"Change has to flow from the bottom to the top." - Ed Snowden

Hinterlasse einen Kommentar

4 Kommentare auf "[Erläuterung] Was genau ist Xamarin und wieso hat Microsoft es gekauft?"

Benachrichtige mich zu:
avatar
Sortiert nach:   neuste | √§lteste | beste Bewertung
Hannes
Gast
Apps bestehen meist aus mehreren „Schichten“. 1. Datenbankzugriff bzw. Zugriff auf externen Services, welche beispielsweise Daten bereitstellen z.B. die meisten News Seiten erlauben es, Artikel im JSON oder XML Format abzurufen, vermutlich auch eure. ūüôā 2. Sog. „Business Logik“, welche Benutzeranmeldung handhabt, Daten √ľber die 1. Schicht abruft und f√ľr das User Interface aufbereitet, die eigentliche Logik/Funktion der App. 3. User Interface. Hier werden die in 2. aufbereiteten Daten angezeigt, Eingaben entgegengenommen, Interaktion mit dem User findet statt. Wenn eine Firma eine App entwickelt und f√ľr Android, iOS und Windows bereitstellen m√∂chte, muss sie diese App 3-mal implementieren, ben√∂tigt Entwickler… Weiterlesen ¬Ľ
superuser123
Mitglied

Wie sch√∂n war die Zeit fr√ľher, als man mit .NET Windows Forms programmiert hat…

Gerd48
Mitglied

Vielen Dank Hannes f√ľr deine super tolle Erg√§nzung. Mir fehlt in Windows eigentlich nur noch meine Husqvarna automower app, so das ich neben meinem 950 ein iPad mini weiter nutzen muss.

wpDiscuz