Es gibt viele Frameworks und Programmiersprachen zur App Entwicklung. In diesem Blogtext wollen wir uns einen Überblick über die vorhandenen Möglichkeiten verschaffen. Fokussieren wollen wir uns in dem Kontext aber auf die genutzten Programmiersprachen. Zu diesem Zwecke werden wir uns kurz anschauen, was diese generell auszeichnet oder auch, wie diese im Kontext des jeweiligen Frameworks verwendet werden.
Programmiersprachen zur Nativen App Entwicklung
Bevor wir uns eine Reihe von Frameworks zur Programmierung einer mobilen App ansehen werden, wollen wir zunächst einen Blick auf die native App-Entwicklung von iOS und Android Apps werfen. Diese nativen Apps laufen dann tatsächlich nur auf dem jeweiligen Betriebssystem.
Android:
Eine native Android-App wird üblicherweise unter Verwendung des Android Software Development Kit (SDK) mit den Programmiersprachen Kotlin oder Java geschrieben:
- Kotlin:
Hierbei handelt es sich um eine plattformübergreifende, statisch typisierte Programmiersprache, die in Bytecode für die Java Virtual Machine (JVM) übersetzt wird. Seit 2017 unterstützt Google offiziell die Entwicklung von Android-Apps in Kotlin und im Mai 2019 wurde Kotlin für die Entwicklung von Android-Apps zur dafür bevorzugten Sprache ernannt. Vorher war dies Java, womit wir beim nächsten Punkt angekommen wären. - Java:
Java ist eine objektorientierte Programmiersprache und wurde von Sun Microsystems, das 2010 von Oracle aufgekauft wurde, entwickelt. Die Programmiersprache ist Bestandteil der Java-Technologie, welche grundsätzlich aus dem Java-Entwicklungswerkzeug (JDK) zum Erstellen von Java-Programmen und der zur Ausführung genutzten Java-Laufzeitumgebung (JRE) besteht. Die Laufzeitumgebung umfasst die virtuelle Maschine (JVM) und mitgelieferte Bibliotheken. Die Java-Laufzeitumgebungen führen Bytecode aus, der sowohl aus der Programmiersprache Java als auch aus anderen Programmiersprachen wie Kotlin kompiliert werden kann.
iOS:
Für iOS hingegen wird XCode zur Programmierung genutzt und die Programmiersprachen Swift und Objective-C verwendet:
- Swift:
Hierbei handelt es sich um eine multiparadigmatische Sprache, die unter anderem Ideen von Objective-C, Rust, Haskell, Ruby, Python und C# aufgreift. Die Programmiersprache wurde von Apple entwickelt und bietet Klassen, Vererbung, Closures, Typinferenz, Funktionen höherer Ordnung, generische Typen und Namensräume sowie multiple Rückgabetypen und -werte. Laut Chris Lattner, Swifts Chefarchitekten, soll Swift Objective-C nicht ersetzen, sondern eine zusätzliche Möglichkeit zum Entwickeln bieten. Und damit wären wir auch hier am nächsten Punkt angelangt. - Objective-C:
Bei Objective-C handelt es sich um einer Erweiterung der Programmiersprache C um Sprachmittel zur objektorientierten Programmierung. Die Sprache ist eine echte Obermenge von C, das heißt, dass jedes C-Programm mit einem Objective-C-Compiler kompiliert werden kann. Die Syntax und Konzeption der objektorientierten Erweiterungen ist strikt von der gewöhnlichen prozeduralen C-Syntax getrennt. Dies erlaubt es, dasselbe Erweiterungskonzept auf andere imperative Sprachen anzuwenden.
Populäre Frameworks und Programmiersprachen zur App Entwicklung
Nachdem wir nun einen Blick auf die Möglichkeiten der nativen App-Entwicklung geworfen haben, wollen wir uns als nächstes populäre Frameworks anschauen. Anschließen wollen wir uns die verwendeten Programmiersprachen anschauen.
Flutter:
Flutter ist ein beliebtes Framework mit dem Entwickler benutzerfreundliche Anwendungen für Mobil-, Desktop-, eingebettete und Webplattformen entwerfen können. Es gehört zu den beliebtesten Frontend-Frameworks, die auf einer einzigen Codebasis arbeiten, um hybride iOS- und Android-Apps zu entwickeln. Es ist ein Open-Source-Entwicklungsframework, das anpassbare Widgets, eine 2D-Rendering-Engine, API-Tests usw. unterstützt.
Wann sollte man Flutter nutzen:
- Anwendungen über mehrere Screens.
- Zum Erstellen von Apps ohne viel Coding.
- Um benutzerdefinierte, adaptive Designs für mobile Apps zu erstellen.
React Native:
React Native gehört zu den umfangreichsten Frameworks zur Entwicklung mobiler Apps, die von Unternehmen auf der ganzen Welt verwendet werden. Eingebettet in JavaScript-Bibliothekscode vereinfachen diese Frameworks das App-Building für Android und iOS erheblich. Mit React Native kann man die Lücke zwischen Aufwand in der Implementierung und der Leistung nativer Apps schließen.
Programmiersprache: JavaScript
Wann sollte man React Native nutzen:
- Für Apps, die vollständig nativ aussehen und sich auch so anfühlen.
- Konvertierung einer Webseite in eine intuitive mobile App.
- Um Apps schneller und innerhalb des Budgets zu erstellen.
Xamarin:
Es ist eines der führenden plattformübergreifenden App-Entwicklungsframeworks auf Basis von .Net. Dieses von Microsoft unterstützte Framework bietet eine Open-Source-Entwicklungsumgebung mit einem leistungsstarken Backend, Komponenten, API und vielem mehr. Außerdem wird Xamarin von einer Reihe von Programmiersprachen, Bibliotheken und Tools unterstützt, um eine schnelle App-Entwicklung zu fördern.
Programmiersprache: C#
Wann sollte man Xamarin nutzen:
- Empfohlen für Projekte mit Priorität auf benutzerdefinierter Benutzeroberfläche und Code-Sharing.
- Kann für Anwendungen mit Interaktionen verwendet werden, die natives Verhalten erfordern.
- Um plattformübergreifende Apps in C# über Visual Studio zu schreiben. Also für Entwickler mit Erfahrung in dieser Richtung.
Ionic:
Es ist eine auf Angular basierende Open-Source-Plattform, die dabei hilft, robuste Web-, native und hybride Anwendungen unter Verwendung von CSS-, JavaScript- und HTML-Technologien zu erstellen. Mit Ionic erstellte Apps können erfolgreich in mehreren App Stores veröffentlicht und auf allen verfügbaren Geräten über Cordova oder Capacitor installiert werden.
Programmiersprachen: JavaScript, TypeScript
Wann sollte man Ionic nutzen:
- Entwicklung von progressive Web-Apps (PWAs) und plattformübergreifender Apps.
- Bietet sich für Entwickler an, die Erfahrung mit verschiedenen JavaScript- und Angular-Bibliotheken haben.
- Erstellung mobiler Anwendungen, ohne native Entwickler.
Apache Cordova:
Apache Cordova, früher bekannt als PhoneGap, ist ein Open-Source-Framework für die App-Entwicklung, das HTML5-, CSS3- und JavaScript-Technologien verwendet. Grundsätzlich fungiert dieses Framework als Container, der Web-Apps mit nativen mobilen Funktionalitäten ermöglicht.
Programmiersprache: JavaScript
Wann sollte man Apache Cordova nutzen:
- Bereitstellung von Web-Apps in mehreren App-Stores.
- Um native App-Komponenten mit WebView zu kombinieren und auf APIs auf Geräteebene zuzugreifen.
- Wenn schnelles Prototyping das Gebot der Stunde ist.
Die bekanntesten Programmiersprachen zur App Entwicklung
Nachdem wir nun einige Frameworks aufgezählt haben, wollen wir noch einen ganz kurzen Blick auf die erwähnten Programmiersprachen werfen:
- JavaScript
Bei JavaScript handelt es sich um eine Sprache, die ursprünglich 1995 von Netscape für dynamisches HTML in Webbrowsern entwickelt wurde. Ziel war es Benutzerinteraktionen auszuwerten, Inhalte zu verändern, nachzuladen oder zu generieren und so die Möglichkeiten von HTML zu erweitern. Heute wird JavaScript auch außerhalb von Browsern angewendet, etwa auf Servern (Node.js). - TypeScript
TypeScript ist eine Obermenge des JavaScript-Standards ECMAScript 2015. Das heißt JavaScript ist auch valides TypeScript. Es bietet daher die Möglichkeit, existierenden JavaScript-Code und bekannte JavaScript-Bibliotheken direkt zu verwenden. TypeScript beschreibt sich selbst als JavaScript mit einer Syntax für Datentypen. - Dart
Dart ist eine, der Java-Programmierung sehr ähnliche, objektorientierte Sprache, die hauptsächlich vom Unternehmen Google entwickelt wird . Dart wird häufig verwendet, um Single-Page-Websites und Anwendungen zu erstellen. Ein Beispiel für eine Dart-Anwendung ist Googles Gmail. - C#
C# (C-Sharp) ist eine objektorientierte, komponentenorientierte Programmiersprache, die von Microsoft entwickelt wurde und auf dem .NET Framework basiert. C# bietet Konstrukte zur direkten Unterstützung der genannten Konzepte. Dies macht C# zu einer natürlichen Sprache, in der Softwarekomponenten erstellt und verwendet werden.
ISEO – Dein Partner für App Entwicklung mit Qualität
Unsere Entwickler beherrschen jede der vorgestellten Frameworks und Programmiersprachen. Somit können wir App Entwicklung in hoher Qualität anbieten und digitale Visionen verwirklichen. Sichere dir jetzt das kostenlose Erstgespräch für dein digitales Projekt.