Cześć. Przychodzę do was z pytaniem, tak właściwie wiem, że nie istnieje jedna, dobra odpowiedź na to pytanie, jednak liczę na jakieś wskazówki, opinie od osób, którym temat budowania back-endu jest trochę bliższy.
Jestem front-end developerem. Na co dzień pracuję z react i react native. Znam podstawy node i staram się rozwijać swoją back-endową wiedzę. Planuje stworzyć pewien projekt aplikacji. Na potrzeby tego posta mogę ją przyrównać do portalu ogłoszeniowego - autoryzacja, role użytkowników, posty dla konkretnych ról, upload zdjęć na serwer itp. Aplikacja docelowo ma zostać zrealizowana w formie portalu internetowego - react, oraz aplikacji android i ios - react native.
Do rzeczy :D
Nie za bardzo wiem jakie podejście zastosować dla back-endu względem planowanej aplikacji. Czy zastosować Server Side Rendering, czy stworzyć klasyczne API (jeden kontener z niezależnie działającą aplikacją back-end), z której dane będą czerpać kontenery front-endowe (react i react native).
Kilka dodatkowych pytań:
1. Czy według Ciebie node będzie dobrym środowiskiem do stworzenia dosyć ciężkiego względem upload'u, download'u danych back-endu?
2. Jakiego języka użyłbyś do stworzenia back-endu dla takiej aplikacji: JS, JAVA, C# :D
3. Z jakiej bazy danych byś skorzystał? Relacyjna / nierelacyjna (mongodb/mysql - inne).
4. Czego użyłbyś do stworzenia autoryzacji (biblioteka i inne rozwiązania), biorąc pod uwagę, że istotny jest aspekt uwierzytelniania przez firmy trzecie (facebook, google).
Liczę na ciekawe odpowiedzi :D
Pytania zdecydowanie bardziej indywidualne, niż zbiorowe. Fajnie jakbyś mógł również dla poszczególnych podpunktów wymienić kilka plusów i minusów, albo powiedzieć dlaczego zdecydowałbyś się na takie rozwiązanie.
Pozdrawiam i z góry dziękuje za poświęcony czas na przeczytanie tego posta oraz udzielenie odpowiedzi.
Radosław Szczepański