VERANSTALTUNGEN

USU World 2018
06.06.18 - 07.06.18
In World Conference Center Bonn

CEBIT 2018
11.06.18 - 15.06.18
In Hannover

ERP Tage Aachen
19.06.18 - 21.06.18
In Aachen

next IT Con
25.06.18 - 25.06.18
In Nürnberg

XaaS Evolution 2018
01.07.18 - 03.07.18
In H4 Hotel Berlin Alexanderplatz

App DevelopmentApp-Entwicklung quo Vadis? Die Programmierung einer App bedarf im Vorfeld einer sorgfältigen Planung und Strukturierung, um Kosten und Nutzen abzuwägen. Dafür müssen unter anderem die zu unterstützenden Plattformen als auch die Art und Weise der Entwicklung festgelegt werden. 

„Apps können nativ programmiert, mit Crossplatform-Tools erstellt oder auch mit einem hybriden Ansatz entwickelt werden“, weiß Jan Füllemann, Vertrieb Mobile & App, der c4c Engineering GmbH zu berichten. Die IT-Experten entwickeln professionelle mobile Softwarelösungen für Industrie und Mittelstand und geben regelmäßig in Form von „Techdays“ einen informativen Überblick über aktuelle Entwicklungen im Smartphone- und Tablet-Markt.

Hinsichtlich der Wahl der Plattform sieht c4c Android und iOS am stärksten am Markt vertreten. Windows Phone liegt hingegen weit ab. „Eine ausreichende Verbreitungsmöglichkeit der eigenen App ist ohne Unterstützung von Android und iOS kaum möglich“ so die Einschätzung von Füllemann. Nachdem die Frage der Plattform geklärt ist, sollte über die Art der Entwicklung entschieden werden. Dabei stehen drei grundlegende Konzepte laut der IT-Experten von c4c zur Auswahl - nativ, ein Crossplatform-Ansatz oder hybride Apps.

Native Apps

Native Apps werden in der Programmiersprache des jeweiligen Betriebssystems geschrieben. Unter Android ist das üblicherweise Java. In iOS werden native Apps in Objective-C geschrieben. Neuerdings können iOS Apps auch in Swift programmiert werden. Für Windows Phone wird DotNet verwendet. Native Apps müssen darum speziell für jedes Betriebssystem neu programmiert werden und sind untereinander nicht kompatibel. Sie können direkt auf Schnittstellen der jeweiligen Plattform zugreifen. Diese Schnittstellen zum jeweiligen Betriebssystem sind sehr umfangreich und enthalten weit über 1.000 verschiedene Aufrufe. „Durch Updates der Betriebssysteme kommen immer wieder Neue hinzu und Alte fallen unter Umständen weg. Die Plattformen entwickeln sich fortlaufend weiter“, erklärt Füllemann.

Crossplatform Apps

Crossplatform Apps laufen in einer Art Container auf dem jeweiligen Betriebssystem. Die Programmierung erfolgt in einer gemeinsamen Sprache für alle Betriebssysteme. Theoretisch muss damit nur einmal programmiert werden und die App läuft ohne weitere Anpassungen sofort auf verschiedenen Betriebssystemen. Meist erfolgt die Programmierung in Javascript. Es sind aber auch andere gemeinsame Sprachen möglich wie C#, Mono oder C++. Crossplatform-Frameworks wie beispielsweise Xamarin, Cordova, QT, React Native oder Phonegap erleichtern Entwicklern dabei den gemeinsame Quellcode auf die Schnittstellen des jeweiligen Betriebssystems weiter zu leiten. „Die Technologien für Crossplatform Apps sind aktuell stark im Wandel. Es erscheinen laufend neue Frameworks und Ansätze um Apps für verschiedene Plattformen zu entwickeln. Viele Frameworks sind noch im Anfangsstadium oder die Entwicklung schläft über die Zeit ein. Einen klaren Sieger bzw. "das beste Framework" ist aktuell noch nicht zu erkennen“, so Füllemann.

Aufrufe der gemeinsamen Programmiersprache an das Betriebssystem müssen immer noch in die jeweiligen nativen Sprachen weitergeleitet werden. Es müssen quasi "Brücken" von der gemeinsamen Sprache zur jeweiligen nativen Laufzeitumgebung geschlagen werden. Diese Brücken, in Cordova auch Plugins genannt, ermöglichen es beispielsweise auf Daten vom Gerät wie die Kamera, Hardware-Sensoren (GPS, Lagesensor, Beschleunigung etc.), Dateisystem, Adressbuch oder Terminkalender zuzugreifen.

Hybride Apps

Apps können auch beide Ansätze kombinieren. Teile der App können über gemeinsame Bereiche verfügen, die mit Crossplatform-Technologien umgesetzt werden. Andere Bereiche der App hingegen werden nativ umgesetzt. So lassen sich Vorteile beider "Welten" nutzen. „Die Konzepte lassen sich sogar innerhalb eines Bildschirms kombinieren und in der Regel sieht der Nutzer keine Übergänge. Eine weitere Möglichkeit ist auch die interne Logik und Algorithmen der App in einer gemeinsamen Sprache zu Programmieren, beispielsweise die Berechnungen von komplexen Problemen“, so Füllemann. Die Darstellung des Ergebnisses hingegen kann wieder nativ in der jeweiligen Sprache erfolgen. 

www.c4cengineering.de

GRID LIST
Tb W190 H80 Crop Int A799384e8f64b5f22b4b21cf90c436ab

Business Intelligence Software - ab welcher Unternehmensgröße wichtig?

Kaum ein Unternehmen hat heute noch die Möglichkeit, sich auf lange Reaktionszeiten zu…
Tb W190 H80 Crop Int 2d1f2dc7edd2b7193895396bbfc10ab3

DevOps nutzen und Anwendungen aufrechterhalten

Die Herausforderung bei DevOps-orientierten IT-Betriebsmodellen besteht darin, dass sie…
Tb W190 H80 Crop Int E6eb987ac8d57cbea98537b512f5c035

Warum Open Source wichtig für Collaboration-Lösungen ist

Open Source – Software, deren Quellcode öffentlich ist, verändert und geteilt werden kann…
API

14 Tipps zur Absicherung von APIs

APIs (Application Programming Interfaces) sind ein zweischneidiges Schwert für moderne…
Tb W190 H80 Crop Int E6eb987ac8d57cbea98537b512f5c035

Die Open-Source-Falle beginnt bei den Lizenzbedingungen

Die Euphorie rund um das 20-jährige Open-Source-Jubiläum ist groß. Allerdings ist nicht…
Georg Baumgartner

Trendstudie DevOps 2017

Haupthindernis für die Einführung von DevOps ist laut Umfrage fehlendes Knowhow im…
Smarte News aus der IT-Welt

IT Newsletter


Hier unsere Newsletter bestellen:

 IT-Management

 IT-Security