O co chodzi z tym całym api, rest, restful itp?

0

Witam. Jestem początkujący i zastanawiam się nad kwestią jak powinno tworzyć się aplikacje web. Do tej pory pisałem z wykorzystaniem mvc czyli model do pracy z bazą, widok do prezentowania danych użytkownikowi i kontroler zwracający widok po wejściu w określony url. Czy tak powinno pisać się apki czy są lepsze rozwiązania? Co z tym całym api, rest, restful? Zamiast widoku kontroler ma zwrócić dane w formacie json i co dalej zrobić z tymi danymi? Jeśli chciałbym wypisać listę użytkowników to w mvc robię proste kroki:

  • modelem pobieram dane z tabeli
  • przekazuję pobrane dane do widoku
  • kontrolerem zwracam widok który prezentuje dane
    A drugie podejście że zwracam dane w postaci json i jak je przekazać do widoku? Muszę mieć wtedy 2 kontrolery że kontroler1 zwraca json a kontroler2 zwraca widok który prezentuje dane z kontroler1? Nie ogarniam tego podejścia i gdyby ktoś skierował mnie na dobrą drogę i podpowiedział skąd nauczyć się tej techniki :)
0

Bardzo pokrotce i umownie;

W tym podejściu serwer zwraca dane np. w formacie json, a interfejs użytkownika budowany jest z HTML CSS i JavaScript, który konsumuje to co serwer zwraca. Dwie osobne aplikacje najczęściej. Nie ma żadnego mvc tutaj w tym rozumieniu co ty przedstawiasz.

Da się też inaczej ale to powyżej jest najpopularniejsze rozwiązanie.

2
AoP napisał(a):

A drugie podejście że zwracam dane w postaci json i jak je przekazać do widoku?

Zajmuje się tym druga aplikacja, która pobiera dane z tej pierwszej (czyli API) i wyświetla odpowiednio.
Obie te aplikacje mogą być wykonane zgodnie z MVC, wzorzec ten niczego nie wyklucza ani nie ogranicza tutaj.
To, czy API jest restowe i restful, to odrębne zagadnienia. W senie można mieć po prostu API, a można je zrobić w zgodzie z REST. (Co i tak nie ma sensu, bo zaraz przyjdzie kolejny ekspert od RESTa, i stwierdzi, że to wcale nie jest REST, bo nie spełnia jakiegoś tam warunku, o którym mówiono na jakiejś hipsterskiej konferencji 12 minut temu.)

1 użytkowników online, w tym zalogowanych: 0, gości: 1