Forum: PC-Programmierung Welches Framework für plattformunabhängige Appentwicklung


von Bastler (Gast)


Lesenswert?

Hallo,

welche Sprache, welches Framework und Tool betrachtet ihr als das 
sinnvollste, wenn ich in die Appentwicklung einsteigen möchte?

Welches hat am meisten Support in der Community und welches hat die 
besten Zukunftsaussichten nicht bald wieder eingestampft zu werden?

Ich wollte mit Xamarin anfangen, weiß aber nicht ob das die beste Lösung 
ist?

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Bastler schrieb:
> Ich wollte mit Xamarin anfangen, weiß aber nicht ob das die beste Lösung
> ist?

Doch, wenn multiplattform wirklich erforderlich ist, nimm Xamarin, 
besser wirds leider nicht.

Mal sehen wie lange es dauert bis die React Native und Flutter Fanboys 
kommen und dir ihre Wahrheit verkünden...

: Bearbeitet durch User
von Chris K. (kathe)


Lesenswert?

In spätestens 2-4 Jahren gibts wieder was neues was besser sein soll.

von Dirk (Gast)


Lesenswert?

C++ mit Qt/QML

von W.S. (Gast)


Lesenswert?

Bastler schrieb:
> welche Sprache, welches Framework und Tool betrachtet ihr als das
> sinnvollste, wenn ich in die Appentwicklung einsteigen möchte?

Genau DAS, was dir im Gebrauch am ehesten liegen würde. Aber das würde 
voraussetzen, daß du die verschiedenen Dinge, die es gibt, mal selber 
ausprobierst und dir dann dein eigenes Urteil bildest und dich nicht auf 
die Meinungen anderer Leute veläßt.

Solche Fragen tauchen hier immer wieder auf, der Klassiker ist: "Ich 
möchte in Mikrocontroller einsteigen, welche IDE soll ich 
herunterladen?"

W.S.

von Programmierer (Gast)


Lesenswert?

Web, mit Javascript & Co. Das ist am Weitesten verbreitet.

von Walter T. (nicolas)


Lesenswert?

W.S. schrieb:
> Aber das würde
> voraussetzen, daß du die verschiedenen Dinge, die es gibt, mal selber
> ausprobierst und dir dann dein eigenes Urteil bildest und dich nicht auf
> die Meinungen anderer Leute veläßt.

Das klingt nach einer sinnvollen Strategie. Einfach mal alles 
ausprobieren, und dann weiß man in 10 bis 20 Jahren, womit man am besten 
angefangen hätte.

Versuchen von den Fehlern anderer zu lernen ist schummeln!

von Pandur S. (jetztnicht)


Lesenswert?

Delphi ist sehr stark in Multiplatform. Windows, Linux, Apple, Andoid 
wird alles unterstuetzt.

von Mi (Gast)


Lesenswert?

Html :)

von Rolf M. (rmagnus)


Lesenswert?

Chris K. schrieb:
> In spätestens 2-4 Jahren gibts wieder was neues was besser sein soll.

Und das heißt? Man soll 2-4 Jahre warten, bevor man anfängt, die App zu 
entwickeln?

von Noch ein Kommentar (Gast)


Lesenswert?

Nein, das heißt: du musst alle 2-4 Jahre etwas neues lernen. Oder halt 
mit deinem heutigen Wissen einen todlangweiligen Job in der 
Altlastenpflege machen.

von Cartman (Gast)


Lesenswert?

Cobol und ein Z/370-Emulator wurden noch nicht genannt.

von Mi (Gast)


Lesenswert?

Mi schrieb:
> Html :)

Ich erweiter mal noch:
https://wiki.selfhtml.org/wiki/App

gähn

von Noch ein Kommentar (Gast)


Lesenswert?

> Cobol und ein Z/370-Emulator wurden noch nicht genannt.

Da hätten wir eigentlich auch gleich bei bleiben können.

Im Vergleich zu Kubernetes waren die 360er Partitions doch eine feine 
übersichtliche Technologie.

Zwischendurch brachen uns die Ideen aus dem Smalltalk richtig gute 
Entwicklungssysteme. Heutzutage ist alles wieder vergessen. Sogar Cobol 
auf CICS war ein Fortschritt gegenüber Angular.

Na ja, im Vergleich zu den heutigen Browser-Oberflächen sehen die 
3270-Terminals nicht wirklich überzeugend aus. Zumindest ein 
Fortschritt.

