Qual è il miglior framework cross platform Xamarin o QT?
Non esiste il migliore...
... ed è una domanda personale (religiosa) nella maggior parte dei casi...
Sono stato prevalentemente programmatore C++ dal 1994 al 2000 e ho fatto alcune librerie di calcolo per la teoria dei grafici che è stata usata nella mia libreria per la modellazione, simulazione e analisi di Petri Net. Impostare il modello di qualche sistema di produzione modellato come Petri Net o Automata in semplice c++ era una "corsa in salita" per la maggior parte degli utenti. Gli utenti vogliono una UI - una bella UI e con C++ in quel momento questo era quasi impossibile. Ho provato nel 1998 (e ho implementato l'UI) in WxWidgets, ma i miglioramenti e la manutenzione erano ingombranti. A quel punto era chiaro che un processo di standardizzazione troppo lungo aveva danneggiato un linguaggio molto potente.
Così, io [ancora] conosco un po' di C++...
La mia vita mi ha portato a .net nel 2001 e da allora sono prevalentemente uno sviluppatore C# con viaggi occasionali nel mondo java e C++ per il calcolo dei numeri. I read java and objective-c/swift on daily basis, but I do not write code.
C# (F#) are today truly xplat languages - horizontally and vertically.
Horizontally:
- IoT - Windows 10 Core, mono and dotnet core on RPi and others
- mobile - Windows Phone, Windows Mobile 10 (UWP), Xamarin.Android, Xamarin.iOS, Tizen
- desktop - Windows (WPF, Windows Forms), Linux (GTK#), Mac (Xamarin.mac)
Vertically:
- IoT
- Mobile
- desktop
- Server - ASP.net
So, with C# I can share a lot of code horizontally and vertically and sharing means less resources (time, manpower) and this means cost saving and this means it is valued by companies. So you will see a lot of C# and java in corps, but not as much Qt. Se il C++ è usato per il calcolo dei numeri, allora sarà avvolto da C# PInvoke e JNI di Java.
Con il C# è possibile avvicinarsi alle prestazioni del C++ con ottimizzazioni avanzate, ma questo aggiunge sforzo alla normale codifica.
Quindi, se siete sviluppatori C# molto probabilmente sceglierete Xamarin e se siete sviluppatori C++ la scelta sarà Qt.