Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Zaawansowane techniki internetowe
Tok studiów:
2016/2017
Kod:
ZIE-2-205-s
Wydział:
Zarządzania
Poziom studiów:
Studia II stopnia
Specjalność:
-
Kierunek:
Informatyka i Ekonometria
Semestr:
2
Profil kształcenia:
Ogólnoakademicki (A)
Język wykładowy:
Polski
Forma i tryb studiów:
Stacjonarne
Strona www:
 
Osoba odpowiedzialna:
dr inż. Duda Jerzy (jduda@zarz.agh.edu.pl)
Osoby prowadzące:
Gaweł Bartłomiej (bgawel@zarz.agh.edu.pl)
dr inż. Opiła Janusz (jmo@agh.edu.pl)
Potiopa Piotr (ppotiopa@zarz.agh.edu.pl)
Krótka charakterystyka modułu

Opis efektów kształcenia dla modułu zajęć
Kod EKM Student, który zaliczył moduł zajęć wie/umie/potrafi Powiązania z EKK Sposób weryfikacji efektów kształcenia (forma zaliczeń)
Wiedza
M_W001 zna aktualne technologie, standardy i języki opisu stron WWW IE2A_W07, IE2A_W02 Egzamin,
Kolokwium
M_W002 zna zasady tworzenia i wykorzystywania usług sieciowych (WebServices) IE2A_W07, IE2A_W02 Egzamin,
Kolokwium,
Wykonanie ćwiczeń
M_W003 zna zasady funkcjonowania i konfiguracji serwera WWW (na przykładzie IIS) IE2A_W07, IE2A_W05 Egzamin,
Wykonanie ćwiczeń
M_W004 zna architekturę Model-View-Controller oraz sposoby jej implementacji w aplikacjach webowych IE2A_W07 Egzamin,
Wykonanie ćwiczeń
Umiejętności
M_U001 potrafi wykorzystać technologie optymalizujące przesył danych (w tym AJAX) IE2A_U02, IE2A_U08 Projekt,
Wykonanie ćwiczeń
M_U002 potrafi tworzyć aplikacje w technologii ASP.NET i architekturze MVC IE2A_U01, IE2A_U04 Projekt,
Wykonanie ćwiczeń
M_U003 potrafi konfigurować i zarządzać serwerem aplikacji webowych (IIS) IE2A_U09 Projekt,
Wykonanie ćwiczeń
Kompetencje społeczne
M_K001 ma świadomość ciągłej potrzeby dostosowywania swojej wiedzy do zmieniających się technik budowania aplikacji internetowych oraz potrzeby śledzenia nowych specyfikacji stosowanych języków IE2A_K01 Egzamin,
Kolokwium
M_K002 potrafi pracować w zespole, korzystając z narzędzi wspomagających pracę zespołu IE2A_K02 Projekt,
Wykonanie ćwiczeń
Matryca efektów kształcenia w odniesieniu do form zajęć
Kod EKM Student, który zaliczył moduł zajęć wie/umie/potrafi Forma zajęć
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Inne
E-learning
Wiedza
M_W001 zna aktualne technologie, standardy i języki opisu stron WWW + - - - - - - - - - -
M_W002 zna zasady tworzenia i wykorzystywania usług sieciowych (WebServices) + - - - - - - - - - -
M_W003 zna zasady funkcjonowania i konfiguracji serwera WWW (na przykładzie IIS) + - - - - - - - - - -
M_W004 zna architekturę Model-View-Controller oraz sposoby jej implementacji w aplikacjach webowych + - - - - - - - - - -
Umiejętności
M_U001 potrafi wykorzystać technologie optymalizujące przesył danych (w tym AJAX) - - - + - - - - - - -
M_U002 potrafi tworzyć aplikacje w technologii ASP.NET i architekturze MVC - - - + - - - - - - -
M_U003 potrafi konfigurować i zarządzać serwerem aplikacji webowych (IIS) - - - + - - - - - - -
Kompetencje społeczne
M_K001 ma świadomość ciągłej potrzeby dostosowywania swojej wiedzy do zmieniających się technik budowania aplikacji internetowych oraz potrzeby śledzenia nowych specyfikacji stosowanych języków + - - + - - - - - - -
M_K002 potrafi pracować w zespole, korzystając z narzędzi wspomagających pracę zespołu - - - + - - - - - - -
Treść modułu zajęć (program wykładów i pozostałych zajęć)
Wykład:
  1. Współczseny standard HTML5 i Web API

    Rozwój standardu HTML. Aktualna specyfikacja oraz implementacja w przeglądarkach.
    Przyszłość HTML. Web API. Preprocesor HAML

  2. Język CSS i preprocesory CSS

    Rozwój standardu CSS. Moduły CSS 4. Preprocesory CSS: LESS i SASS. Framework Compass.

  3. Zaawansowany JavaScript i frameworki MVC JavaScript

    Rozwój języka JavaScript. Obowiązujący standard. Wersja Strict. Optymalizacja kodu JavaScript. Alternatywny zapis kodu (TypeScript, Dart, CofeeScript). Tworzenie architektury MVC po stronie klienta z wykorzystaniem frameworów JavaScript (Angular, Backbone).

  4. Technologie tworzenia aplikacji WWW

    Porównanie technologii tworzenia aplikacji webowych w środowisku PHP5, ASP.NET i JSP. Alternatywne technologie: Python, Node.JS. Rodzaje serwerów WWW. Serwer Internet Information Services – działanie, konfiguracja, implementacja i zarządzanie. Serwery JEE – Apache Tomcat, JBOSS. Serwery PHP – Apache.

  5. Technologia ASP.NET i ASP.NET MVC (wymiennie z Java MVC)

    Mechanizm postback, zapamiętywanie stanu, MasterPages, kontrolki i ich renderowanie, walidacja. Silnik WebForms i Razor. Architektura Model-Widok-Kontroler. Tworzenie kontrolerów, widoku i modelu. Implementacja architektury MVC w ASP.NET

  6. Komunikacja z bazą danych w ASP.NET (wymiennie z Java EE)

    Łączenie z bazą danych. Mapowanie obiektowo relacyjne. Frameworki ORM dla ASP.NET (EntityFramework). Framework ORM Hybernate dla Java.

  7. Bezpieczeństwo aplikacji ASP.NET (wymiennie z Java EE)

    Autoryzacja użytkowników w ASP.NET (ASP.NET Identity i podejścia alteranatywne). Bezpieczeństwo aplikacji

  8. Cloud computing (na przykładzie Windows Azure)

    Charakterystyka chmury Windows Azure. Wdrożenie aplikacji do chmury Windows Azure

  9. Wykorzystanie Web API

    Zaawansowane zagadnienia związane z wykorzystaniem HTML API: Web Workers, Web Socket, HTML Messaging, Web Workers i Web Storage

  10. RESTful API z wykorzystaniem ASP.NET (lub JavaEE)

    Technologia RESTFul API. Wykorzystanie API: Google, Facebook, Accuweather. Tworzenia serwisu RESTful API w ASP.NET.

  11. Usługi sieciowe (SOA)

    Architektura zorientowana na usługi (SOA). Protokół SOAP. Katalog UDDI. Implementacja usług sieciowych (WebServices) w ASP.NET z wykorzystaniem Windows Communication Framework (WCF)

  12. Optymalizacja serwisu dla SEO

    Routing w ASP.NET MVC. Optymalzacja routingu i inne techniki wspomagające SEO

  13. Alterantywe techonologie back-endu

    Budowanie serwisów za pomocą Node.JS

