Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Tworzenie stron WWW Programowanie webowe JavaScript PHP

Na stronie internetowej ma być wyświetlany zegar, który co sekundę aktualizuje bieżący czas bez przeładowywania strony. W którym języku najprościej zrealizować tę funkcję?

A. CSS
B. SQL
C. PHP
D. JavaScript
JavaScript jest tutaj najlepszym wyborem, bo działa bezpośrednio w przeglądarce użytkownika i może zmieniać zawartość strony bez jej przeładowywania. Taki zegar robi się zwykle przez pobranie aktualnej daty obiektem Date, sformatowanie godziny i wpisanie wyniku do elementu strony przez DOM, np. przez textContent. Do cyklicznej aktualizacji co sekundę pasuje setInterval, bo pozwala wykonywać funkcję regularnie, np. co 1000 ms. Z mojego doświadczenia to klasyczny przykład interaktywności po stronie klienta: użytkownik widzi zmieniający się czas, a serwer nie musi co chwilę generować nowej strony. To jest zgodne z dobrą praktyką rozdzielania ról technologii webowych: HTML daje strukturę, CSS wygląd, a JavaScript zachowanie i reakcję na zmiany. W praktyce warto też pamiętać o formatowaniu czasu, np. przez Intl.DateTimeFormat, bo wtedy łatwiej obsłużyć lokalny zapis godziny, strefę językową i czytelny format. Przy takim prostym zegarze nie ma sensu angażować bazy danych ani przeładowywać dokumentu, bo byłoby to cięższe i mniej wygodne dla użytkownika.
W tym zadaniu łatwo pomylić technologie, bo wszystkie występują przy tworzeniu stron WWW, ale każda ma inną rolę. PHP działa głównie po stronie serwera. Może wygenerować aktualny czas w momencie tworzenia strony, ale po wysłaniu HTML do przeglądarki ten wynik już sam z siebie się nie zmienia. Żeby PHP aktualizował zegar co sekundę, trzeba by co chwilę wykonywać nowe żądania do serwera, na przykład przez AJAX, co dla zwykłego zegarka byłoby trochę sztuką dla sztuki i niepotrzebnym obciążeniem. SQL też nie pasuje, bo służy do pracy z bazami danych: pobierania, filtrowania, modyfikowania rekordów. Baza może przechowywać daty i czasy, ale nie steruje dynamicznie elementami widocznymi w przeglądarce. CSS natomiast opisuje wygląd: kolory, rozmiary, układ, animacje. Da się nim zrobić efekt ruchu albo migania, ale CSS nie oblicza bieżącej godziny i nie pobiera aktualnego czasu systemowego w sensie programistycznym. Typowy błąd myślowy polega na uznaniu, że skoro coś jest „na stronie”, to każda technologia webowa się nada. W praktyce do zmiany treści dokumentu po załadowaniu strony używa się JavaScriptu, bo ma dostęp do DOM, obsługuje funkcje czasowe i działa lokalnie w przeglądarce użytkownika.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.