ENTWICKLUNG EINER MOBILEN APP

ENTWICKLUNG EINER MOBILEN APP: WO SOLL ICH ANFANGEN?

          Wenn es heute keine Fragen zur Erstellung von Websites für Geschäftsvertreter verschiedener Ebenen gibt, bleibt die Entwicklung einer mobilen App für Android, iOS und andere Plattformen immer noch eine verständliche Perspektive für diejenigen, die ihre Produkte und Dienstleistungen verkaufen möchten.

Stellen Sie sich vor, Sie haben einen Haufen Eisen im Hof, Sie sprechen einen Zauber und plötzlich wird dieses Eisen zum Leben erweckt und verwandelt sich in einen Roboter. Früher wurden solche Dinge Magie genannt, jetzt heißt es Programmierung. Entwickler, die Code verwenden, in der Tat nur Text, zwingen ein sehr dummes Bewusstsein — Computer oder Smartphone – dazu, unglaubliche Dinge zu tun. Raten Sie unseren Musikgeschmack, verfolgen Sie Ihren Puls, steuern Sie Ihr Smart Home und so weiter. Deshalb erfahren wir heute, was hinter dieser Magie steckt.

Umgebung für die Entwicklung einer mobilen App
Die Entwicklung einer mobilen App ist also ungefähr so, als würde man einen Hocker machen. Dazu benötigen Sie die notwendigen Werkzeuge und einen Raum, in dem Sie Ihren Stuhl sägen werden. Im Programmierraum wird ein solcher Raum mit Werkzeugen als Entwicklungsumgebung oder wissenschaftliche IDE bezeichnet.

IDE – Integrated development environment — eine integrierte (oder einheitliche) Entwicklungsumgebung

Für Android ist eine solche Entwicklungsumgebung Android Studio und für iOS Xcode.

Die Entwicklungsumgebung ist einfach ein Programm, das alles enthält, was Sie zum Erstellen einer Anwendung benötigen. Hier gibt es:

  • wo schreibe ich den Code?,
  • wo man Fehler fängt,
  • eingebauter Emulator, in dem Sie die Anwendung sofort testen können,
  • und sogar ein visueller Interface-Editor, in dem Sie alle möglichen Elemente der Benutzeroberfläche wie in PowerPoint verschieben können.

Okay, weitermachen.

In welchen Sprachen werden Apps geschrieben?

Anwendungen für verschiedene Plattformen werden in verschiedenen Programmiersprachen geschrieben. Der Großteil des Codes unter iOS wird in Objective-C und Swift geschrieben, und unter Android in Java und Kotlin.

Swift und Kotlin sind modernere und freundlichere Programmiersprachen. Diese Sprachen sind sich sehr ähnlich, bis zu dem Punkt, dass einige Codeabschnitte zu 70% oder sogar mehr übereinstimmen können. Daher ist die Entwicklung einer mobilen App für einen guten Programmierer nicht immer ein Kopfschmerz.

Interessanterweise wurde Swift nur für die Entwicklung unter iOS erstellt. Aber auf Kotlin können Sie unter verschiedenen Plattformen schreiben, sowohl unter Windows als auch unter Linux und sogar unter iOS. Ich denke, das ist einer der Gründe für die Freude der Entwickler, als Kotlin zu Android Studio hinzugefügt wurde. Es war bei Google I/O im Jahr 2017.

Erfolgreiche Entwicklung einer mobilen App.

Um die Frage zu beantworten, wie man eine eigene App für das Telefon erstellt, muss man sich gut vorbereiten. Sie können gleichzeitig auf Android und iOS schreiben, aber es ist besser, sich zuerst auf die erste Option zu konzentrieren. Er ist gegenüber dem Entwickler weniger anspruchsvoll.

Google hat eine Fülle von Informationen zu dem betreffenden Thema. Mit seiner Hilfe können Sie jede Sprache und Programmierumgebung beherrschen. Ohne sie wird die Veröffentlichung Ihres eigenen mobilen Dienstprogramms nicht funktionieren.

Als nächstes werden die Mindestanforderungen an den Entwickler sowie Tipps und Tricks zur schnellen Entwicklung eines Programms für Smartphones, Tablets und Smartwatches vorgestellt.

Unter welcher Plattform ist es schwieriger, iOS oder Android zu programmieren?