Ćwiczenia projektowe:
  1. Tworzenie stron WWW z wykorzystaniem HTML5 i CSS

    Tworzenie stron WWW w języku HTML5 i CSS. Tworzenie responsywnej strony.

  2. Wykorzystanie preprocesorów CSS

    Tworzenie warstwy prezentacji z wykorzystaniem preprocesorów CSS (SASS, LESS). Zapewnienie kompatybilności rozwiązań z jak najszerszą gamą przeglądarek internetowych.

  3. Budowa MVC po stronie klienta za pomocą frameworka JS

    Wykorzystanie frameworka Angular (lub Barebone) do utworzenia architektury MVC po stronie klienta.

  4. Praca z serwerem IIS i środowiskiem ASP.NET

    Konfiguracja serwera IIS i środowiska ASP.NET. Przygotowanie testowej aplikacji w ASP.NET. Tworzenie szablonu strony i osadzanie treści. Przetwarzanie formularzy.

  5. Praca z frameworkiem ASP.NET MVC

    Implementacja architektury MVC w środowisku .NET (ASP.NET MVC). Tworzenie kontraktów opartych o interfejsy. Tworzeklas kontrolera, widoku i modelu.

  6. Obsługa bazy danych w ASP.NET

    Konfiguracja bazy danych. Wykorzystanie obiektów ORM do operacji CRUD. Mapowanie obiektowo-relacyjne (ORM) za pomocą Entity Framework.

  7. Zarządzanie bezpieczeństwem aplikacji internetowej

    Metody uwierzytelniania i autoryzacji w ASP.NET. Definiowanie ról. Wykorzystanie mechanizmu Membership provider.

  8. Przygotowanie projektu w zespole

    Utworzenie zespołów projektowych i przydział ról. Omówienie tematyki i zakresu projektu. Tworzenie projektów z wykorzystaniem narzędzi sieciowych.

Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 100 godz
Punkty ECTS za moduł 4 ECTS
Udział w wykładach 28 godz
Udział w ćwiczeniach projektowych 14 godz
Przygotowanie do zajęć 14 godz
Samodzielne studiowanie tematyki zajęć 14 godz
Wykonanie projektu 20 godz
Egzamin lub kolokwium zaliczeniowe 2 godz
Dodatkowe godziny kontaktowe z nauczycielem 8 godz
Pozostałe informacje
Sposób obliczania oceny końcowej:

Ocena końcowa wystawiana jest przez prowadzącego wykład jako średnia z oceny z egzaminu oraz oceny z laboratoriów. Ocena z laboratoriów wystawiana jest na podstawie ocen uzyskanych z kolokwium oraz oceny z projektu.

Wymagania wstępne i dodatkowe:

Wymagana znajomość podstaw programowania strukturalnego i obiektowego, technik i języków webowych, a także baz danych i języka SQL.

Zalecana literatura i pomoce naukowe:

Literatura
1. J. N. Robbins: HTML i XHTML. Leksykon kieszonkowy, Helion, Gliwice 2006.
2. M. MacDonald: HTML5. Nieoficjalny podręcznik, Helion, Gliwice 2012.
3. J. Liberty, D. Maharry, D. Hurwitz. ASP.NET 3.5. Programowanie, Helion, Gliwice 2012.
4. D. Borycki, M. Pakulski, M. Grabek, J. Matulewski, ASP.NET WebForms, MVC, AJAX i jQuery. Kompletny przewodnik dla programistów interaktywnych aplikacji internetowych w Visual Studio, Helion, Gliwice 2012.

Oprogramowanie
1. Edytor języka (X)HTML np. KEd, Core Editor
2. Serwer Apache z PHP
3. Serwer IIS (dostępny zdalnie lub lokalnie)
4. Microsoft Visual Studio w wersji 2010 lub wyższej

Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:

Distributed evolutionary computing system based on Web browsers with JavaScript / Jerzy DUDA, Wojciech Dłubacz // W: Applied parallel and scientific computing : 11th international conference : PARA 2012 : Helsinki, Finland, June 10–13, 2012 : revised selected papers / eds. Pekka Manninen, Per Öster. — Berlin ; Heidelberg : Springer-Verlag, 2013

GPU acceleration for the web browser based evolutionary computing system / Jerzy DUDA, Wojciech Dłubacz // W: ICSTCC 2013 [Dokument elektroniczny] : 17th International Conference on System Theory, Control and Computing : joint conference of SINTES 17, SACCS 13, SIMSIS 17 : October 11–13, 2013, Sinaia, Romania

Sposób i system wykonywania obliczeń rozproszonych w przeglądarkach internetowych — [Method and system for performing distributed calculations in the Internet browsers] / Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie ; wynalazca: DUDA Jerzy, Dłubacz Wojciech. — Int.Cl.: G06F 17/00 — Polska. — Opis zgłoszeniowy wynalazku ; PL 406727 A1 ; Opubl. 2015-07-06. — Zgłosz. nr P.406727 z dn. 2013-12-30

Informacje dodatkowe:

Brak