Wie man ein Full-Stack-Entwickler wird: Teil 3

Veröffentlicht: 2017-12-02

Dieser Beitrag ist der dritte und letzte in der Reihe darüber, wie man ein Full-Stack-Entwickler wird. Dieser Artikel befasst sich speziell mit der Entwicklung mobiler Apps. Lesen Sie hier mehr zur Frontend- und Backend-Entwicklung.
Als Steve Jobs 2007 das iPhone vorstellte, leitete es die größte Revolution ein, die die Welt seit der Druckerpresse erlebt hatte. Smartphones haben es geschafft, in fast alle Länder der Welt vorzudringen. Selbst die Ärmsten scheinen so sehr einen zu besitzen, dass ein Leben ohne sie undenkbar erscheint.

Motivation

Es gibt bestimmte Apps, die nur sinnvoll sind, wenn sie auf einem Telefon ausgeführt werden. Nehmen Sie zum Beispiel Uber. Uber muss Ihren genauen Standort über GPS kennen. Eine Uber-App für den Desktop würde nicht viel Sinn machen.
Ein weiteres Problem ist, dass die Mehrheit Ihres Publikums Ihre App über ein Telefon öffnet, selbst wenn es sich um eines handelt, das für Browser entwickelt wurde. In solchen Fällen müssen Sie unbedingt sicherstellen, dass die Erfahrung nahtlos ist und nicht zu viele Daten verbraucht werden. Schließlich gibt es feine Unterschiede zwischen der Interaktion mit Mausklicks und der Berührung. Ihre App muss sicherstellen, dass sie sich in beiden Szenarien gut verhält.
Unter Berücksichtigung all dieser Überlegungen ist es sinnvoll, den Browser zu verlassen und mobile Apps zu erstellen. Dadurch wird sichergestellt, dass Sie die Funktionalitäten, die ein typisches Smartphone zu bieten hat, maximal nutzen und gleichzeitig das Benutzererlebnis zum Vergnügen machen. Im Folgenden finden Sie die Schritte zur Beschleunigung der Entwicklung mobiler Apps. Für den ersten Teil, um ein Full-Stack-Entwickler für Frontend- und Backend-Entwicklung zu werden.

So werden Sie ein Full-Stack-Websoftware-Entwickler UpGrad-Blog Mobile Entwicklung

Interview mit Ankit Tomar, Mitbegründer und CTO, Bizongo

Inhaltsverzeichnis

Schritt 12: Wählen Sie eine Plattform

Der erste Schritt wäre die Auswahl einer Plattform, auf der Sie Ihre Anwendung erstellen möchten. Wenn Sie nicht Teil eines relativ großen Teams sind, ist es äußerst unwahrscheinlich, dass Sie Apps auf allen wichtigen Plattformen von Grund auf neu erstellen. Das wahrscheinlichere Szenario ist, dass Sie auf Ihrer bevorzugten Plattform programmieren und diese dann einfach auf die anderen übertragen.
Die wichtigsten Smartphone-Plattformen sind heute iOS, Android und Windows. Sie verwenden drastisch unterschiedliche Sprachen und IDEs. Beispielsweise verwendet iOS Swift und XCode, Android verwendet Java und das Android Studio und Microsoft arbeitet mit C# und Visual Studio.
Der Markt wird heute von Android und iOS dominiert, also kommt es wirklich auf diese beiden an. Einige Dinge, die Sie möglicherweise berücksichtigen müssen, bevor Sie eine Auswahl treffen, sind die Zielgruppenfreigabe für Ihre App. Ich glaube, es ist wirtschaftlich sinnvoll, iOS-Apps zu entwickeln, wenn Sie sich in einem Land der Ersten Welt befinden, da Apple-Geräte dort sehr beliebt sind. Im Gegensatz dazu wäre in einem Land wie Indien Android eine naheliegendere Wahl, da der Marktanteil für iPhones aufgrund seines exorbitanten Preises äußerst gering ist.
Wenn Sie vorhaben, mit Ihrer App Geld zu verdienen, denken Sie daran, dass iOS-Benutzer ihre Brieftaschen eher für In-App-Käufe öffnen als ihre Android-Pendants. Dies kann daran liegen, dass iOS-Benutzer im Vergleich zu Drittweltmärkten, auf denen Android dominiert, in der Regel über ein höheres verfügbares Einkommen verfügen.
Für die iOS-Entwicklung benötigen Sie eine Mac-Entwicklungsmaschine. Außerdem kosten Apple App Store-Lizenzen im Einzelhandel 99 US-Dollar pro Jahr, verglichen mit der einmaligen Gebühr von 25 US-Dollar bei Google Play. Mit anderen Worten, die iOS-Entwicklung ist erheblich teurer.
In diesem Beitrag werde ich behandeln, wie die Entwicklung mobiler Apps heute durchgeführt wird: native Android-Apps, native iOS-Apps und hybride mobile Apps.

Schritt 13: Java und XML