Nach gemeinsamen Diskussionen kamen wir zu dem Schluss, dass die Komplexität in der Arbeit ungefähr gleich ist. Beide Systeme bewegen sich jetzt sowohl in den Funktionen als auch in den Entwicklungsansätzen (kotlin ~ swift, ComposeUI ~ SwiftUI) schnell in eine gemeinsame Richtung. Die Unterschiede bleiben natürlich bestehen, aber sie sind nicht so signifikant, um im Zusammenhang mit „schwieriger-einfacher“ über sie zu sprechen. Eine andere Frage ist, dass die Anmeldeschwelle für iOS immer noch höher ist als für Android: Sie benötigen einen Mac und ein iPhone, um loszulegen.

Entwicklung einer mobilen App ohne Code

Bis heute gibt es tatsächlich Technologien, mit denen Sie eine Art von Anwendungen erstellen können, ohne buchstäblich eine Zeile Code zu schreiben. Um zu verstehen, wie es funktioniert, können Sie zum vorherigen Thema zurückkehren. Es ist bequemer, die Entwicklung nicht binär (nativ oder plattformübergreifend) zu betrachten, sondern als kontinuierlichen Prozess der Suche nach dem optimalen Weg, um Geschäftsprobleme zu lösen. Von der nativen zur vollständig plattformübergreifenden Entwicklung bewegen wir uns auch auf dem Weg der Abstraktion von bestimmten Plattformen und Betriebssystemen zu Technologien, die es ermöglichen, sich nur auf geschäftliche Aufgaben zu konzentrieren. Das Zerokodieren ist ein Beispiel für eine extreme Position im Entwicklungsspektrum. Hier finden Sie eine große Anzahl von Einschränkungen: Aussehen, potenziell realisierbare Funktionen, Leistung, vollständige Abhängigkeit von einem bestimmten Unternehmen. Auf der anderen Seite erhalten Sie die Möglichkeit, die erste Version der App buchstäblich über das Wochenende zu starten. Und in einigen Fällen kann dies äußerst wichtig sein. Dennoch ist die Entwicklung einer mobilen App ohne Beteiligung von Programmierern möglich.

Wie relevant ist die Entwicklung einer mobilen App?

Smartphones und andere mobile Geräte sind nicht nur Teil unseres täglichen Lebens geworden, sie sind ein vollwertiges Angebot für uns. Mit Mobiltelefonen kommunizieren wir nicht nur miteinander, sondern wir bestellen auch Waren aus Geschäften, kaufen Tickets, buchen Unterkünfte, rufen Taxis an, verwenden Telefone als Navigatoren, Foto- und Videokameras, Lesegeräte, Online-Banken und einfach als eine Möglichkeit, Spaß zu haben und die Zeit zu vertreiben. Laut einer Statistik, die im Datareportal veröffentlicht wurde, verwenden 67% der Erwachsenen weltweit täglich Smartphones, das sind fast 5,19 Milliarden Menschen (bei einer Gesamtbevölkerung von 7,75 Milliarden). Der Trend zum Übergang von einfachen mobilen Geräten zu multifunktionalen Smartphones nimmt jedes Jahr zu. Die Entwicklung einer mobilen App in dieser Perspektive ist für andere Bereiche der Softwareentwicklung von großer Bedeutung.

Es wird angenommen, dass eine Person in naher Zukunft direkt mit ihrem Smartphone verbunden sein wird, dh alle Funktionen und alle Informationen von unseren Gadgets werden direkt in unser Gehirn fließen. In diesem Zusammenhang wird die Entwicklung einer mobilen App einen besonderen Platz in der IT-Branche einnehmen. Während viele Erfinder daran arbeiten, verbringen die Menschen Zeit mit scheinbar nutzlosen Anwendungen wie einem niederfrequenten Mückenschutz, dem Reifegrad einer Wassermelone, einem Luftblasenbildsimulator oder einer App, die den Smartphone-Bildschirm visuell in ein Glas Bier verwandelt.

Kurz gesagt, die Relevanz für die Entwicklung mobiler Anwendungen wächst nicht jedes Jahr, sondern jeden Monat. Jeden Tag werden Hunderte neuer mobiler Apps auf Online-Plattformen veröffentlicht. Es scheint schwierig zu sein, etwas Neues zu erfinden, aber gute Entwicklungen in Zusammenarbeit mit gutem Marketing können dem Schöpfer viel Geld bringen, eine klare Bestätigung dafür ist das kürzlich gefeierte TikTok, dessen Bewertungen weiterhin blitzschnell wachsen.

