Zum Inhalt springen

Welches mobile App - crossplatform-/Progressive Web Apps-Framework für die Zukunft?


Empfohlene Beiträge

Geschrieben

Nabend,

mich interessiert schon seit einiger Zeit die mobile Entwicklung, speziell der Crossplattform Bereich. Da dort auch in irgendeiner Form ein ganz schöner Konkurrenzkampf stattfindet, würde mich mal eure Meinung interessieren. 

Mich würde mal Interessieren, welche Technologie man unbedingt sich mal angeschaut haben muss, da sie einfach extrem gut ist und potenziell auch gut für die Zukunft aufgebaut ist. Denn ich würde mich allgemein mal gerne in die Crossplattform-App-Entwicklung einarbeiten, allerdings habe ich keine Ahnung mit welchem Framework. Dabei wäre es echt cool, wenn ihr mir da vielleicht ein paar Berichte geben könntet. 

Ein paar Beispiele von den verschiedenen Frameworks, die existieren:

Progressive Web-Apps Framework:

  • Microsoft Blazor
  • Native Script
  • AngularJS
  • React 
  • Ionic

Crosplatform Native:

  • Xamarin
  • Uno
  • React Native
  • Kotlin Native
  • Flutter
Geschrieben

Ziemliches Glaskugelthema. Meines Erachtens gibt es nicht DIE Antwort, welche Sprache du dir unbedingt angeschaut haben solltest. Es hängt am Ende wohl einfach vom TechStack ab, der überall anders sein kann - oder von persönlichen Präferenzen. So würde ich Angular oft den Vorzug von React geben, weil ich den 100%-TypeScript-Ansatz besser finde. Firma ist nach einigen AngularJS- (1.x) und Angular-Projekten (2.x+) erst vor ca. ein, zwei Jahren auf React umgestiegen. Weshalb? Vermutlich auch, weil viele Entwickler Typisierung nichts abgewinnen können, da es oft mehr Aufwand bedeutet und TypeScript entsprechend verabscheuen. So zumindest die Aussage einiger meiner Kollegen. Faulheit at its best.

Insofern, such dir einfach eine der bekannteren Sachen aus und fange an. Ist am einfachsten.

Geschrieben (bearbeitet)
vor 1 Stunde schrieb Visar:

vor ca. ein, zwei Jahren auf React umgestiegen. Weshalb? Vermutlich auch, weil viele Entwickler Typisierung nichts abgewinnen können, da es oft mehr Aufwand bedeutet und TypeScript entsprechend verabscheuen.

Das ist meiner Meinung nach nicht der richtige Weg, wenn es um Qualität geht. Ich habe bereits sehr sehr viel sehr sehr schlechten React Code gesehen, Katastrophe! Aber das heißt nicht, dass man React nicht gut machen kann, nur muss man das wollen und können, aber dann kann es halt nicht jeder der mal kurz ein Tutorial gemacht hat oder seit nem halben Jahr JavaScript macht. Ich glaube dann sogar fast, dass der Aufwand bei React gegenüber Angular steigen kann.

vor 1 Stunde schrieb Visar:

Faulheit at its best.

Genau so. Aber wenn man an einer Stelle spart, rächt sich das an einer anderen ;)

vor 13 Stunden schrieb TopSecurity:

Dabei wäre es echt cool, wenn ihr mir da vielleicht ein paar Berichte geben könntet. 

Mit Angular, Vue und React macht man eigentlich nichts falsch, was besser ist und was man lieber mag ist eine Glaubens- oder Geschmacksfrage, über die es sich nicht zu diskutieren lohnt. Zumindest kenne ich eben so viele Firmen die Angular machen wie auch React. Große Firmen setzen denke ich (bin mir aber nicht sicher) lieber auf Angular, zumindest was ich so aus meiner Gegend weiß.

Um mobilen Bereich kann ich sagen, dass React Native genutzt wird, ebenso wie Ionic und Xamarin (letzteres gefühlt etwas seltener), aber auch native Entwicklung (Kotlin ist hier stark im kommen, bei iOS ist der neueste Trend natürlich Swift UI). Native Script habe ich bisher nirgends produktiv mitbekommen. Der neueste Trend ist aber definitiv in Richtung Flutter, zumindest viele Firmen schauen sich das an und ich kenne bereits einige produktive Projekte. Eine Firma geht sogar komplett von Ionic zu Flutter über und ist begeistert, engagiert sich auch stark in der Community.

Blazor sehe ich etwas kritisch. Natürlich ist es auch interessant und hat sicher seine Stärken, aber bisher ist hier noch kein Trend zu sehen, dass alle darauf umsteigen.

