• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Praca inżynierska dobór technologii

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
985 wizyt
pytanie zadane 13 października 2021 w Rozwój zawodowy, nauka, praca przez SzymonSmith Użytkownik (870 p.)
Cześć, w tym semestrze pisze inżynierke, jest już pomysł na aplikację ale brakuje doświadczenia w doborze stacku. Praca w grupie rozdzielona na 3 osoby, serwer, mobilna i webowa. Jedyne co wiemy to to że nie chcemy robić crossplatformowej, więc flutter itd odpadają.

Cześć serwerowa ma być napisana w java spring, ma to być api dla aplikacji mobilnej i weba. Pytanie jest takie jak to w ogóle zgrać. Nie znam się na springu więc nie wiem jak to działa, jak rozwiązać kwestię użytkowników, autoryzacji i autentykacji. Chciałem web zrobić w Laravelu, ale nie wiem jak wygląda integracja apki w laravelu z takim api.

 

Wszystkie opinie sugestie mile widziane.

Dzięki za pomoc
komentarz 13 października 2021 przez edutomek Dyskutant (8,380 p.)

Jedna uwaga od strony (byłego) promotora wielu prac inżynierskich.

Praca w grupie rozdzielona na 3 osoby, serwer, mobilna i webowa.
(...) Cześć serwerowa ma być napisana w java spring, ma to być api dla aplikacji mobilnej i weba. Pytanie jest takie jak to w ogóle zgrać.

Czy te prace mają być ze sobą wzajemnie powiązane? Tzn. jeden z Was robi to API (serwer), drugi robi klienta mobilnego, a trzeci klienta przeglądarkowego/webowego?

Jeśli tak, to kto wymyślił, że Wasze prace mają być powiązane (wzajemnie zależne)? Wy sami? Promotor?

To kiepski pomysł - wystarczy, że osoba od API cokolwiek zawali, a Wasze projekty będą zagrożone.

Kiedy dawałem studentom tematy prac dyplomowych, bardzo dbałem o to, aby takie sytuacje w ogóle nie mogły się zdarzyć. Średni (z wieeelu lat) wynik był taki, że przynajmniej jedna osoba (na 4-6 dyplomantów) decydowała się na obronę w drugim (albo nawet trzecim) terminie (z różnych powodów). Doświadczenia moich kolegów i koleżanek, również prowadzących prace dyplomowe, były podobne.

Wyobraź sobie teraz, że Wasz kolega od API postanowi się obronić w drugim terminie, a Wy będziecie chcieli w pierwszym... (Owszem, technicznie da się to zrobić, ale po co tak ryzykować i dodawać sobie pracy?)

Rozwiązaniem tego potencjalnego problemu byłoby rozdzielenie projektów. Ale to rodzi kolejne problemy (techniczne) dla Was - bo każdy miałby swój własny kawałek API + klienta. Więc albo doszlibyście do porozumienia odnośnie WSZYSTKICH technologii, albo wzięlibyście "rozwód". (Zresztą później integracja tego wszystkiego w jedną całość też mogłaby nie być taka prosta.)
 

komentarz 13 października 2021 przez SzymonSmith Użytkownik (870 p.)
Słuszna uwaga, promotor sam zasugerował rozbicie i te projekty mają byc zależne od siebie i powiązane. Faktycznie istnieje takie ryzyko i tego się nigdy nie przewidzi, ale współpracuje w grupie, w której już nie raz pracowaliśmy i nie było problemów z terminowością itd.

Co do technologii, jeżeli chodzi o laravel + external api nie ma w cale tak dużo materiałów, więc chyba prostszym i częściej wybieranym rozwiązaniem do takiego problemu jest np node + vue

1 odpowiedź

0 głosów
odpowiedź 13 października 2021 przez cava96 Gaduła (3,940 p.)
A myślałeś o .NET 5/6 ? Pozwala na budowę backendu, mobile, desktop. Możesz współdzielić kod za pomocą bibliotek .NET Standard. Koncepcja DDD też jest mega przydatna i bardzo popularna w .NET Core.

W .NET Core masz świetne Identity ułatwiające autentykacje z autoryzacją, do tego ORM w postaci EF Core. Wszystko piszesz w jednym języku C# (nawet jak się uprzesz to apkę po stronie klienta możesz w pełni napisać w C#, tj. Blazor)
komentarz 13 października 2021 przez SzymonSmith Użytkownik (870 p.)
O .necie nie myśleliśmy, ale ja mam już jakieś doświadczenie w laravelu, a osoba od mobilnych w kotlinie i chyba chcielibyśmy zostać przy tym i rozwijać to co umiemy. Ale dzięki za rade
komentarz 13 października 2021 przez cava96 Gaduła (3,940 p.)
API nieważne w czym napiszecie, bo to jest przenośny standard. Jeżeli chodzi o autoryzacje czy autentykacje, to po co Ci Laravel jeżeli piszesz serwer w Springu ? To backend ma odpowiedzialność za te procesy, a rozbicie tego na usługi w dwóch różnych technologiach może Was wprowadzić w kłopot.

Trzymajcie się Javy, Kotlina. Do weba użyjcie w takim razie coś ze stacku React/Angular/vueJS (clien-side)
komentarz 13 października 2021 przez SzymonSmith Użytkownik (870 p.)
Właśnie to mi się najbardziej gryzło, skoro api ma wszystkie funkcjonalnośvi backendowe to jak to jeszcze z laravelem podzielić. Faktycznie react/vue do wyboru

Podobne pytania

0 głosów
3 odpowiedzi 2,251 wizyt
pytanie zadane 19 maja 2019 w Rozwój zawodowy, nauka, praca przez Volumen Nowicjusz (140 p.)
0 głosów
2 odpowiedzi 593 wizyt
–1 głos
1 odpowiedź 536 wizyt
pytanie zadane 9 czerwca 2021 w Rozwój zawodowy, nauka, praca przez rysiek5555 Początkujący (300 p.)

93,188 zapytań

142,204 odpowiedzi

322,027 komentarzy

62,515 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 2581p. - dia-Chann
  2. 2537p. - Łukasz Piwowar
  3. 2528p. - Łukasz Eckert
  4. 2514p. - CC PL
  5. 2476p. - Tomasz Bielak
  6. 2445p. - Łukasz Siedlecki
  7. 2443p. - rucin93
  8. 2418p. - Michal Drewniak
  9. 2373p. - Marcin Putra
  10. 2367p. - Adrian Wieprzkowicz
  11. 2317p. - Mikbac
  12. 2156p. - Anonim 3619784
  13. 2016p. - Michał Telesz
  14. 1733p. - rafalszastok
  15. 1628p. - Dominik Łempicki (kapitan)
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...