von Rolf M. (rmagnus)


Lesenswert?

Noch ein Kommentar schrieb:
> Nein, das heißt: du musst alle 2-4 Jahre etwas neues lernen.

Heißt es das? Was passiert mit dem, was man bisher genutzt hat? Ist es 
dann plötzlich weg oder unbenutzbar geworden? Muss man dann alle Apps 
wegwerfen und komplett neu schreiben?
Es mag ja sein, dass viele das so tun, weil sie meinen, jedem 
vermeintlichen Trend hinterherhecheln zu müssen, aber in Wirklichkeit 
ist das meistens nicht erforderlich.

von Cartman (Gast)


Lesenswert?

> 3270-Terminals nicht wirklich überzeugend aus

Ach was. Gestochen charfff und flimmerfrei!
Alles andere verwirrt nur!

*Und:*

Trommelwirbel

Es gab eine garantierte Anwortzeit.
Die Sanduhr war arbeitslos!

von (prx) A. K. (prx)


Lesenswert?

Cartman schrieb:
>> 3270-Terminals nicht wirklich überzeugend aus
>
> Ach was. Gestochen charfff und flimmerfrei!

Zumal verglichen mit DEC VT100 Terminals, deren Darstellung nach einer 
Weile jedwede Gradlinigkeit vermissen liess. ;-)

: Bearbeitet durch User
von Bri (bri)


Lesenswert?

Plattformunabhängig und mit GUI (XAML):

C# + Avalonia UI

und als IDE Visual Studio Code

von AnfängerMeister (Gast)


Lesenswert?

Ich würde gerne die bereits erwähnte Wahrheit verkünden: Web App mit 
Vue.js und Quasar Framework ...

Ok mal im ernst, die Existenzberechtigung vieler Apps ist fragwürdig. Ob 
nun nativ oder webbasiert. Warum müssen typische Anwendungen die auf dem 
PC bestens als Webseite funktionieren auf dem Handy immer zu einer App 
mutieren? Die meisten Apps nutzen keine speziellen Hardware Funktionen. 
Und auf einige Sensoren kann man auch über den Browser bereits 
zugreifen.

Dienen die Apps nur dazu damit man nur mit einmal tippen die Anwendung 
erreicht? Das wäre aber mit komfortablen Webseiten Verlinkungen auch 
möglich. Und wenn die Webseite eine mobile freundliche Oberfläche 
anbietet ist doch alles ok?

Was mich nur etwas stört ist dass Webseiten oft langsam funktionieren. 
Aber ich habe auch ein altes Smartphone. Auf aktuellen Geräten dürfte 
das doch nicht so kritisch sein? Und wenn doch, was läuft denn da bitte 
bei der Implementierung der Browser falsch. Kommt die Hardwareleistung 
der mobilen Geräte einfach nicht mit oder wie?
Denn auf dem PC funktionieren Webseiten wunderbar flüssig.

von MANU M. (manu_m)


Lesenswert?

Hi Bastler,

schau dir mal React Native an.
Machen wir seid Jahren und ich muss sagen ich programmiere nichts lieber 
als in diesem Stiel.

Rießige Community, UP TO DATE, JavaScript (man bekommts daher auch sehr 
einfach in den Browser)!

Einzig: Wir haben damit Spiele Realisiert, das geht zwar aber wenn man 
massig Animationen braucht wirds eng und ich würd in diesem Fall davon 
abraten.
Alles andere bekommst du damit extrem schnell umgesetzt!

(Wir sind ein Team von Entwicklern die zuvor einiges anderes probiert 
haben [und eigentlich aus dem Native Bereich kamen])


https://reactnative.dev/

https://github.com/enaqx/awesome-react

: Bearbeitet durch User
von W.S. (Gast)


Lesenswert?

Rolf M. schrieb:
> Was passiert mit dem, was man bisher genutzt hat? Ist es
> dann plötzlich weg oder unbenutzbar geworden? Muss man dann alle Apps
> wegwerfen und komplett neu schreiben?

Nun ja, als allererstes werden einem die Fanboys der neuesten Mode 
entgegenschreien: "Du bist ja altmodisch!"

Später werden dann Stück für Stück all die alten Apps unbenutzbar 
werden, sobald die Betriebssysteme aufhören, sich um zeitliche 
Kompatibilität zu kümmern. Siehe das Ende für alle früheren 
VB-Anwendungen.

W.S.

von Johannes S. (Gast)


