Entwicklung – Quick Start mit Xamarin

Xamarin ermöglicht die Entwicklung von nativen mobilen Applikationen mit Hilfe einer gemeinsamen Codebasis. Dies hat die entscheidenden Vorteile, dass eine Applikation nicht länger pro Plattform umgesetzt werden muss und dass im Vergleich zu anderen Cross-Plattform-Lösungen native Anwendungen als Artefakte entstehen. Andere Lösungen, wie Ionic oder Cordova, setzen dabei auf WebView, das lediglich das Look and Feel der jeweiligen Plattformen imitiert.

Die Entwicklung mit Xamarin findet dabei in C# statt, wobei die APIs der jeweiligen Plattformen darüber zugreifbar sind. Dadurch ist es möglich, den vollen Funktionsumfang von iOS, Android oder Windows zu nutzen. Für die Umsetzung bestehen zwei Ansätze: Gemeinsame Codebasis in C# + plattformspezifische Benutzeroberflächen oder gemeinsame Codebasis in C# + gemeinsame Benutzeroberfläche, die während der Kompilierung in plattformspezifische und native Steuerelemente überführt wird. Letzteres umfasst die Entwicklung mit Xamarin.Forms.​

Entwicklung mit Xamarin.Forms

Xamarin.Forms stellt die Entwicklung von Xamarin-Oberflächen mit Hilfe von XAML dar. Dadurch ist es möglich, auf das Designpattern MVVM (Model, View, ViewModel) zurückzugreifen, wodurch eine vergleichbare Entwicklung zu WPF- bzw. Desktopapplikationen für Windows möglich ist.

Exkurs: MVVM

https://msdn.microsoft.com/en-us/library/gg405484(v=pandp.40).aspx

Model:
Das Model ist für den Datenzugriff, die Konsistenz und die Gültigkeit der Daten zuständig. Dabei kapselt es sowohl die Daten als auch die Businesslogik in Klassen ab und ist dabei unabhängig von der Darstellung der Daten an der Oberfläche.

ViewModel:
Das ViewModel kapselt die Präsentationslogik und Zustände. Dabei stellt es die Daten des Models zusammen und konvertiert sie für das DataBinding, indem Daten und Commands als Properties zur Verfügung gestellt werden. Dafür kommt das INotifyPropertChanged-Interface zum Einsatz. Zugleich besitzt es keine Kenntnis über die Controls in der View.

View:
Stellt die GUI einer Ansicht in der Applikation dar. Dabei wird das ViewModel als DataContext gesetzt, wodurch mit Hilfe des DataBindings eine Interaktion mit der Präsentationslogik möglich ist. Lediglich UI-spezifische Logik, wie das Animieren einer Schaltfläche, befindet sich im Code Behind der View.

Views, Layouts und Pages stellen die zentralen Elemente in Xamarin.Forms dar. Das Grundgerüst bildet dabei eine Page. In ihr lassen sich beliebige Layouts und Views einbinden und miteinander kombinieren, sodass vielfältige Benutzeroberflächen kreiert werden können. In eine Page wird meist direkt ein Layout platziert, welches verschiedene Views oder wiederum andere Layouts vorhält. Beispiel: https://github.com/jamesmontemagno/MyShoppe/blob/master/MyShop/Views/HomePage.xaml

Views in Xamarin.Forms: https://developer.xamarin.com/guides/xamarin-forms/controls/views/

Pages in Xamarin.Forms: https://developer.xamarin.com/guides/xamarin-forms/controls/pages/

Layouts in Xamarin.Forms: https://developer.xamarin.com/guides/xamarin-forms/controls/layouts/

Einführung in Xamarin.Forms: https://developer.xamarin.com/guides/xamarin-forms/getting-started/introduction-to-xamarin-forms/

Xamarin.Forms Quickstart: https://developer.xamarin.com/guides/xamarin-forms/getting-started/hello-xamarin-forms/

Weiterführende Quellen für den Einstieg:

Beispiel Applikation mit Xamarin.Forms, Azure-Integration, Offline/Online Sync, etc.: https://github.com/jamesmontemagno/MyShoppe