Java ist die beliebteste Sprache für die Android-Entwicklung (Google hat kürzlich auch Unterstützung für die Programmiersprache Kotlin eingeführt).
Die Gründer von Android hielten Java für eine geeignete Wahl und haben sich seit seiner Einführung daran gehalten. Und wenn ihre Flugbahn etwas ist, war es nichts weniger als eine erstaunliche Entscheidung.
So werden Sie ein Full-Stack-Websoftware-Entwickler UpGrad-Blog Mobile Entwicklung
Die beste Ressource, um Java zu lernen, wäre Head First Java. Wenn Sie dieses Buch lesen, erhalten Sie eine gründliche Einführung in die Sprache sowie in die Prinzipien der objektorientierten Programmierung.
Was XML angeht, glaube ich nicht, dass Sie ein konzentriertes Tutorial zu diesem Thema brauchen. Sie haben bereits ausgiebig mit einer Teilmenge von XML (HTML) gearbeitet und werden es ziemlich schnell verstehen, selbst wenn Sie direkt in die Android-Entwicklung einsteigen würden. Das kann ich für Java nicht sagen. Stellen Sie sicher, dass Sie die Sprache gut verstehen, bevor Sie sich an Android wagen.

Schritt 14: Android

Sie haben jetzt das technische Know-how, um Android-Apps zu erstellen. Es ist an der Zeit, tief in dieses revolutionäre Betriebssystem einzutauchen. Seien Sie jedoch vorsichtig, dass sich bestimmte Android-Praktiken von dem unterscheiden, was Sie normalerweise im Internet sehen. Die Ressourcen, die ich unten vorgeschlagen habe, stellen sicher, dass Ihr Lernen nicht durch diese Unterschiede behindert wird.
Android Programming- The Big Nerd Ranch Guide 2nd Edition ist ein guter Ausgangspunkt, wenn Sie bereits Java kennen. Stellen Sie sicher, dass Sie die zweite Ausgabe abholen, da diese Android Studio verwendet, das jetzt der Industriestandard ist. Die Praxis, Apps in Eclipse zu erstellen, ist weitgehend veraltet.
Interview mit Farooq Adam, Mitbegründer von Fynd

Schritt 15: iOS

Wenn Sie eher ein Apple-Fan sind und / oder entschieden haben, dass iOS-Apps für Ihre Geschäfts- / Karriereziele sinnvoller sind. Der erste Schritt wäre die Anschaffung eines Mac. XCode funktioniert nur auf Mac und um im App Store zu veröffentlichen, benötigen Sie einen Mac. Entschuldigung, VMware.
Die Ressource, die ich für iOS vorschlagen werde, ist genau die gleiche wie die für Android. Nerd Ranch hat eine eigene Veröffentlichung – iOS Programming: The Big Nerd Ranch Guide das sich mit Swift und XCode befasst, also ist das ein guter Anfang.

So werden Sie ein Full-Stack-Websoftware-Entwickler UpGrad-Blog Mobile Entwicklung

Schritt 16: Hybride mobile Apps

Wenn Sie ein Einzelentwickler sind oder in einem kleinen Team arbeiten, haben Sie wahrscheinlich nicht die Zeit oder die Ressourcen, um Android- und iOS-Apps separat zu erstellen und zu warten. Um den Entwicklern die Mühe zu nehmen, für mehrere Plattformen zu bauen, wurde das Konzept der hybriden mobilen Apps eingeführt.
Das Konzept ist extrem einfach und revolutionär. Wenn Sie sich mit Javascript auskennen, wissen Sie bereits, wie man Web-Apps erstellt. Wenn Sie also eine App in JS haben, muss ein Framework vorhanden sein, das Ihre Anwendung automatisch in Android, iOS und Windows portiert. Unglaublich aber wahr.
Die meisten hybriden Frameworks erreichen dies mit Cordova oder React Native. Sie können sich Cordova als Brücke zwischen Browsern und der nativen Hardware des Smartphones vorstellen. Es stellt eine Verbindung zwischen den beiden ausschließlich mithilfe von JS her und hilft bei der Erstellung der Build-Skripte in den Muttersprachen der jeweiligen Plattform.
Cordova-basierte Frameworks werden jedoch schnell von Facebooks Kraftpaket React Native überschattet. Die Stärke von React Native liegt in der Tatsache, dass Cordova zwar WebViews erstellt, Sie mit React Native jedoch native Apps erstellen können, die Sie entweder mit Java (für Android) oder Swift (für iOS) erstellen würden. Mit anderen Worten, Cordova ist eine Website, die als mobile App getarnt ist, aber mit React Native können Sie das Original erstellen .
Meiner Meinung nach können Sie Cordova auslassen und stattdessen React Native lernen. Es ist eine sehr gute Investition in die Karriere. Das Softwareentwicklungsprogramm von UpGrad & IIIT-B ist ein großartiger Ort, um Ihre Reise mit dieser revolutionären Bibliothek zu beginnen, die bereits von Unternehmen wie Facebook, Netflix und AirBnB zum Entwerfen ihrer Apps verwendet wurde.
Interview mit Farooq Adam, Mitbegründer von Fynd

Fazit

Mit dem Abschluss der Hybrid-Apps kommen wir zum Abschluss dieser Serie. Zusammenfassend sind dies die Dinge, die wir behandelt haben:

  1. Grundlagen der Informatik.
  2. Datenstrukturen und Algorithmen
  3. UI/UX
  4. HTML, CSS, JS
  5. Front-End-Frameworks
  6. Serverseitiges Scripting und Datenbanken
  7. Full-Stack-Frameworks
  8. Android und iOS
  9. Hybride mobile Apps

Ich hoffe, Sie haben es genauso genossen, diese Serie zu lesen, wie ich es genossen habe, sie zu schreiben, und, was noch wichtiger ist, Sie haben zumindest einige Teile nützlich gefunden. Wie immer sind Ihre Kommentare und Vorschläge willkommen!

Werden Sie Full-Stack-Entwickler

UpGrad und IIIT-Bangalores PG-Diplom in Softwareentwicklung
Erfahren Sie mehr