Plattformübergreifende Entwicklung mobiler Anwendungen im Jahr 2020

Hallo alle zusammen!

Ich bin Sergey Yakimov, CTO Omega-R, ein internationales Unternehmen, das IT-Lösungen entwickelt und integriert. Basierend auf langjähriger Erfahrung auf dem Gebiet der Informationstechnologie und Unternehmenskompetenz möchte ich meine Vision der Gegenwart und der nahen Zukunft der plattformübergreifenden Entwicklung mobiler Anwendungen teilen.

Bild

Im Laufe der Jahre hat sich die plattformübergreifende mobile Entwicklung einen Ruf als einer der beliebtesten Bereiche der Softwareentwicklung erworben. Mit dem plattformübergreifenden Ansatz können Sie Anwendungen für verschiedene Plattformen mit einer Codebasis erstellen. Dies spart Zeit und Geld und eliminiert unnötigen Aufwand.

Laut einer Studie von We Are Social Inc. zu Digital 2020 Reports . und Hootsuite Inc. steigt die Anzahl der Internetnutzer weltweit um 9 Personen pro Sekunde. Dies bedeutet, dass täglich mehr als 800.000 Menschen der globalen Online-Community beitreten, die Desktop- oder Mobilgeräte verwenden. Interessanterweise wird die letztere Option von Monat zu Monat beliebter.

Die Verbreitung von Smartphones im Alltag nimmt weltweit zu. Es wird erwartet, dass bis 2024 drei von vier verwendeten Telefonen Smartphones sein werden. Laut StatCounter- Statistiken ist der Anteil der Desktop-Benutzer auf 45,66% gesunken.

Bild

Die einfachste Erklärung für diesen Zustand ist eine Änderung unseres Lebensstils. Wir verbringen mehr Zeit im Internet als jemals zuvor. Fast jeder hat Zugang zu einem Smartphone oder Tablet. Angesichts der Tatsache, dass der durchschnittliche Benutzer fast 7 Stunden am Tag im Netzwerk verbringt, ist es nicht verwunderlich, dass mehr als die Hälfte dieses Datenverkehrs von Mobilgeräten stammt.

Dies wiederum treibt den Markt für mobile Anwendungen zum Wachstum. Das Ergebnis der Einstellungen für mobile Apps sind ziemlich beeindruckende Zahlen. GemäßLaut dem Bericht von Statista belief sich der weltweite Umsatz mit mobilen Apps im Jahr 2019 auf 461 Milliarden US-Dollar. Bis 2023 werden bezahlte Downloads und In-App-Anzeigen voraussichtlich einen Umsatz von mehr als 935 Milliarden US-Dollar generieren.

Auswählen eines mobilen Entwicklungspfads


Anwendungen sind nicht nur bei modernen Internetnutzern beliebt, sondern auch für ihre Besitzer sehr profitabel. Wenn Sie diese beiden Faktoren miteinander kombinieren, können wir daraus schließen, dass fast jede Geschäftsentwicklungsstrategie das Erstellen einer Anwendung umfassen kann. Das Dilemma besteht jedoch darin, den richtigen Weg zur Entwicklung mobiler Anwendungen zu wählen.

Einer der ersten Schritte zum digitalen Erfolg ist die Entscheidung für ein mobiles Betriebssystem - was übrigens vor zehn Jahren nicht so einfach war, als Android, iOS, Microsoft, RIM und Symbian durchaus praktikable Optionen waren.

Heute ist die Auswahl viel einfacher, da die einzigen Hauptakteure Android und iOS sind, die zusammen bildenrund 99% des Gesamtmarktanteils mobiler Betriebssysteme. Laut verschiedenen Statistiken gewinnt Android in Bezug auf die Anzahl der Benutzer, aber es gibt keinen Mangel an Unterstützern von iOS, deren Marktanteil 25,75% beträgt. Während der Google Play Store eine große Anzahl von Anwendungen (2,5 Millionen) bietet, enthält der Apple App Store mehr als 1,8 Millionen Anwendungen. Diese Tatsache allein reicht aus, um zu zeigen, dass keine der beiden Plattformen übersehen werden sollte.

