-
serwer
-
aplikacja desktopowa
-
aplikacja na smartfony
Aplikacje będą się logowały na serwer i pobierały/zapisywały tam dane - standard.
Problem jednak jest z wyborem technologii.
Z serwerem nie ma problemu, bo tutaj będę korzystał z dobrze mi znanego rusta.
Jednak nie wiem co wybrać do napisania aplikacji na komórkę i desktopa, gdyż jestem głównie backendowcem + znam trochę qt, gtk, slint, ale z grubsza chcę stworzyć jedną aplikację na obie platformy, więc te typy odpadają bo albo nie mają wsparcia dla androida, albo jest ono na bardzo wczesnym poziomie.
Zastanawiam się nad Tauri + Svelte, bo wydaje się ciekawą opcją, a na pewno nie chce mi się tego pisać w jakimkolwiek stopniu w javie, a też czystego javascriptu unikam jak ognia.
#programowanie
@qarmin jeśli znasz C#, to może MAUI+Blazor?
Qt nie ma wystarczającego wsparcia ma Androida?
@psalek Z tego co teraz patrzę, to jednak niby ma, ale po doświadczeniach z Qt na desktopie nie odważyłbym się użyć go do mobilnych zastosowań(choć nieco qml kusi - ale tylko nieco)
@qarmin z ciekawości: co Cię tak zniechęciło?
@psalek C++ głównie.
Chociaż aplikacja qt którą w pracy ciągle rozwijam, to miszmasz kilku rozwiązań
-
C++ - bazowe komponenty, łączenie z curl, bazą danych etc., tworzenie niektórych modeli do qml
-
QML - graficzne elementy
-
Javascript/Typescript - resty, różne nieco bardziej skomplikowane operacje, logika w plikach QML
-
Python - generacja walidacji dla danych - tylko wymagane przy budowaniu
Pisząc aplikację czysto C++, reszta nie byłaby mi potrzebna, ale nie jestem fanem zarówno C++, jak i tworzenia kodu z poziomu kompilowanego języka.
Jeśli jednak bym korzystał z QML, to najłatwiej byłoby użyć javascript by obejść jego ograniczenia, potem przejście na typescript celem minimalizacji błędów a na końcu walidacja danych wejściowych/wyjściowych funkcji - czyli pewnie skończyłbym tak jak w pracy z 4 językami do projektu.
@qarmin - pisz w czym Ci wygodnie ale unikaj egzotyki.
Svelte od ponad roku nie jest egzotyczny i można pisać w nim apki mobilne i Desktopowe na kilka sposobów (prócz wspomnianego przez Ciebie Tauri):
-
SvelteKit + Cordova
Ja osobiście bardzo lubię Rusta i SvelteKit i sam bym starał się w nich pisać bo byłoby to najbardziej efektywne.
React native? Flutter? Obie technologie pozwalają pisać na praktycznie wszystkie popularne platformy
@Flaaj - Flutter od wersji 3.0 wspiera tworzenie aplikacji na platformy mobilne i desktop - niemniej wraz z językiem Dart jest to nowa rzecz do nauczenia.
Ja osobiście już wolałbym użyć silnika do gier, który wspiera eksport na różne platformy jak Godot czy GDevelop - bo je znam i byłbym w stanie napisać w nich aplikację od ręki (użyłbym gotowych komponentów interfejsu, by nie wymyślać wszystkiego od nowa).
Oczywiście jak ktoś ma ochotę uczyć się nowych rzeczy to nic mu nie stanie na przeszkodzie - ale czasem człowiek chce mieć po prostu coś działającego
@qarmin ale apki na androida w tfu javie piszą tylko polskie januszexy. Od tego jest kotlin
@qarmin pisz backend w kotlin, a części wspólne (model itp.) wrzucaj przez kotlin multiplatform na moblilkę i desktop. Zobacz sobie, do czego się to to kompiluje i na tej podstawie wybierz technologię mobile/desktop. Zawsze trochę mniej roboty jak już masz jakiś kawałek i go re-używasz, nie?
@qarmin - no i na czym w końcu stanęło kolego?
Ja jeszcze coś takiego znalazłem: https://www.skeleton.dev/docs/tauri - wiele funkcjonalnych komponentów do UI pod Svelte i ma integrację z Tauri.
@koszotorobur Raczej stanęło na tauri.
Dużo decyzji(wstępnej póki co) pomogło bardzo proste tworzenie plików apk, nie muszę szukać, grzebać ani konfigurować żadnych plików gradle ani jakichkolwiek innych javowych/androidowych rzeczy, po prostu kompiluję a plik apk się wypluwa i wrzuca od razu go na emulator(chociaż miałem trochę problemów by to poprawnie skonfigurować)
W pracy szef korzysta ze svelte i nawet mówi że to niezłe, chociaż ma czasami trudności i też nie próbował nigdy żadnego innego frameworku, więc porównania też nie ma, czy coś nie działa o niebo lepiej
@qarmin - ja zakochałem się w Svelte (a właściwie w SvelteKit) i robię w nim narzędzia wewnętrzne.
Problemy się czasem pojawiają ale ja osobiście nie utknąłem na więcej niż jeden dzień (gdy na przykład przy Angularze rwałem włosy z głowy a przy Reakcie mi często przez kilka dni nie chciało działać).
Zawsze troszkę miałem nie po drodze w WebDevem (chociaż przez ostatnie 10 lat próbowałem chyba wszystkiego do WebDevu co wyszło) i SvelteKit jakoś mi tak naturalnie wszedł i bez oporu (pomimo tego, że kiedy zaczynałem 2 lata temu z nim to był niestabilny i przechodził wiele zmian).
Do tego Tauri 2.0 wyjdzie niedługo z bety i działa ze SvelteKit więc do pisania apek multiplatformowych jak znalazł
Zaloguj się aby komentować