Probleme bei der Entwicklung einer mobilen App
  • Android-Fragmentierung. Die Android-Fragmentierung tritt aufgrund von Unterschieden zwischen Android-Versionen und Versionen von Apps auf, die auf dem Gerät ausgeführt werden. Dies ist ein großes Problem für jeden Entwickler, der dieses Betriebssystem verwendet. Ich konnte nie verstehen, warum die meisten SDK-Tools (insbesondere im Zusammenhang mit der Benutzeroberfläche) keine Anwendungsabhängigkeit waren, sondern in das Gerät integriert waren. Aus diesem Grund mussten die Supportbibliotheken verwendet und die Anwendung für jede API-Zielebene (Application Programming Interface) debuggt werden. Die API—Ebene ist eine Ganzzahl, die die von Android angebotene API-Version eindeutig identifiziert. Außerdem habe ich auf Samsung- und Huawei-Geräten ständig einen Codefehler festgestellt, der auf dem Emulator und den Testgeräten gut funktionierte. Dies ist eines der Hauptprobleme bei der Entwicklung einer mobileт App.
  • Android SDK. Es ist eine schwierige Aufgabe, eine zuverlässige Android-App zu erstellen. Und das Problem liegt größtenteils im Android SDK. Theoretisch kann eine Android-App unbegrenzt im Hintergrund laufen, ohne Systemressourcen zu verbrauchen, und auf Wunsch des Benutzers in den vorherigen Zustand zurückkehren. Dies ist zumindest möglich, wenn es dem Entwickler gelungen ist, die Statusverwaltung und den Lebenszyklus erfolgreich zu implementieren, was mit dem Android SDK schwierig genug ist. Dies ist ein weiteres Problem bei der Entwicklung einer mobilen App. Ich wollte immer, dass Google diese Probleme anerkennt und versucht, sie gemeinsam mit der Community zu lösen.
  • Entwurfsmuster und Annotationsmuster für Abstraktionen. Die Entwickler haben schnell erkannt, dass es unmöglich ist, eine echte App basierend auf den Abstraktionen zu erstellen, die das Android SDK bietet. Als Lösung wurden neue Entwurfsmuster eingeführt, die mit jeder Woche wahrscheinlich größer werden — MVC, MVP, MVVM, MVI und viele andere. Aufgrund der Unfähigkeit, normale Konstruktoraufrufe zum Verwalten von Abhängigkeiten zu verwenden, musste mein Team Anmerkungen über die gesamte Codebasis verteilen. All dies sollte für die Entwicklung einer mobilen App nicht notwendig sein. Die Sprachen Java und (noch mehr) Kotlin sind ausdrucksstark genug, um all diese Elemente einfach und transparent zu modellieren. Android bevorzugt jedoch riesige XML-Definitionen und eine reflexive Instanziierung. Aus diesem Grund sind Entwickler gezwungen, den Code durch Hinzufügen von Anmerkungen und umstrittenen Entwurfsmustern zu verwirren.
  • Design-System Material Design. Material Design ist ein Designsystem von Google, mit dem Sie einen einheitlichen visuellen Stil für die Schnittstellen aller Produkte und Dienste erstellen können. Wenn ich die Kommentare zu Hacker News und Reddit über Material Design lese, denke ich manchmal, dass diese Bibliothek niemandem außer mir gefällt. Ich bin nicht nur mit ihrem Aussehen zufrieden, sondern auch mit der erarbeiteten Dokumentation. Material Design erschien 2014 und ersetzte den Android Holo-Stil. Es schien, als hätte das Unternehmen die Neuheit in Eile veröffentlicht und dadurch die Entwicklung einer mobilen App beeinflusst. In den ersten Jahren fehlten in der offiziellen Material Design Support Library die einfachsten Widgets, obwohl sie in Apps von Google selbst erschienen. Entwickler mussten ihre eigenen Widgets erstellen oder eine alternative Implementierung von (fragwürdiger Qualität) von GitHub verwenden. Die Material Design-Support-Bibliothek mit ihren vielen visuellen Inkonsistenzen und Fehlern hat mich wahrscheinlich zum ersten Mal dazu gebracht, über den Zustand des Android-Ökosystems nachzudenken.
Schluss

Der Prozess der Entwicklung einer mobilen App scheint nur auf den ersten Blick kompliziert zu sein. Ja, Sie müssen viele wichtige Entscheidungen treffen und ständig zu früheren Phasen zurückkehren. Geben Sie nicht der Versuchung nach, einen oder mehrere zu verpassen – am Ende finden Sie eine wohlverdiente Belohnung in Form von Geld und dankbaren Benutzern. Die Entwicklung einer mobilen App von Profis spart Ihnen sowohl Geld als auch Zeit und Nerven

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert