Wiele szczegółów technicznych, omówionych w niniejszych materiałach, można łatwo znaleźć w internecie za pomocą popularnych wyszukiwarek. Swobodę posługiwania się nimi można natomiast uzyskać jedynie poprzez praktykę programistyczną. Niemniej, zaprojektowanie przyzwoitej aplikacji internetowej jest łatwiejsze, jeśli dysponuje się pewnym podstawowym zbiorem informacji – w szczególności:

  • W kontekście projektowania aplikacji internetowych, back end to część systemu informatycznego, na którą typowo składa się serwer, aplikacja serwerowa i baza danych, a która służy do generowania odpowiedzi na żądania przychodzące od tzw. klienta.
  • Protokół HTTP określa tzw. metody (np. GET lub POST) i kody odpowiedzi (np. 200 – "OK" lub 418 – "jestem czajnikiem"), które wykorzystywane są w komunikacji między klientem i serwerem w postaci "żądanie-odpowiedź".
  • Po nadejściu żądania, aplikacja serwerowa powinna zidentyfikować trasę (na którą składają się metoda HTTP i ścieżka), a następnie wygenerować i wysłać odpowiedź, opatrzoną odpowiednim kodem.
  • Node.js jest środowiskiem wykonawczym, które można wykorzystać do tworzenia aplikacji serwerowych w języku JavaScript. Jest to jedno z najpopularniejszych narzędzi, które do tego służą. Oprócz języka JavaScript, przy projektowaniu back endu można używać wielu innych, takich jak Python, Java, C#, PHP i Ruby. Dla każdego z tych języków można znaleźć narzędzia wspomagające tworzenie aplikacji serwerowych.
  • Node Package Manager (w skrócie npm) to system służący do importowania i eksportowania pakietów oprogramowania, przeznaczonych dla środowiska Node.js.
  • W środowisku Node.js programy asynchroniczne można realizować albo za pomocą tzw. funkcji callback, albo za pomocą tzw. promises. Obecnie ten drugi sposób jest powszechnie uznawany za lepszy, choć oba są w użyciu. Zasady działania promises są dość złożone i niekoniecznie zgodne z intuicją, która może początkowo towarzyszyć ich użyciu, ale warto włożyć dodatkowy wysiłek w ich dogłębne zrozumienie, bo umożliwia ono sprawne tworzenie programów asynchronicznych o czytelnym kodzie.
  • Asynchroniczność w środowisku Node.js realizowana jest jednowątkowo, za pomocą pętli zdarzeń.
  • Express stanowi dodatkowe narzędzie, które może istotnie ułatwić tworzenie aplikacji serwerowych za pomocą Node.js.
  • Bazy danych można z grubsza podzielić na relacyjne i inne. W bazach relacyjnych dane przechowywane są w tabelach. Bazy te obsługiwane są przeważnie za pomocą języka SQL. Do najpopularniejszych obecnie systemów obsługi relacyjnych baz danych (a równocześnie – najpopularniejszych w ogóle) należą Oracle, MySQL, Microsoft SQL Server i PostreSQL.
  • Do najczęściej stosowanych systemów obsługi nierelacyjnych baz danych należy MongoDB. Jest to system obsługi baz dokumentowych, czyli takich, w których dane przechowywane są w formie tzw. dokumentów.
Ostatnia modyfikacja: poniedziałek, 9 września 2024, 12:53