VERANSTALTUNGEN

Digital Workspace World
22.10.18 - 22.10.18
In Wiesbaden, RheinMain CongressCenter

PM Forum 2018
23.10.18 - 24.10.18
In Nürnberg

PM Forum 2018
23.10.18 - 24.10.18
In Nürnberg

MCC Fachkonferenz CyberSecurity für die Energiewirtschaft
24.10.18 - 25.10.18
In Köln

Panda Security: IT Security Breakfast
26.10.18 - 26.10.18
In Spanischen Botschaft in Berlin

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 58ca3616158103dd884e54c7116a9610

Fünf Probleme von Legacy-Anwendungen in Sachen DSGVO

Die DSGVO stellt die Software von Unternehmen vor große Herausforderungen. Das gilt…
Tb W190 H80 Crop Int 8cd1cf947e0733b774daaef67ad0fe06

Diese Fehler können Sie bei der Softwareeinführung vermeiden

Bei der Einführung einer neuen Software in einem Betrieb kann eine Menge schief gehen.…
Tb W190 H80 Crop Int 6cb1bdb913d35e8ca6e6e36eab01c91f

Die Anforderungen an eine moderne Buchhaltungssoftware

In Sachen Buchhaltungssoftware bietet der Markt ein breites Angebot an unterschiedlichen…
Microservices

Die 3 Herausforderungen bei der Migration auf Microservices

Mehr als 70 Prozent aller Unternehmen beschäftigen sich aktuell mit Microservices. Viele…
Open Source

Open Source Software: Die Vorteile richtig nutzen

Immer mehr IT-Experten setzen auf Open Source Software. Die Vorteile sind deutlich: Open…
Oliver Burgstaller

Drei häufige Probleme bei der Anwendungsperformance

Manche Dinge ändern sich nie – zum Beispiel Probleme mit der Application Performance. In…
Smarte News aus der IT-Welt