Buch zur Einführung in Xamarin.Forms (mit Beispielen): https://blogs.msdn.microsoft.com/microsoft_press/2016/03/31/free-ebook-creating-mobile-apps-with-xamarin-forms/

Xamarin Developer Guide:  https://developer.xamarin.com/guides/​​

Erfahren Sie mehr

Office 365 Groups als Evolution von SharePoint?
Blog
Blog

Office 365 Groups als Evolution von SharePoint?

Zusätzlich zu SharePoint erlauben die Office 365 Groups es mir als Anwender, schnell und einfach neue Gruppen anzulegen und selbständig Benutzer hinzuzufügen.

Das neuste Mitglied der Office 365 Familie: Delve
Blog
Blog

Das neuste Mitglied der Office 365 Familie: Delve

Microsoft legt nach: Mit Delve startet eine neue Form des Suchens und des Auffinden von Dokumenten und Informationen.

Ich bin im Flow! – Eine Übersicht zu Microsoft Flow
Blog
Blog

Ich bin im Flow! – Eine Übersicht zu Microsoft Flow

Die Power Platform wird aktuell von Microsoft sehr stark gepusht. Zeit, sich mit dem Potenzial der einzelnen Komponenten zu beschäftigen. Heute: Flow.

Sprechen Sie LUIS? – Der intelligente Chat-Bot im Praxistest
Blog
Blog

Sprechen Sie LUIS? – Der intelligente Chat-Bot im Praxistest

Mit LUIS, der Sprach- und Texterkennungssoftware von Microsoft, und dem Bot Framework von Azure haben wir eine Lösung für den IT-Support entwickelt.

Nov
07
Webcast mit Microsoft: Das Intranet zu Ende gedacht
Webinar
Webinar

Webcast mit Microsoft: Das Intranet zu Ende gedacht

Am 07. November findet erneut eines unserer Webinare gemeinsam mit Mircosoft statt. Das Thema dieses Mal: Das Intranet zu Ende gedacht – Die Informationszentral...

novaCapta auf der Fachtagung für Interne Revision
Event
Event

novaCapta auf der Fachtagung für Interne Revision

Das Expertenteam der novaCapta präsentiert am 15. und 16. November ihre innovative Audit Management Lösung auf dem DIIR-Kongress in Dresden. Besuchen Sie unsere...

Azure Functions: Der Webservice ohne Webserver
Blog
Blog

Azure Functions: Der Webservice ohne Webserver

Azure Functions als Authentifizierungs-Helfer für clientseitige Lösungen mit 3rd Party APIs

Paket Dependency Manager für .NET
Blog
Blog

Paket Dependency Manager für .NET

Paket ist ein Dependency Manager für .NET, welcher es sich zum Ziel gesetzt hat einige Probleme von NuGet zu beheben.

PowerApps – Neuigkeiten, Übersicht, Tipps & Tricks
Blog
Blog

PowerApps – Neuigkeiten, Übersicht, Tipps & Tricks

Neues aus der Welt von PowerApps

Valo ist neuer Partner der novaCapta für Intranets
News
News

Valo ist neuer Partner der novaCapta für Intranets

Durch die Partnerschaft mit Valo, dem Ready-2-Go Intranet-Baukasten aus Finnland baut die novaCapta ihr Angebot bei der Umsetzung von schnellen und funktionalen...

Mit der HoloLens ein Stück Berlin nach Köln holen
News
News

Mit der HoloLens ein Stück Berlin nach Köln holen

Im Rahmen eines zweitägigen Hackathons haben sich einige Mitarbeiter der novaCapta der Microsoft HoloLens und dem Thema Mixed Reality gewidmet. Dabei haben wir...

May
04
novaCapta auf der dotnet Cologne
Event
Event

novaCapta auf der dotnet Cologne

In nächster Nachbarschaft zu unserem Kölner Büro findet am 04. und 05. Mai die dotnet Cologne im KOMED statt. Wir von der novaCapta sind auch dabei.