Lesenswert?

W.S. schrieb:
> Siehe das Ende für alle früheren
> VB-Anwendungen.

wo steht das denn? VB6 Anwendungen gibt es noch reichlich und die laufen 
auf Windows 10, sehr wahrscheinlich auch noch unter Windows 11.
Das API bietet nicht mehr soviel wie andere modernere Frameworks, dafür 
gibts auch keine häufigen Updatezyklen und eine schlanke Runtime.

Ich würde sogar sagen VB6 ist der Käfer unter den Frameworks, läuft und 
läuft und läuft.

von Peyer (Gast)


Lesenswert?

AnfängerMeister schrieb:
> Warum müssen typische Anwendungen die auf dem
> PC bestens als Webseite funktionieren auf dem Handy immer zu einer App
> mutieren?
> [...]
> Was mich nur etwas stört ist dass Webseiten oft langsam funktionieren.

Ich denke, das ist schon die Antwort auf deine Frage. Dazu kommt noch, 
dass Anbieter einen zur App bewegen möchten (früher warens die 
Browsertoolbars). Zur App Bewegen funktioniert dadurch, dass die 
entsprechende Webseite für Mobilgeräte absichtlich eingeschränkt wird, 
sei es im Funktionsumfang oder der Bedienbarkeit.

Technisch gesehen bräuchten Apps weniger Datenvolumen, da die 
Beschreibung der GUI nicht übertragen werden muss, sondern nur die 
Nutzdaten. Allerdings scheint mir bewegt sich die App-Entwicklung 
dorthin, dass die App nur noch ein verkappter, proprietärer Browser ist, 
wo die Darstellung auch erst runtergeladen werden muss.

von Noch ein Kommentar (Gast)


Lesenswert?

>> Nein, das heißt: du musst alle 2-4 Jahre etwas neues lernen.

>Heißt es das? Was passiert mit dem, was man bisher genutzt hat?

Sicherlich kannst du auch als Programmierer 40 Jahre lang das selbe 
machen. Hattest du z.B. vor 30 Jahren VBA für Excel gelernt, kannst du 
damit immer noch deine Brötchen verdienen.

Aber du bekommst halt gehirnamputierte Bürokraten als Kunden und geistig 
behinderte Vorgesetzte. Musst Unfug eintippen, bei dem dir klar ist - so 
kann das nichts werden. Da gibt einen Haufen Ärger. Diese unfähigen 
Knalltüten werden dem Chef erzählen, du hättest es vermasselt.

Wenn du dagegen immer wieder das lernst, was zur Zeit gerade Hype ist, 
kannst du als Programmierer selbst aussuchen, wen du als Kunden und 
Vorgesetzte haben willst.

von Rolf M. (rmagnus)


Lesenswert?

Noch ein Kommentar schrieb:
>>> Nein, das heißt: du musst alle 2-4 Jahre etwas neues lernen.
>
>>Heißt es das? Was passiert mit dem, was man bisher genutzt hat?
>
> Sicherlich kannst du auch als Programmierer 40 Jahre lang das selbe
> machen.

Zwischen 2 Jahren und 40 Jahren liegt dann allerdings doch eine ziemlich 
große Spanne. Ich würde zumindest vermeiden, eine Neuentwicklung mit 
etwas zu starten, das in 2 Jahren wahrscheinlich obsolet sein wird.
Zur Erinnerung: Vor 40 Jahren hat Stroustrup wahrscheinlich gerade die 
ersten Ideen gehabt, vielleicht eine eigene Programmiersprache zu 
erfinden. C gab es nur in  der K&R-Variante und war noch 8 Jahre von 
einer ersten Standardisierung entfernt. Bis zur Erfindung von Python 
sollte noch ein Jahrzehnt vergehen. Ada war gerade ganz frisch 
verfügbar.

von Noch ein Kommentar (Gast)


Lesenswert?

> das in 2 Jahren wahrscheinlich obsolet sein wird

Problem ist halt, die etablierten Frameworks werden langsam aber sicher 
obsolet. Das zieht sich über Jahrzehnte. LibreOffice z.B. lässt sich 
nicht auf neue Framesworks umstellen. Collabora verpackt das alte System 
in Container und benutzt den Browser nur zum Grafik anzeigen. Vollkommen 
klar, diese Stückeilei ist auf dem absteigenden Ast. Keine Chance gegen 
moderne Single-Page-Webapps.

