Autopatrol, Moderator
1.304
Bearbeitungen
Md 42 (Diskussion | Beiträge) K (→Frameworks/Technologien für Cross-Platform-Entwicklung von mobilen Apps: Typo in "Kotlin" gefixt) |
Md 42 (Diskussion | Beiträge) K (Neuer Link auf "Titanium") |
||
(8 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Unter ''Cross-Platform-Entwicklung'' (plattformübergreifende Entwicklung) versteht man die Entwicklung von Software, die auf mehr als nur auf einem Betriebssystem (Platform) lauffähig ist.<ref>{{Cite web | url = https://www.itwissen.info/Cross-Plattform-cross-platform.html | title = Eintrag "Cross-Plattform" | accessdate = 2020-09-05 | publisher = itwissen.info | language = de}}</ref> Der Entwickler kann also aus dem Quellcode ohne wesentlichen Anpassungen ein lauffähiges Programm für verschiedene Betriebssysteme erzeugen. Der große Vorteil dieses Ansatzes ist es, dass eine Software/App nicht mehrfach entwickelt werden muss um sie auf verschiedenen Betriebssystemen (z.B. Windows und MacOS oder Android und iOS) bereitzustellen. | Unter ''Cross-Platform-Entwicklung'' (plattformübergreifende Entwicklung) versteht man die Entwicklung von Software, die auf mehr als nur auf einem Betriebssystem (Platform) lauffähig ist.<ref>{{Cite web | url = https://www.itwissen.info/Cross-Plattform-cross-platform.html | title = Eintrag "Cross-Plattform" | accessdate = 2020-09-05 | publisher = itwissen.info | language = de}}</ref> Der Entwickler kann also aus dem Quellcode ohne wesentlichen Anpassungen ein lauffähiges Programm für verschiedene Betriebssysteme erzeugen. Der große Vorteil dieses Ansatzes ist es, dass eine Software/App nicht mehrfach entwickelt werden muss, um sie auf verschiedenen Betriebssystemen (z.B. Windows und MacOS oder Android und iOS) bereitzustellen, was Entwicklungskosten spart.<ref name="rishabhsoft_pro_cons">{{Cite web | url = https://www.rishabhsoft.com/blog/pros-cons-cross-platform-mobile-app-development | title = Pros And Cons Of Cross Platform Mobile Application Development | accessdate = 2020-09-06 | date = 2019-01-29 | publisher = rishabhsoft.com | language = en}}</ref> | ||
<ref name="rishabhsoft_pro_cons" /> | |||
Im Zusammenhang mit [[App#Mobile_App|mobilen Apps]] bedeutet dies heutzutage, dass aus einem Quellcode-Projekt (Code-Linie) eine lauffähige [[App]] sowohl für [[Android]] als auch [[iOS]] erzeugt werden kann. | Im Zusammenhang mit [[App#Mobile_App|mobilen Apps]] bedeutet dies heutzutage, dass aus einem Quellcode-Projekt (Code-Linie) eine lauffähige [[App]] sowohl für [[Android]] als auch [[iOS]] erzeugt werden kann. | ||
Zeile 5: | Zeile 7: | ||
Der Cross-Platform-Entwicklung steht die Entwicklung [[App#Native_App|nativer Apps]] entgegen, bei denen eine App mit vom Hersteller des jeweiligen Betriebssystem vorgegebenen Programmiersprachen und Entwicklungswerkzeugen (z.B. Compiler) erstellt wird und die dann nur auf diesem einem Betriebssystem lauffähig sind. | Der Cross-Platform-Entwicklung steht die Entwicklung [[App#Native_App|nativer Apps]] entgegen, bei denen eine App mit vom Hersteller des jeweiligen Betriebssystem vorgegebenen Programmiersprachen und Entwicklungswerkzeugen (z.B. Compiler) erstellt wird und die dann nur auf diesem einem Betriebssystem lauffähig sind. | ||
== Nachteile == | |||
Wenn eine mobile App mit ''Cross-Platform-Entwicklung'' entwickelt wird, dann kann dies die folgenden Nachteile mit sich bringen<ref name="rishabhsoft_pro_cons"/><ref>{{Cite web | url = https://codeburst.io/native-vs-cross-platform-app-development-pros-and-cons-49f397bb38ac | title = Native vs. cross-platform app development: pros and cons | author = Michael J. Garbade | accessdate = 2020-09-06 | date = 2018-08-23 | publisher = codeburst.io | language = en}}</ref>: | |||
* Die Performanz der App kann schlechter sein als bei einer nativen App. | |||
* Die Optik und das Verhalten (Look and Feel) der App entspricht evtl. nicht dem einer nativen App auf dem jeweiligen Betriebssystem. | |||
* Der Zugriff auf bestimmte Funktionen des Betriebssystems (z.B. Kamera, Ortung, Dateisystem) ist evtl. nicht oder nur eingeschränkt und mit zusätzlichem Entwicklungsaufwand möglich. | |||
* Es fallen evtl. Lizenzkosten für benötigte Entwicklungswerkzeuge an, während die Entwicklungswerkzeuge für native Apps ([[Android Studio]] für [[Android]] und [[Xcode]] für [[iOS]]) kostenlos sind. | |||
* Die Installationsdatei der App ([[APK]]-Datei bei Android) kann größer werden, weil zusätzliche Laufzeitkomponenten hineingepackt werden müssen. | |||
== Grundlegende Ansätze für Cross-Platform-Entwicklung von mobilen Apps == | == Grundlegende Ansätze für Cross-Platform-Entwicklung von mobilen Apps == | ||
Zeile 13: | Zeile 24: | ||
* [[Apache Cordova]] | * [[Apache Cordova]] | ||
* [[Flutter]] | * [[Flutter]] | ||
* [[Ionic]] | * [[Ionic]] | ||
Zeile 19: | Zeile 29: | ||
* [[NativeScript]] | * [[NativeScript]] | ||
* [[React Native]] | * [[React Native]] | ||
* [[Appcelerator_Titanium|Titanium]] | |||
* [[Xamarin]] | * [[Xamarin]] | ||