Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Techniki internetowe
Tok studiów:
2019/2020
Kod:
JMNB-1-038-s
Wydział:
Fizyki i Informatyki Stosowanej
Poziom studiów:
Studia I stopnia
Specjalność:
-
Kierunek:
Mikro- i nanotechnologie w biofizyce
Semestr:
0
Profil:
Ogólnoakademicki (A)
Język wykładowy:
Polski
Forma studiów:
Stacjonarne
Prowadzący moduł:
dr inż. Dydejczyk Antoni (dydejcz@agh.edu.pl)
Treści programowe zapewniające uzyskanie efektów uczenia się dla modułu zajęć

Student dysponuje aktualną wiedzą na temat realizacji projektów działających w serwisach WWW. Omówiony zostanie model MVC, wzorzec RESTful. Prezentacja serwisów WWW w chmurach obliczeniowych.

Opis efektów uczenia się dla modułu zajęć
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Powiązania z KEU Sposób weryfikacji i oceny efektów uczenia się osiągniętych przez studenta w ramach poszczególnych form zajęć i dla całego modułu zajęć
Wiedza: zna i rozumie
M_W001 Student zna i rozumie podstawowe* pojęcia i zagadnienia związane z projektowaniem serwisów WWW. * - pod pojęciem "podstawowe" należy rozumieć wszystkie pojęcia omawiane w ramach wykładu MNB1A_W09, MNB1A_W10, MNB1A_W04 Aktywność na zajęciach,
Udział w dyskusji,
Wykonanie projektu,
Wykonanie ćwiczeń laboratoryjnych
M_W002 Student dysponuje aktualną wiedzą na temat realizacji projektów działających w serwisach WWW. Ma podstawową wiedzę dotyczącą bezpieczeństwa tych serwisów. Zna podstawy technologii WebService. MNB1A_W08, MNB1A_W09, MNB1A_W10, MNB1A_W04 Aktywność na zajęciach,
Udział w dyskusji,
Wykonanie projektu,
Wykonanie ćwiczeń laboratoryjnych
Umiejętności: potrafi
M_U001 Student potrafi opracować poprawnie serwis WWW z wykorzystaniem interfejsu CGI, języków skryptowych uruchamianych po stronie serwera i klienta. MNB1A_U04, MNB1A_U11, MNB1A_U02, MNB1A_U01, MNB1A_U10 Wykonanie ćwiczeń laboratoryjnych
M_U002 Student potrafi opracować prosty serwis WWW zgodnie z zaleceniami konsorcjum W3C. Umie wykorzystać w projektach wzorzec projektowy MVC i RESTful. MNB1A_U04, MNB1A_U11, MNB1A_U02, MNB1A_U01, MNB1A_U10 Wykonanie projektu,
Wykonanie ćwiczeń laboratoryjnych
M_U003 Student potrafi wykorzystać w aplikacji struktury danych oraz dane zapisane w języku XML. Potrafi opracować prosty serwis w technologii WebService. MNB1A_U04, MNB1A_U02, MNB1A_U01, MNB1A_U10 Wykonanie projektu,
Wykonanie ćwiczeń laboratoryjnych
Kompetencje społeczne: jest gotów do
M_K001 Student umie przedstawić wykonany projekt w sposób komunikatywny oraz potrafi określić warunki jego komercjalizacji. MNB1A_K05, MNB1A_K01, MNB1A_K04, MNB1A_K03 Udział w dyskusji,
Wykonanie projektu
Liczba godzin zajęć w ramach poszczególnych form zajęć:
SUMA (godz.)
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
60 30 0 26 4 0 0 0 0 0 0 0
Matryca kierunkowych efektów uczenia się w odniesieniu do form zajęć i sposobu zaliczenia, które pozwalają na ich uzyskanie
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Forma zajęć dydaktycznych
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Wiedza
M_W001 Student zna i rozumie podstawowe* pojęcia i zagadnienia związane z projektowaniem serwisów WWW. * - pod pojęciem "podstawowe" należy rozumieć wszystkie pojęcia omawiane w ramach wykładu + - + + - - - - - - -
M_W002 Student dysponuje aktualną wiedzą na temat realizacji projektów działających w serwisach WWW. Ma podstawową wiedzę dotyczącą bezpieczeństwa tych serwisów. Zna podstawy technologii WebService. + - + + - - - - - - -
Umiejętności
M_U001 Student potrafi opracować poprawnie serwis WWW z wykorzystaniem interfejsu CGI, języków skryptowych uruchamianych po stronie serwera i klienta. - - + + - - - - - - -
M_U002 Student potrafi opracować prosty serwis WWW zgodnie z zaleceniami konsorcjum W3C. Umie wykorzystać w projektach wzorzec projektowy MVC i RESTful. - - + + - - - - - - -
M_U003 Student potrafi wykorzystać w aplikacji struktury danych oraz dane zapisane w języku XML. Potrafi opracować prosty serwis w technologii WebService. - - + + - - - - - - -
Kompetencje społeczne
M_K001 Student umie przedstawić wykonany projekt w sposób komunikatywny oraz potrafi określić warunki jego komercjalizacji. - - - + - - - - - - -
Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 154 godz
Punkty ECTS za moduł 6 ECTS
Udział w zajęciach dydaktycznych/praktyka 60 godz
Przygotowanie do zajęć 30 godz
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 34 godz
Samodzielne studiowanie tematyki zajęć 30 godz
Szczegółowe treści kształcenia w ramach poszczególnych form zajęć (szczegółowy program wykładów i pozostałych zajęć)
Wykład (30h):
  1. Serwis WWW – wprowadzenie.

    Podstawowe pojęcia z zakresu serwisów WWW. Historia rozwoju technologii. Powstanie i znaczenie konsorcjum W3C w rozwoju technologii internetowych. Wprowadzenie pojęcia przeglądarka i wyszukiwarka. Omówienie terminów Web 2.0 i Semantic Web. Prezentacja podstawowych technologii wykorzystywanych w tworzeniu aplikacji działających w środowisku WWW.

  2. Języki wykorzystywane w tworzeniu stron WWW.

    Omówienie języków do prezentacji treści : HTML 5, języka XHTML 1.1 oraz języka XML. Przedstawienie języków umożliwiających reprezentację graficzną CSS i XSL. Omówienie narzędzi do przetwarzania i sprawdzania poprawności dokumentów utworzonych w językach hipertekstowych – parsery i walidatory. Przedstawienie technologii wyszukiwania informacji w strukturach XML – język XPath. Rola języka ECMAscript w przetwarzaniu dokumentów WWW po stronie klienta.

  3. Przetwarzanie dokumentów w serwisie WWW.

    Prezentacja protokołu HTTP i HTTPS. Przedstawienie struktury komunikatu żądania i odpowiedzi. Specyfikacja MIME. Zadania realizowane przez zmienne COOKIE w serwisie WWW. Prezentacja podstawowych mechanizmów uwierzytelniania w serwisie WWW. Prezentacja podstawowych zadań realizowanych przez serwer WWW. Prezentacja skryptów w technologii CGI (Common Gateway Interface). Omówienie różnic w uruchamianiu aplikacji po stronie serwera w ramach technologii CGI lub modułu serwera WWW.

  4. Technologia szablonów w serwisach WWW.

    Wzorzec projektowy MVC w projektach serwisów WWW. Szablony opracowane w języku PHP. Dostęp do baz danych w ramach wzorca MVC. Relacyjne bazy danych w serwisie WWW.

  5. Styl projektowania aplikacji RESTful

    Wielowarstwowe aplikacje WWW. Projektowanie aplikacji klient – serwer z wykorzystaniem stylu RESTful. Obsługa baz danych zgodna z pojęciem CRUD. Wprowadzenie do baz danych typu NoSQL.

  6. Dostęp do serwisu WWW poprzez protokół AJAX i technologię WebService.

    Podstawowe elementy technologii WebService. Protokół transmisji danych SOAP, język opisu WSDL i technologia udostępniania informacji o serwisie – UDDI. Działanie technologii AJAX i jej realizacja z wykorzystaniem języka ECMAScript.

  7. Bezpieczeństwo serwisu WWW.

    Uprawnienia systemowe użytkowników. Metody weryfikacji poprawności serwisu WWW. Omówienie najbardziej popularnych błędów w trakcie realizacji projektu związanego z serwisem WWW.