Bild

Da die Wahl eines mobilen Betriebssystems von den persönlichen Vorlieben der Benutzer und nicht von der Leistung oder Verfügbarkeit abhängt, ist es ratsam, letztendlich eine mobile Anwendung für Android und iOS zu erstellen - und es gibt drei Möglichkeiten, dies zu tun.

Separate native Anwendungen für Android und iOS


Die native Lösung umfasst, wie der Name schon sagt, die Entwicklung einer Anwendung in der für die Plattform nativen Programmiersprache: Java oder Kotlin für Android, Objective-C oder Swift für iOS. Die Entwicklung nativer Anwendungen hat ihre Vor- und Nachteile, da sie sich stark auf das Betriebssystem konzentriert. Einerseits bietet die native Lösung Zugriff auf alle Funktionen dieses Betriebssystems, ermöglicht Ihnen die unbegrenzte Anpassung der Benutzeroberfläche und verhindert Leistungsprobleme. Wenn Sie jedoch beide Benutzertypen erreichen möchten, müssen Sie zwei separate Anwendungen erstellen, die mehr Zeit, Geld und Aufwand erfordern.

Progressive Webanwendung


Eine progressive Webanwendung ist eine Technologie in der Webentwicklung, die Websites Funktionen für mobile Anwendungen hinzufügt und die Website in eine Anwendung umwandelt. Die Ausgabe ist eine hybride Site und Anwendung für mobile Geräte. Wie jede andere Option sind progressive Webanwendungen jedoch nicht perfekt, da sie mehr Batteriestrom verbrauchen und nicht auf alle Funktionen dieses Geräts zugreifen können, z. B. Kalender, Kamera, Kontakte usw. Darüber hinaus entfällt die Möglichkeit, sich über Facebook, Instagram, Vkontakte oder andere Anwendungen in eine Webanwendung einzuloggen. Trotz der Tatsache, dass für die Webanwendung keine Installation aus dem Google Play Store oder dem Apple App Store erforderlich ist, dienen letztere als äußerst praktische Bibliotheken für Benutzer.

Eine plattformübergreifende Anwendung für zwei Systeme


Plattformübergreifend ist die Fähigkeit von Software (in unserem Fall mobilen Anwendungen), auf mehreren Plattformen zu arbeiten.

Durch die plattformübergreifende mobile Entwicklung können Sie zwei Betriebssysteme, iOS und Android, mit einem Code abdecken. Es ist nicht erforderlich, Code in der nativen Programmiersprache zu schreiben, bietet jedoch dank der Visualisierungsoberfläche mit eigenen Steuerelementen ein nahezu natives Erlebnis.

Derzeit verwenden viele Unternehmen plattformübergreifende Lösungen. Jemand erwägt ernsthaft, in naher Zukunft zu ihnen zu wechseln. Dies sind nicht nur die Anbieter der Lösungen selbst, wie Facebook mit seinem React Native, auf dem Facebook- und Instagram-Anwendungen ausgeführt werden, sondern auch andere wichtige Marktteilnehmer, die Produkte beispielsweise auf Flutter anbieten - Alibaba, Philips Hue, Hamilton, Tencent , Grab, Groupon und andere.

Es gibt viele Artikel, die alle Vorteile plattformübergreifender Anwendungen detailliert analysieren. Die Vor- und Nachteile sollten jedoch auf einer Plattform berücksichtigt werden, die jede Chance hat, 2020 die beliebteste unter Entwicklern zu werden - Flutter.

Flattern


Flutter ist ein Open-Source-Google SDK zum Erstellen plattformübergreifender mobiler Anwendungen, das Benutzern sowohl Android als auch iOS ein wirklich natives Design und Erlebnis bietet. Diese Entwicklungsplattform zeigte bereits zu Beginn ein beeindruckendes Wachstum im Vergleich zu React Native. Flutter wurde auf der Google I / O 2017 angekündigt und 2018 eingeführt und ist nach wie vor ein Neuling auf dem Markt für plattformübergreifende Anwendungsplattformen. Mit mehr als 87.700 Sternen auf GitHub, was höher ist als das Ergebnis von React Native, und der überwiegenden Mehrheit der Entwickler, die es als eines der drei bevorzugten Frameworks in Stack Overflows jährlichem Developer Survey 2019-Review bezeichnen, ist Flutter zweifellos eine Kraft, mit der man rechnen muss.