Meine Projekte mache ich bisher mit Angular bzw. Ionic + Angular. Flutter schreibe ich das größte Potential zu, da sie einfach sehr viele Probleme der nativen App-Entwicklung lösen (die man kennt, wenn man nativ Apps entwickelt). Jedoch mache ich neben Apps auch viel Web, wodurch für mich hier ein Framework natürlich toll ist und ich nicht so viel Zeit habe, mich ordentlich in Flutter einzuarbeiten.

Ein weiterer Trend ist dann noch Serverless (im mobilen Bereich vor allem Firebase).

 

Bearbeitet von pr0gg3r
typos
Geschrieben (bearbeitet)

Hm - was nützt es, wenn eine Technologie "extrem gut" für sich alleine gesehen ist (z.B. progressive WebApps), aber bestimmte Hersteller (z.B. Apple) sie schlecht unterstützen ?

Vielleicht muss man diese Frage auch aus unterschiedlichen Sichtweisen (z.B. die des Betriebes, der bestimmte Ziele erreichen möchte) beleuchten - auch in Abhängigkeit vorhandener Ressourcen (z.B. Personen, die Wissen mitbringen), vorhandener Technik (die möglicherweise portiert werden müsste, bei grundlegenden Plattformwechseln) und auch dem Zeit- und Kostenfaktor.

Bei Apple soll der nächste Trend mobile und desktop Anwendungen vereinen. Die bisherige Umsetzung dazu sieht allerdings noch recht ernüchternd aus. Sofern dass aber dann (hoffentlich) doch gelingt und auch vom Markt angenommen würde, bedeutet dass ja im Umkehrschluss, dass andere Technik dadurch wieder aus dem Raster fallen würde. Das wiederum hängt natürlich auch von den Anforderungen der Kunden ab.

Als ich meinen 3D Drucker letztes Jahr kaufte, wurde diese Anwendung (für MacOS) mit React gestrickt und hat nicht wirklich das Look- and Feeling der sonst von Apple gewohnten Usability eingestellt. Auch war die Anwendung instabil und musste häufig gefixt werden. Nicht, dass also React daran die Schuld tragen würde, sondern es zeigt, wie wichtig das Thema "Kompetenzen" sein kann. Der Hersteller hat hier wohl (aus Kostensicht) gemeint, alle Plattformen mit wenig Aufwand pflegen zu können und sich den nativen iOS und MacOS Entwickler eingespart. Parallel dazu wurde eine JS Anwendung gebastelt. Die Kunden sollten also zwei Anwendungen nutzen, weil jede Anwendung für sich eben nur zu 50 % funktionsfähig war. Aus Kundensicht keine gute Lösung.

Generell finde ich React toll für solche Anforderungen. Aber das Know-How sollte dann auch vorhanden sein. Ähnliches bei Xamarin (Cross Plattform Development Tool zu Visual Studio). Der Erfolg steht und fällt immer auch mit dem vorhandenen Know How. Letztendlich muss jemand, der in Cross Plattform Development gut sein will, trotzdem auch massives Know How in mehreren Welten vereinen und mitbringen.

Die aktuelle Sprache mit der man sich bei Apple beschäftigen sollte ist Swift. Da sie als moderne Sprache auch Elemente anderer modernen Sprachen adaptiert hat und entsprechend dauernd erweitert wird.

Bearbeitet von tkreutz2
Geschrieben
vor 3 Stunden schrieb pr0gg3r:

Ich habe bereits sehr sehr viel sehr sehr schlechten React Code gesehen, Katastrophe! Aber das heißt nicht, dass man React nicht gut machen kann

LOL, das sage ich über PHP auch immer :D

vor 5 Stunden schrieb Visar:

Insofern, such dir einfach eine der bekannteren Sachen aus und fange an. Ist am einfachsten.

Dem schließe ich mich an. Gerade hinter den JS Frameworks stehen so große Firmen mit krassen Entwicklerteams oder großen Open Source Communities, dass die in nächster Zeit nicht mehr verschwinden und sich auch nicht so schnell gegenseitig vom Markt verdrängen können.

Einfach austoben und alles mal ausprobieren.

Geschrieben

Ok. Alles klar, vielen Dank für eure Antworten, dass hat mir auf jeden Fall weitergeholfen :) 

Allerdings würde mich noch Interessieren, ob ihr eher auf die native App Entwicklung setzt mit Swift und Objective-C bzw. Java und Kotlin oder doch eher crossplatform Technologien. Das ging mir hier noch nicht richtig vor :D

Geschrieben

Man lernst das ganzen Zeug nicht "mal eben so". Angular/React Vue bringt wenig, wenn du nur mehr schlecht als Recht JavaScript bzw. TypeScript beherrscht. Blazor bedeutet C# lernen. Kotlin lernt man auch nicht mal nebenbei. Flutter ist noch nicht so verbreitet und heißt du solltest Dart lernen.