Ćwiczenia laboratoryjne (26h):
  1. Projektowanie prostych statycznych stron WWW

    Efekty kształcenia:

    • student potrafi napisać prostą stronę zgodnie z specyfikacją HTML5 i zweryfikować ją za pomocą walidatora,
    • student potrafi opracować skrypt CSS formatujący opracowany dokument HTML, oraz zweryfikować jego poprawność odpowiednim walidatorem,
    • student potrafi opracować prosty dokument XML,
    • student potrafi przeszukiwać dokument XML wykorzystując język zapytań XPath,
    • student potrafi przetworzyć dokument XML z wykorzystaniem technologii XSLT i języka XSL.

  2. Projektowanie prostych aktywnych stron WWW

    Efekty kształcenia:

    • student potrafi nawigować po dokumencie HTML wykorzystując model DOM i język skryptowy ECMAScript,
    • student potrafi wykorzystać język ECMAScript do walidacji formularza,
    • student potrafi wykorzystać język ECMAScript do realizacji prostej funkcjonalności po stronie przeglądarki,
    • student potrafi wykorzystać bibliotekę jQuery do realizacji powyższych zadań.

  3. Tworzenie prostych stron dynamicznych z wykorzystaniem interfejsu CGI

    Efekty kształcenia:

    • student umie poprawnie wykorzystać metody GET i POST protokołu HTTP,
    • student potrafi opracować prostą aplikację WWW wykorzystującą interfejs CGI, w języku C, języku powłoki systemowej lub języku perl,
    • student potrafi wykorzystać zmienne COOKIE do przekazywania informacji pomiędzy klientem i serwerem WWW,
    • student potrafi opracować prosty system uwierzytelniania klienta serwisu WWW z wykorzystaniem technologii uwierzytelniania http BASIC.

  4. Realizacja aplikacji z wykorzystaniem języka PHP

    Efekty kształcenia:

    • student potrafi napisać stronę z wykorzystaniem zmiennych sesyjnych przechowywanych po stronie serwera,
    • student potrafi opracować prosty serwis WWW z wykorzystaniem warstw : kontroler i widok,
    • student potrafi opracować prosty system z dostępem do bazy danych lub do pliku danych.

  5. Technologia AJAX

    Efekty kształcenia:

    • student potrafi napisać skrypt w ECMASCript obsługujący obiekt XMLHttpRequest,
    • student umie przesłać dane do serwisu WWW z wykorzystaniem metody GET i POST protokołu HTTP,
    • student umie odebrać dane z serwera WWW i umieścić je w ramach strony WWW z wykorzystaniem operacji innerHTML,
    • student umie zrealizować zadanie z wykorzystaniem biblioteki jQuery.

  6. Technologia WebService

    Efekty kształcenia:

    • student potrafi opracować prosty serwis WWW z wykorzystaniem języka PHP, perl;
    • student potrafi opracować prostą definicję serwisu w języku WSDL,
    • student potrafi poprawnie napisać klienta wykorzystującego plik WSDL w języku PHP i perl.

  7. Styl RESTful

    Efekty kształcenia:

    • student potrafi napisać aplikację klient – serwer zgodnie z stylem RESTful
    • student potrafi wykorzystać bazę danych w ramach usług CRUD.

