"Języki programowania działające po stronie serwera" to takie, których kod jest uruchamiany w środowisku serwerowym (np. na maszynie wirtualnej, runtime lub w kontenerze) i to serwer generuje wynik: HTML, JSON, pliki, odpowiedzi API itp. Użytkownik w przeglądarce widzi rezultat, ale nie wykonuje tej logiki bezpośrednio po swojej stronie.
Odpowiedź "Java, C#, Python, Ruby, PHP" pasuje do klasycznego rozumienia backendu, bo są to popularne języki używane do budowy aplikacji serwerowych: usług sieciowych, systemów CMS, aplikacji biznesowych i warstwy dostępu do bazy danych. Każdy z nich ma typowe rozwiązania serwerowe (frameworki, serwery aplikacyjne) i jest powszechnie spotykany w projektach WWW.
Pozostałe propozycje zawierają elementy, które nie spełniają warunku "języka serwerowego" w tym ujęciu:
- "Java, C#, AJAX, Ruby, PHP" jest błędne, bo AJAX nie jest językiem programowania. To technika komunikacji asynchronicznej (najczęściej z użyciem JavaScript i żądań HTTP) wykorzystywana zwykle w przeglądarce do pobierania danych z serwera.
- "C#, Python, Ruby, PHP, JavaScript" w praktyce bywa mylące: JavaScript kojarzy się głównie z przeglądarką (frontend). Co prawda istnieją środowiska uruchomieniowe po stronie serwera, jednak w wielu podstawowych ujęciach egzaminacyjnych JavaScript klasyfikuje się jako język klienta, stąd taka odpowiedź bywa traktowana jako niepoprawna w prostym podziale.
- "Java, C#, Python, ActionScrip, PHP" jest błędne, bo ActionScript był językiem powiązanym z platformą Flash i aplikacjami uruchamianymi po stronie klienta; dodatkowo zapis "ActionScrip" jest niepoprawny.
Wskazówka egzaminacyjna: gdy w odpowiedziach pojawia się nazwa, która nie jest językiem (np. protokół, technika, biblioteka), zwykle ma to być dystraktor. Warto też pamiętać, że "strona serwera" oznacza miejsce wykonywania kodu, a nie to, czy użytkownik widzi efekty w przeglądarce.