Nur weiß niemand, welches der heutigen Frameworks sich durchsetzen wird. 
Was wir vor 10 Jahren benutzten, hat sich als Sackgasse heraus gestellt. 
Irgendwie hat man das Gefühl, die Qt war besser als alle HTML Frameworks 
zusammen, aber niemand will zu diesen monolithischen standalone 
Programmen mit den drögen Widgets zurück kehren.

Dann kommen noch ein paar Punkte, bei denen wir nicht wissen, wie sie 
sich entwickeln. Die Ransomware wächst uns über den Kopf. Werden wir auf 
des Recht verzichten, selbst zu entscheiden, welche Software wir 
installieren, damit wir die Ransomware wieder los werden? Anderer Punkt, 
die KI wird immer besser. Werden wir unsere Programme in Zukunft 
überhaupt noch ein GUI brauchen?

Wenn du dich für weit verbreitete Technologie entscheidest, wird es mit 
100% Wahrscheinlichkeit langsam aber sicher obsolet. Wenn du dich für 
eines der aktuellen Frameworks entscheidest, ist es mit ~95% 
Wahrscheinlichkeit in 2 Jahren obsolet.

von Rolf M. (rmagnus)


Lesenswert?

Noch ein Kommentar schrieb:
> Irgendwie hat man das Gefühl, die Qt war besser als alle HTML Frameworks
> zusammen, aber niemand will zu diesen monolithischen standalone
> Programmen mit den drögen Widgets zurück kehren.

Qt ist in der Hinsicht deutlich erweitert worden. Zusätzlich zu den 
Widgets gibt's auch noch QtQuick/QML. Das ist mehr auf Touch-Bedienung 
ausgelegt, und man kann sehr leicht schick animierte GUIs umsetzen. Und 
das gibt's eigentlich für so ziemlich alle Plattformen, teils auch im 
Embedded-Bereich. Das findet man dann auch auf dem Kombiintrument im 
Auto wieder. Schließlich lässt sich nicht alles webbasiert machen.

> Dann kommen noch ein paar Punkte, bei denen wir nicht wissen, wie sie
> sich entwickeln. Die Ransomware wächst uns über den Kopf. Werden wir auf
> des Recht verzichten, selbst zu entscheiden, welche Software wir
> installieren, damit wir die Ransomware wieder los werden? Anderer Punkt,
> die KI wird immer besser. Werden wir unsere Programme in Zukunft
> überhaupt noch ein GUI brauchen?

Das hängt sicherlich stark von der Anwendung ab. Aber ja, irgendwelche 
Alexas und Co können sicher auch einiges ohne GUI erledigen.

von Noch ein Kommentar (Gast)


Lesenswert?

> Qt ist in der Hinsicht deutlich erweitert worden.

Zumindest hätte das einen gewissen Humor.

1000 neue Konzepte in 20 Jahren Webframeworks funktionieren alle nicht. 
Zum Schluss setzt sich QML durch. Auf Desktop, Smartphone und 
WebAssembly. Dann brauchen wir nur noch konsistente Qt Klassen für beide 
Seiten der REST Schnittstelle.

Oben wurde bereits ja erwähnt: In spätestens 2-4 Jahren gibts wieder was 
neues was besser sein soll.

von Εrnst B. (ernst)


Lesenswert?

Noch ein Kommentar schrieb:
> Qt war besser als alle HTML Frameworks
> zusammen

Falls dir der Qt-Ansatz gefällt, du aber näher am "Web" sein willst:

https://qooxdoo.org/
https://qooxdoo.org/qxl.widgetbrowser/
https://qooxdoo.org/qxl.demobrowser/#

von Berufsberatung (Gast)


Lesenswert?

https://dojotoolkit.org/
gibts auch noch wenn es wie eine Anwendung aussehen soll.

Da gibts auch so ein Qt nach Webasm Dingens ist aber mehr ne Techdemo, 
manche setzen das aber angeblich wirklich ein um ihre ehemals native 
Qtanwendung ins Web zu verfrachten.

von Rolf M. (rmagnus)


Lesenswert?

Berufsberatung schrieb:
> Da gibts auch so ein Qt nach Webasm Dingens

Es gibt Qt für Webassembly. Kann man sich selbst compilieren oder von 
der Qt-Website fertig runterladen.

> ist aber mehr ne Techdemo,

Es ist eine von Qt offiziell unterstützte Zielplattform. Für Qt6 ist es 
anscheinend noch im "tech preview"-Status.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.