{"id":"informatyka-2018-maj-matura-rozszerzona/zad/3.1","paper_id":"informatyka-2018-maj-matura-rozszerzona","number":"3.1","points":1,"ptype":"true_false","subject":"informatyka","category":"matura","year":2018,"month":"maj","level":"rozszerzona","text":"Zadanie 3.1. (0-1)\nNa pewnym serwerze WWW znajduje się strona napisana w języku PHP, a jej kod zawiera\nfragmenty w języku JavaScript. Pewien komputer-klient pobrał i wyświetlił tę stronę.\nWiadomo, że:\n1. kod PHP jest wykonywany przez komputer - serwer.\nP\nF\n2. kod JavaScript jest wykonywany przez komputer - klient.\nP\nF\n3. podczas wykonywania kodu PHP zawsze pobierane są dane od\nklienta.\nP\nF\n4. podczas wykonywania kodu JavaScript mogą być pobierane\ndodatkowe dane zarówno od klienta, jak i od serwera.\nP\nF","answer":null,"answer_text":"Zadanie 3.1. (0-1)\nWymagania ogólne\nWymagania szczegółowe\nI. Bezpieczne posługiwanie się komputerem\ni jego oprogramowaniem, wykorzystanie sieci\nkomputerowej; komunikowanie się za\npomocą komputera i technologii\ninformacyjno-komunikacyjnych.\n3. Bezpieczne posługiwanie się\nkomputerem, jego oprogramowaniem\ni korzystanie z sieci komputerowej.\nZdający:\n3) […] opisuje zasady administrowania\nsiecią komputerową w architekturze klient-\nserwer, prawidłowo posługuje się\nterminologią sieciową, korzysta z usług\nw sieci komputerowej, lokalnej i globalnej,\nzwiązanych z dostępem do informacji,\nwymianą informacji i komunikacją.\nSchemat punktowania\n1 p. - za wskazanie czterech poprawnych odpowiedzi.\n0 p. - za odpowiedź niepełną lub błędną albo za brak odpowiedzi.\nPoprawna odpowiedź\nP, P, F, P","solution":"## Poprawna odpowiedź\n\n**1) P, 2) P, 3) F, 4) P**\n\n## Sposób 1 - analiza poszczególnych stwierdzeń\n\n### Stwierdzenie 1: PHP wykonywany przez serwer → **P**\n\n**PHP** (PHP: Hypertext Preprocessor) to **język serwerowy**. Kod PHP jest interpretowany przez interpreter PHP na serwerze WWW (np. Apache + mod_php, lub PHP-FPM). Wynik to **statyczny HTML**, który wysyłany jest do przeglądarki klienta.\n\n**Klient NIE WIDZI** kodu PHP - widzi tylko wygenerowany przez PHP wynik.\n\n### Stwierdzenie 2: JavaScript wykonywany przez klienta → **P**\n\n**JavaScript** (w klasycznym webie) to **język klienta** - wykonywany przez silnik JS w przeglądarce (V8 w Chrome, SpiderMonkey w Firefox, JavaScriptCore w Safari).\n\nUWAGA: Node.js to JavaScript po stronie SERWERA, ale w kontekście strony WWW (treść mówi o stronie w PHP z fragmentami JS) - fragmenty JS w `<script>` są wykonywane przez przeglądarkę klienta.\n\n### Stwierdzenie 3: PHP ZAWSZE pobiera dane od klienta → **F**\n\n**Fałsz.** PHP MOŻE pobierać dane od klienta (przez formularze GET/POST, cookies, sesje), ale **nie zawsze tak robi**. Prosta strona PHP może po prostu wyświetlać aktualną datę z serwera lub liczyć liczbę odwiedzin - bez pobierania ŻADNYCH danych od klienta.\n\nKwantyfikator \"zawsze\" sprawia, że stwierdzenie jest fałszywe.\n\n### Stwierdzenie 4: JS może pobierać dane od klienta I od serwera → **P**\n\n**Prawda.** JavaScript w przeglądarce:\n- **Od klienta**: localStorage, sessionStorage, cookies, formularze, eventy klawiatury/myszy, czujniki.\n- **Od serwera**: `fetch()`, XMLHttpRequest (AJAX), WebSockets, Server-Sent Events.\n\nTo właśnie zapewnia interaktywność współczesnych aplikacji webowych (np. Facebook, Gmail).\n\n## Reference informatyczny - model klient-serwer w WWW\n\n> Reference - Architektura klient-serwer:\n> - **Klient** (browser): renderuje HTML, CSS; wykonuje JavaScript; obsługuje user input.\n> - **Serwer**: obsługuje requesty HTTP; uruchamia kod backendowy (PHP, Python, Java, Node.js); zwraca odpowiedź (HTML/JSON/itd.).\n>\n> Reference - Języki webowe:\n> | Język | Strona | Wykonanie |\n> |-------|--------|-----------|\n> | HTML | klient | renderowanie struktury |\n> | CSS | klient | stylowanie |\n> | JavaScript | klient (browser) | interaktywność |\n> | PHP | serwer | generowanie HTML, logika biznesowa |\n> | Python (Django/Flask) | serwer | jak PHP |\n> | Node.js | serwer | JS na serwerze |\n> | SQL | serwer (DB) | zapytania do bazy |\n>\n> Reference - Komunikacja w obie strony:\n> - **GET / POST** - request od klienta do serwera, response w drugą stronę.\n> - **AJAX (XHR, fetch)** - asynchroniczne pobieranie danych przez JS po załadowaniu strony.\n> - **WebSocket** - dwukierunkowe, ciągłe połączenie klient-serwer.\n\n## Schemat oceniania CKE\n\n> Klucz CKE (zadanie 3.1, max 1 pkt):\n> - **1 pkt** - wszystkie 4 odpowiedzi poprawne: P, P, F, P\n> - **0 pkt** - niepełna lub błędna\n\n## Typowe pułapki\n\n- **Mylenie języków serwerowych z klienckimi** - PHP/Python/Java to SERVER; JavaScript klasycznie CLIENT.\n- **Stwierdzenie 3: kwantyfikator \"zawsze\"** - uczniowie myślą \"PHP obsługuje formularze, więc tak\", ale `zawsze` jest za mocne. Wystarczy 1 przykład PHP bez wejścia od klienta (np. echo \"witaj\") = fałsz.\n- **JS tylko od klienta** - niedocenienie AJAX/fetch. JS może i pobiera od serwera (to clue Web 2.0).\n- **Mylenie Node.js z klasycznym JS w przeglądarce** - w treści mówimy o stronie WWW, więc JS = przeglądarka.\n\n## Złożoność obliczeniowa\n\nN/A - zadanie teoretyczne z zakresu technologii webowych.","image":"img/informatyka-2018-maj-matura-rozszerzona/zad-3.1.webp","solution_image":null,"topics":null,"page_from":7,"source":"ocr","answer_source":null,"answer_text_source":"ocr","solution_source":"maturazai","text_source":"ocr","source_label":"Informatyka · Matura · maj 2018 (rozszerzona)","subject_label":"Informatyka","category_label":"Matura","text_html":"<p>Zadanie 3.1. (0-1)<br>Na pewnym serwerze WWW znajduje się strona napisana w języku PHP, a jej kod zawiera<br>fragmenty w języku JavaScript. Pewien komputer-klient pobrał i wyświetlił tę stronę.<br>Wiadomo, że:</p>\n<ol><li>kod PHP jest wykonywany przez komputer - serwer.</li></ol>\n<p>P<br>F</p>\n<ol><li>kod JavaScript jest wykonywany przez komputer - klient.</li></ol>\n<p>P<br>F</p>\n<ol><li>podczas wykonywania kodu PHP zawsze pobierane są dane od</li></ol>\n<p>klienta.<br>P<br>F</p>\n<ol><li>podczas wykonywania kodu JavaScript mogą być pobierane</li></ol>\n<p>dodatkowe dane zarówno od klienta, jak i od serwera.<br>P<br>F</p>","answer_text_html":"<p>Zadanie 3.1. (0-1)<br>Wymagania ogólne<br>Wymagania szczegółowe<br>I. Bezpieczne posługiwanie się komputerem<br>i jego oprogramowaniem, wykorzystanie sieci<br>komputerowej; komunikowanie się za<br>pomocą komputera i technologii<br>informacyjno-komunikacyjnych.</p>\n<ol><li>Bezpieczne posługiwanie się</li></ol>\n<p>komputerem, jego oprogramowaniem<br>i korzystanie z sieci komputerowej.<br>Zdający:</p>\n<ol><li>[…] opisuje zasady administrowania</li></ol>\n<p>siecią komputerową w architekturze klient-<br>serwer, prawidłowo posługuje się<br>terminologią sieciową, korzysta z usług<br>w sieci komputerowej, lokalnej i globalnej,<br>związanych z dostępem do informacji,<br>wymianą informacji i komunikacją.<br>Schemat punktowania<br>1 p. - za wskazanie czterech poprawnych odpowiedzi.<br>0 p. - za odpowiedź niepełną lub błędną albo za brak odpowiedzi.<br>Poprawna odpowiedź<br>P, P, F, P</p>","solutions":[{"source":"maturazai","label":"maturazai.pl (AI)","kind":"text","html":"<h4>Poprawna odpowiedź</h4>\n<p><strong>1) P, 2) P, 3) F, 4) P</strong></p>\n<h4>Sposób 1 - analiza poszczególnych stwierdzeń</h4>\n<h5>Stwierdzenie 1: PHP wykonywany przez serwer → <strong>P</strong></h5>\n<p><strong>PHP</strong> (PHP: Hypertext Preprocessor) to <strong>język serwerowy</strong>. Kod PHP jest interpretowany przez interpreter PHP na serwerze WWW (np. Apache + mod_php, lub PHP-FPM). Wynik to <strong>statyczny HTML</strong>, który wysyłany jest do przeglądarki klienta.</p>\n<p><strong>Klient NIE WIDZI</strong> kodu PHP - widzi tylko wygenerowany przez PHP wynik.</p>\n<h5>Stwierdzenie 2: JavaScript wykonywany przez klienta → <strong>P</strong></h5>\n<p><strong>JavaScript</strong> (w klasycznym webie) to <strong>język klienta</strong> - wykonywany przez silnik JS w przeglądarce (V8 w Chrome, SpiderMonkey w Firefox, JavaScriptCore w Safari).</p>\n<p>UWAGA: Node.js to JavaScript po stronie SERWERA, ale w kontekście strony WWW (treść mówi o stronie w PHP z fragmentami JS) - fragmenty JS w <code>&lt;script&gt;</code> są wykonywane przez przeglądarkę klienta.</p>\n<h5>Stwierdzenie 3: PHP ZAWSZE pobiera dane od klienta → <strong>F</strong></h5>\n<p><strong>Fałsz.</strong> PHP MOŻE pobierać dane od klienta (przez formularze GET/POST, cookies, sesje), ale <strong>nie zawsze tak robi</strong>. Prosta strona PHP może po prostu wyświetlać aktualną datę z serwera lub liczyć liczbę odwiedzin - bez pobierania ŻADNYCH danych od klienta.</p>\n<p>Kwantyfikator &quot;zawsze&quot; sprawia, że stwierdzenie jest fałszywe.</p>\n<h5>Stwierdzenie 4: JS może pobierać dane od klienta I od serwera → <strong>P</strong></h5>\n<p><strong>Prawda.</strong> JavaScript w przeglądarce:</p>\n<ul><li><strong>Od klienta</strong>: localStorage, sessionStorage, cookies, formularze, eventy klawiatury/myszy, czujniki.</li><li><strong>Od serwera</strong>: <code>fetch()</code>, XMLHttpRequest (AJAX), WebSockets, Server-Sent Events.</li></ul>\n<p>To właśnie zapewnia interaktywność współczesnych aplikacji webowych (np. Facebook, Gmail).</p>\n<h4>Reference informatyczny - model klient-serwer w WWW</h4>\n<blockquote>Reference - Architektura klient-serwer:<br>- <strong>Klient</strong> (browser): renderuje HTML, CSS; wykonuje JavaScript; obsługuje user input.<br>- <strong>Serwer</strong>: obsługuje requesty HTTP; uruchamia kod backendowy (PHP, Python, Java, Node.js); zwraca odpowiedź (HTML/JSON/itd.).<br><br>Reference - Języki webowe:<br>| Język | Strona | Wykonanie |<br>|-------|--------|-----------|<br>| HTML | klient | renderowanie struktury |<br>| CSS | klient | stylowanie |<br>| JavaScript | klient (browser) | interaktywność |<br>| PHP | serwer | generowanie HTML, logika biznesowa |<br>| Python (Django/Flask) | serwer | jak PHP |<br>| Node.js | serwer | JS na serwerze |<br>| SQL | serwer (DB) | zapytania do bazy |<br><br>Reference - Komunikacja w obie strony:<br>- <strong>GET / POST</strong> - request od klienta do serwera, response w drugą stronę.<br>- <strong>AJAX (XHR, fetch)</strong> - asynchroniczne pobieranie danych przez JS po załadowaniu strony.<br>- <strong>WebSocket</strong> - dwukierunkowe, ciągłe połączenie klient-serwer.</blockquote>\n<h4>Schemat oceniania CKE</h4>\n<blockquote>Klucz CKE (zadanie 3.1, max 1 pkt):<br>- <strong>1 pkt</strong> - wszystkie 4 odpowiedzi poprawne: P, P, F, P<br>- <strong>0 pkt</strong> - niepełna lub błędna</blockquote>\n<h4>Typowe pułapki</h4>\n<ul><li><strong>Mylenie języków serwerowych z klienckimi</strong> - PHP/Python/Java to SERVER; JavaScript klasycznie CLIENT.</li><li><strong>Stwierdzenie 3: kwantyfikator &quot;zawsze&quot;</strong> - uczniowie myślą &quot;PHP obsługuje formularze, więc tak&quot;, ale <code>zawsze</code> jest za mocne. Wystarczy 1 przykład PHP bez wejścia od klienta (np. echo &quot;witaj&quot;) = fałsz.</li><li><strong>JS tylko od klienta</strong> - niedocenienie AJAX/fetch. JS może i pobiera od serwera (to clue Web 2.0).</li><li><strong>Mylenie Node.js z klasycznym JS w przeglądarce</strong> - w treści mówimy o stronie WWW, więc JS = przeglądarka.</li></ul>\n<h4>Złożoność obliczeniowa</h4>\n<p>N/A - zadanie teoretyczne z zakresu technologii webowych.</p>"}]}