Deswegen: Nachsehen was der Markt in deiner Region verlangt und sich dessen anpassen. Nur weil FrameworkX plötzlich nicht mehr so hip ist, ersetzen Firmen es nicht gleich bei bestehenden Anwendungen. Jedenfalls nicht in Deutschland.

vor 3 Minuten schrieb TopSecurity:

Das ging mir hier noch nicht richtig vor :D

Wenn du iOS Entwickler werden willst => Swift/Objective C (wird in nahezu allen Stellen noch verlangt).

Du willst Java/Kotlin Entwickler werden => Android

Du willst alles mögliche mit JS machen? => würde ich React Native gehen.

Flutter nutzt Dart und wird von vielen als bestes Cross Plattform Framework angepriesen. Es ist aber noch nicht so verbreitet ... und reine Dart Stellen wirst du mal eben so auch nicht finden. Also nebenbei mal lernen und wenn es irgendwann gefragt ist kannst du schon mal was.

Ob man Angular, Vue oder React geht hängt vom Unternehmen. Vue ist das neueste von den dreien und erfreut sich derzeit großer Beliebtheit (Github Vue 166k, React 150k, Angular 62k Stars).

Alle der Frameworks sind äußerst beliebt und werden nicht verschwinden. Es schadet nicht in jedem von ihnen mal etwas gebastelt zu haben. Ob man Angular macht, kommt meist drauf an, ob man bereit ist sich mit TypeScript auseinander zu setzten.

 

Geschrieben (bearbeitet)
vor einer Stunde schrieb PVoss:

LOL, das sage ich über PHP auch immer :D

 

Nicht nur du ;) 

vor 29 Minuten schrieb TopSecurity:

Allerdings würde mich noch Interessieren, ob ihr eher auf die native App Entwicklung setzt mit Swift und Objective-C bzw. Java und Kotlin oder doch eher crossplatform Technologien. Das ging mir hier noch nicht richtig vor :D

Du stellst die richtigen Fragen. Unternehmen stellen sich auch die gleiche Fragen und haben mitunter nicht die perfekte Antwort. Fakt ist, dass die native Entwicklung für zwei (oder mehr) Plattformen zeitintensiv und damit teuer ist. Ich kenne aber durchaus auch Agenturen (und damit meine ich nicht unbedingt welche mit 10 MA, sondern auch die großen), die noch nativ entwickeln, aber genauso welche die mit Ionic oder React Native oder Flutter oder Xamarin cross-platform entwickeln.

Natürlich auch immer eine Frage, was man macht. Macht man eine AR-App, kommt man (noch nicht perfekt) um nativ herum. Macht man eine Apple Watch App, dann auch nicht.

Ich kann ja nur sagen was ich sehe und hier ist, dass sich zumindest die meisten Firmen mit Flutter auseinander setzen. Aber wenn man jetzt ne Webapp hat und auch eine App im Store haben möchte, ist Flutter wiederum die falsche Lösung (zumindest solange Flutter Web Alphastatus hat). Wenn man jetzt ne App noch für die Samsung TV, Amazon FireTV etc. pp. machen möchte, ist auch Web zu bevorzugen wobei ich auch ne sehr bekannte Multimedia App kenne, die nativ für die mobilen Plattformen entwickelt wird.

Wenn man jetzt nur ne App mit bisschen Formularen hat (was im Enterprise-Bereich eben auch oft vor kommt, also Apps die nur für Unternehmen sind und nicht in die Stores kommen) kann man das mit allem gut umsetzen. Aber wenn jetzt die UI mega krass im Look&Feel sein soll, ist hier eben Flutter und Swift UI so ziemlich das stärkste und effizienteste (geht auch alles mit JS und CSS, aber mitunter aufwändiger).

Deshalb: mach einfach das, was dir Spaß macht ;) Ich kann ja nur für mich sprechen und ich setze mich seit einigen Jahren mit dem Thema auseinander und für mich hat sich herauskristallisiert, dass eben Angular und Ionic am meisten Sinn ergibt, um Web und App abzudecken, wobei Ionic inzwischen auch mit React und Vue geht (bzw. einfach nur Web Components). Aber ich arbeite zum Beispiel auch wieder an einer nativen iOS App, da etwas verwendet, was nur nativ geht (bzw. nur schwer anders) oder eine App ist nativ, weil sie für eine AR-Brille gedacht ist...

PS: Es ist durchaus viel Bewegung im Markt und ich würde, wenn es keinen dringenden Grund gibt, nicht mehr nativ entwickeln. Als Mobile-Entwickler muss man mitunter immer auch ein bisschen nach links und rechts schauen und zumindest einigermaßen aktuell bleiben.

Bearbeitet von pr0gg3r

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...