Ćwiczenia projektowe (4h):
Projekt

W trakcie semestru student realizuje dwa projekty. Tematy projektów wybiera student po konsultacji z prowadzącym laboratorium. W ramach projektów należy stworzyć działające aplikacje w serwisie WWW udostępnionym na Wydziale.
Efekty kształcenia:

  • student potrafi opracować projekt serwisu WWW, zdefiniować założenia i przeprowadzić analizę wymagań użytkownika, zaprojektować podstawową funkcjonalność realizowaną przez serwis,
  • student potrafi opracować serwis w określonym języku hipertekstowym, przeprowadzić jego walidację,
  • student potrafi opracować skrypt formatujący zawartość strony zgodnie z językiem CSS,
  • student potrafi wykorzystać technologię AJAX do realizacji projektu serwisu WWW,
  • student potrafi opracować serwis uwierzytelnienia użytkownika w serwisie, opanować funkcjonalności związane z zmiennymi sesyjnymi i zmiennymi COOKIE,
  • student potrafi opracować prosty schemat dostępu do bazy danych (baza relacyjna względnie baza NoSQL)
  • student potrafi opracować i wykonać prosty system zgodnie ze wzorcem projektowym MVC.

Pozostałe informacje
Metody i techniki kształcenia:
  • Wykład: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Ćwiczenia laboratoryjne: W trakcie zajęć laboratoryjnych studenci samodzielnie rozwiązują zadany problem praktyczny, dobierając odpowiednie narzędzia. Prowadzący stymuluje grupę do refleksji nad problemem, tak by otrzymane wyniki miały wysoką wartość merytoryczną.
  • Ćwiczenia projektowe: Studenci wykonują zadany projekt samodzielnie, bez większej ingerencji prowadzącego. Ma to wykształcić poczucie odpowiedzialności za pracę w grupie oraz odpowiedzialności za podejmowane decyzje.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