Bild

Betrachten Sie die Vor- und Nachteile von Flutter als Plattform für die Produktentwicklung:

Profis


  • time-to-market;
  • ;
  • ;
  • ;
  • .


  • , ;
  • – Dart, , , . Flutter, ( , ).

Die Programmiersprache Dart, die Google als "clientoptimiert" bezeichnet, wurde 2011 eingeführt. Dies ist eine adaptive objektorientierte Sprache, die aus zwei Gründen als relativ einfach zu erlernen angesehen wird: Erstens werden C / C ++ und Java verwendet. Zweitens finden Sie auf der offiziellen Dart-Website eine umfangreiche und recht einfache Dokumentation. Es ist auch erwähnenswert, dass Dart ein großes Repository mit Flutter-kompatiblen Softwarepaketen enthält, um Ihre Anwendung noch komplexer zu gestalten.

Plattformübergreifende Anwendungen auf Flutter werden ähnlich wie native Anwendungen in den allgemein akzeptierten IDEs - Android Studio und Xcode - entwickelt. Darüber hinaus steht Entwicklern Hot-Reload-Code zur Verfügung, der den Start der Anwendung während der Entwicklung beschleunigt. Darüber hinaus unterscheidet sich der Veröffentlichungsprozess nicht von den nativen - die gesammelten Distributionen werden signiert und in Anwendungsspeicher heruntergeladen.

Geschäftsvorteile


In der Wirtschaft spielt die TTM-Metrik (Time-to-Market) häufig die entscheidende Rolle. Vorwärts zu sein und neue Funktionen auf beiden Plattformen gleichzeitig schneller als die Konkurrenz in Ihr Produkt einzuführen - jedes führende Unternehmen denkt von Anfang an darüber nach. Plattformübergreifende Frameworks ermöglichen dies und erhalten als offensichtlicher Bonus in jeder Phase eine Reduzierung der Entwicklungskosten. Nach unseren Berechnungen können Sie durch die Entwicklung von Flutter die Gesamtkosten der Produktentwicklung um 25 bis 30% senken.

Prognose, Aussichten für die nächsten 5 Jahre


Jeder, der schnell mit seinem Produkt gleichzeitig auf beiden mobilen Entwicklungsplattformen auf den Markt kommen möchte, entwickelt bereits aktiv plattformübergreifende Lösungen. Im Jahr 2020 wird sich der Trend nicht ändern, und immer mehr Unternehmen werden plattformübergreifende mobile Anwendungen auf Flutter einsetzen.

Google entwickelt ein neues Betriebssystem Fuchsia, auch für mobile Geräte. Flutter ist in diesem Betriebssystem als UI-Toolkit deklariert. In naher Zukunft wird Fuchsia möglicherweise das Android-Betriebssystem ersetzen. Trotz der Tatsache, dass Fuchsia weiterhin die Möglichkeit bietet, native Android-Anwendungen auszuführen, sollte dieser Trend bei der Planung der Entwicklung und dem Markteintritt mit seinen mobilen Anwendungen berücksichtigt werden.

Somit wirkt sich eine Codebasis zweifellos auf alle Aspekte der Anwendungsentwicklung bis auf die Anzahl der erforderlichen Entwickler aus, sodass das Unternehmen Geld sparen kann, das normalerweise für das Reparieren und Aktualisieren von zwei separaten Codebasen aufgewendet wird. Der eingesparte wesentliche Teil des ursprünglichen Budgets des Projekts kann für die weitere Verbesserung der Anwendung gemäß den Bewertungen der Benutzer verwendet werden. Infolgedessen erreicht die plattformübergreifende Entwicklung mobiler Anwendungen auf ausgewogene Weise ihre Ziele sowohl anhand des Preiskriteriums als auch anhand der Kriterien Zeit, Komplexität und Benutzererfahrung.

All Articles