1. W ramach laboratorium komputerowego studenci wykonują szereg ćwiczeń oraz dwa zadania za które mogą zdobyć określoną liczbę punktów.
2. W trakcie semestru studenci wykonają samodzielnie dwa małe projekty podsumowujące przerobiony materiał na zajęciach laboratoryjnych. Projekty programistyczne oceniane są zgodnie ze szczegółowymi kryteriami zamieszczonymi na stronie przedmiotu oraz przedstawionymi na pierwszych zajęciach.
3. W ramach zajęć odbędzie się jedna pisemna praca kontrolna (kolokwium) na koniec zajęć sprawdzająca wiedzę teoretyczną studentów.

Zasady udziału w zajęciach:
  • Wykład:
    – Obecność obowiązkowa: Nie
    – Zasady udziału w zajęciach: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Ćwiczenia laboratoryjne:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci wykonują ćwiczenia laboratoryjne zgodnie z materiałami udostępnionymi przez prowadzącego. Student jest zobowiązany do przygotowania się w przedmiocie wykonywanego ćwiczenia, co może zostać zweryfikowane kolokwium w formie ustnej lub pisemnej. Zaliczenie zajęć odbywa się na podstawie zaprezentowania rozwiązania postawionego problemu. Zaliczenie modułu jest możliwe po zaliczeniu wszystkich zajęć laboratoryjnych.
  • Ćwiczenia projektowe:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci wykonują prace praktyczne mające na celu uzyskanie kompetencji zakładanych przez syllabus. Ocenie podlega sposób wykonania projektu oraz efekt końcowy.
Sposób obliczania oceny końcowej:

Ocena końcowa z przedmiotu obliczana jest zgodnie z Regulaminem Studiów AGH po przeliczeniu uzyskanych punktów na ocenę końcową.
Maksymalna liczba punktów za udział w laboratoriach i realizację zadań w trakcie ich trwania 50 (aktywna obecność na zajęciach oraz realizacja zadań), maksymalna liczba punktów pracy kontrolnej 10 (minimalna liczba punktów do zaliczenia pracy kontrolnej – 5), maksymalna liczba punktów za realizację projektów 40.
Warunkiem koniecznym do zaliczenia przedmiotu jest uzyskanie 50 punktów oraz oddanie dwóch projektów i zaliczenie pracy kontrolnej.

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Nieobecność na zajęciach wymaga od studenta samodzielnego opanowania przerobionego na zajęciach materiału i jego zaliczenia w formie sprawozdania lub projektu w wyznaczonym przez prowadzącego terminie.
Istnieje możliwość odrobienia nieobecności w innej grupie laboratoryjnej pod warunkiem dostępności miejsc na laboratorium i zgody prowadzącego zajęcia.
Student, który bez usprawiedliwienia opuścił więcej niż 3 zajęcia może zostać pozbawiony, przez prowadzącego zajęcia, możliwości wyrównania zaległości.

Wymagania wstępne i dodatkowe, z uwzględnieniem sekwencyjności modułów :

Podstawowa wiedza z kursów wprowadzających do informatyki.

Zalecana literatura i pomoce naukowe:
  • K.Coar, R.Bowen, Apache receptury, Wydawnictwo Helion 2004
  • S.Guelich, S.Gundavaram, G.Birznieks, Programowanie CGI w perlu
  • P.Lavin, PHP Programowanie obiektowe, Wydawnictwo Helion 2007
  • P.Listosz, PHP, Jak to zrobić ?, Wydawnictwo Robomatic 2002
  • L.Atkinson, Core PHP Programowanie, Wydawnictwo 2003
  • E.Lecky-Thompson, H.Eide-Goodman, S.D.Nowicki, A.Cove, PHP 5 Zaawansowane programowanie, Wydawnictwo Helion 2005
  • C.Darie, B.Brinzarea, F.Chereches-Tosa, M.Bucica, AJAX i PHP, Tworzenie interaktywnych aplikacji internetowych, Wydawnictwo Helion 2006
  • S.Stefanov, JavaScript Programowanie obiektowe, Wydawnictwo Helion 2010
Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:

Według bazy WoS.

Informacje dodatkowe:

Brak