Wybrane działy Informatyki Stosowanej

Podobne dokumenty
Wybrane działy Informatyki Stosowanej

Podstawy programowania GUI niskiego poziomu. APLETY.

Wybrane działy Informatyki Stosowanej

JavaFX. Technologie Biznesu Elektronicznego. Wydział Informatyki i Zarządzania Politechnika Wrocławska

OpenLaszlo. OpenLaszlo

Flex 3. Piotr Strzelczyk Wydział EAIiE Katedra Automatyki. Kraków, 2008

Zajęcia 4 - Wprowadzenie do Javascript

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Format HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty

Tworzenie aplikacji Web Alicja Zwiewka. Page 1

Wybrane działy Informatyki Stosowanej

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Wprowadzenie. 1. Terminal WebRTC. LABORATORIUM 5: WebRTC komunikacja między terminalami.

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Udostępnianie obrazu z kamer Sanyo HD na stronach WWW PORADNIK

Wprowadzenie SYSTEMY SIECIOWE. Michał Simiński

Informatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC.

Bazy Danych i Usługi Sieciowe

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Zdarzenia w JavaScript (Zajęcia r.)

Aplikacje WWW - laboratorium

Wybrane działy Informatyki Stosowanej

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

CZYM JEST JAVASCRIPT?

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery. Łukasz Bartczuk

Podstawy JavaScript ćwiczenia

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Podstawy programowania. Wprowadzenie

Wybrane działy Informatyki Stosowanej

Narzędzia i platformy programowania w Internecie

Efektywne tworzenie aplikacji webowych z wykorzystaniem AngularJS, HTML5 i JavaScript

Wykład 03 JavaScript. Michał Drabik

Czym jest AJAX. AJAX wprowadzenie. Obiekt XMLHttpRequest (XHR) Niezbędne narzędzia. Standardowy XHR. XHR z obsługą baz danych

Programowanie obiektowe

Aplikacje WWW - laboratorium

Dokumentacja Skryptu Mapy ver.1.1

Infrastruktura aplikacji WWW

WPROWADZENIE. Użycie PHP

Przykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie

Programowanie Multimediów. Programowanie Multimediów JAVA. wprowadzenie do programowania (3/3) [1]

PROBLEMY TECHNICZNE. Co zrobić, gdy natrafię na problemy związane z użytkowaniem programu DYSONANS

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.

Co to jest NODE.JS? Nowoczesne środowisko programistyczne

Wyświetlanie publikacji w formacie DjVu. Wyświetlanie publikacji w Bałtyckiej Bibliotece Cyfrowej można realizować na 3 sposoby:

Funkcje i instrukcje języka JavaScript

Java jako język programowania

Zaawansowane aplikacje internetowe

Delphi podstawy programowania. Środowisko Delphi

Rys.2.1. Drzewo modelu DOM [1]

Komunikacja i wymiana danych

Zaawansowane Techniki WWW (HTML, CSS i NODE.JS)

Aktywne i dynamiczne strony WWW. Elementy projektowania stron WWW. Część 3. Formularze HTML przykład. Formularze HTML. dr inŝ.

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)

Instrukcja laboratoryjna cz.3

Specyfikacja reklamy tekstowej i bannerowej na portalu GoldenLine.pl

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

SPECYFIKACJA TECHNICZNA PRODUKTÓW REKLAMOWYCH SIECI LOCAL POWER. Specyfikacja ważna od 21 maja 2018 r.

Bazy danych i strony WWW

Programowanie obiektowe zastosowanie języka Java SE

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Aplikacje WWW Wprowadzenie

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

WPROWADZENIE DO JĘZYKA JAVA

Imię, nazwisko i tytuł/stopień KOORDYNATORA (-ÓW) kursu/przedmiotu zatwierdzającego protokoły w systemie USOS Dr Adam Naumowicz

INTERAKTYWNA KOMUNIKACJA WIZUALNA. Flash - podstawy

Popularne dostępne rozwiązania. Najpopularniejsze środowiska programistyczne:

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, O STRUKTURZE PRZEDMIOTOWEJ

Protokół HTTP. 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX.

Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 8

Spis treści. 1 Aplet. 2 Od aplikacji do apletu. 1 Aplet 1. 2 Od aplikacji do apletu 1. 3 Budowa apletu 3. 4 Cykl życia apletu 4

Programowanie Komponentowe WebAPI

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

Zdarzenia Zdarzenia onload i onunload

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;

Pliki zorganizowano w strukturze drzewiastej odzwierciedlając strukturę logiczną aplikacji:

XML extensible Markup Language. część 5

TIN Techniki Internetowe zima

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

Program Płatnik Instrukcja instalacji

Instalacja i konfiguracja IIS-a na potrzeby dostępu WEB do aplikacji Wonderware InTouch Machine Edition

Spis treści CZĘŚĆ I JĘZYK SIECI 17. Wstęp 13. Rozdział 1 Wprowadzenie do HTML5 19. Rozdział 2 Znajomość znaczników HTML5 37

PRZYJĘTE ZASADY GRY...3 ZAŁOŻENIA PROJEKTU...4 CZYM JEST I DLACZEGO QT?...5 DIAGRAM KLAS...7 DIAGRAM GRY SINGLE PLAYER...8 DIAGRAM MULTIPLAYERA...

Bazodanowe usługi sieciowe w technologii ASP.NET. dr inż. Tomasz Tatoń

1 Wprowadzenie do J2EE

Szczegółowy opis zamówienia:

plansoft.org Zmiany w Plansoft.org

Multimedia JAVA. Historia

INSTRUKCJA INSTALACJI I PIERWSZEGO URUCHOMIENIA APLIKACJI Rodzajowa Ewidencja Wydatków plus Zamówienia i Umowy

Wybrane działy Informatyki Stosowanej

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

Programowanie gier 3D w HTML5. Andrzej P.Urbański Politechnika Poznańska

Bezpieczeństwo systemów komputerowych. Java i JavaScript. Java i JavaScript. Java - historia

- dodaj obiekt tekstowy: /** Maciej */ Stage { title : "First JavaFX App" scene: Scene { width: 300 height: 300 content: [ ] } }

JavaScript - wykład 4. Zdarzenia i formularze. Obsługa zdarzeń. Zdarzenia. Mysz. Logiczne. Klawiatura. Beata Pańczyk

Zaawansowane aplikacje internetowe - laboratorium

Transkrypt:

Wybrane działy Informatyki Stosowanej Aplikacje WWW. Statyczne oraz dynamiczne strony WWW. Skrypty po stronie klienta. Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki

Aplikacje WWW Format HTML oferuje możliwości tworzenia statycznych stron WWW Statyczna strona WWW nie zmienia swojego wyglądu niezależnie od liczby wywołań Dynamiczna strona WWW jest każdorazowo generowana w odpowiedzi na żądanie użytkownika na podstawie szablonu Dynamiczne strony są generowane przez aplikacje WWW 2

Metody dynamicznego generowania treści dokumentu HTML Plik szablonu <wstawki kodu> Aplikacja w postaci modułu wykonywalnego Dane obliczone w momencie obsługi żądania HTTP Generowanie HTML w locie Plik HTML Plik HTML Kod wykonywalny jest osadzony w pliku HTML Instrukcje tworzenia pliku HTML są osadzone 3 w kodzie programu

Koncepcja aplikacji WWW Aplikacja WWW - zbiór dynamicznych stron WWW stanowiący logiczną całość http://wazniak.mimuw.edu.pl/index.php?title=zaawansowane_aplikacje_internetowe 4

Strona wykonania kodu programowego (skryptu) Kod wykonywany po stronie klienta (ang. Client-side script) Przeglądarka => kod => przeglądarka Kod wykonywany po stronie serwera (ang. Server-side script) Przeglądarka => serwer => kod => serwer => przeglądarka 5

Kod wykonywany po stronie serwera Zalety: uniwersalność Można generować dowolną treść HTML Ukrycie szczegółów realizacji aplikacji przez klientem Wysoki poziom bezpieczeństwa Możliwość obsługi bazy danych Nie zależy od platformy użytkownika Wady: złożoność Wymagana umiejętność programowania Obciążenie serwera przy wielu równoległych połączeniach Złożona architektura 6

Kod wykonywany po stronie klienta Pozwala na łatwą interakcję z użytkownikiem Nie obciąża serwera zbędną robotą (np. sprawdzenie czy dane zostały wprowadzone, proste animacje, nawigacja etc.) Zwiększa możliwości przeglądarki WWW (m. innymi w zakresie grafiki) Ma otwarty kod źródłowy więc nie może być stosowany do wykonania funkcji związanych z przetwarzaniem poufnych danych Może mieć problem odmiennej interpretacji na różnych przeglądarkach Może wymagać instalacji u klienta dodatkowych bibliotek 7

Technologie tworzenia aplikacji WWW Kod wykonywany po stronie klienta (w przeglądarce) HTML Kod wykonywany po stronie serwera (na serwerze WWW) Strony dynamiczne (Java Server Pages) Skrypty (JavaScript) Serwlety (aplikacje) Aplety (wtyczki) WebServices (usługi) 8

Aplety Aplet program uruchamiany w przeglądarce WWW Może posiadać GUI, obsługiwać mysz oraz klawiaturę Jet dystrybuowany w postaci skompilowanej (kod źródłowy nie jest dostępny dla użytkownika) Szybkie wykonanie, zaawansowane możliwości w porównaniu z HTML Kwestie bezpieczeństwa oraz kompatybilności Przykłady: Adobe Flash, Java Applet, C++/ActiveX, etc. 9

Architektura apletów Java Aplet Wirtualny dysk Wirtualna pamięć JRE Wirtualny procesor Przeglądarka WWW Komputer klienta Środowisko uruchomieniowe

Kompilacja Kompilacja apletu Java Aplet kompiluje się do postaci kodu binarnego Kod binarny jest umieszczany na serwerze WWW Przeglądarka WWW pobiera plik apletu przy pierwszym wyświetleniu strony Aplet.java Aplet.class Strona WWW

Osadzanie apletu w kodzie HTML Znacznik <applet> lub <object> code codebase width height name align vspace hspace Nazwa klasy apletu (rozszerzenie *.class) Lokalizacja sieciowa (URL) plików *.class Szerokość okna apletu Wysokość okna apletu Nazwa apletu Wyrównanie apletu Odstęp w pionie od innych elementów na stronie Odstęp w poziomie od innych elementów na stronie

Przekazanie parametrów Do apletu można przekazać dowolne parametry, wartości których mogą być zapisane w postaci tekstowej <APPLET codebase= > <param name= nazwa1 value= wartość1 /> <param name= nazwa2 value= wartość2 /> </APPLET>

Odczyt parametrów przez aplet Odczyt parametru odbywa się za pomocą funkcji getparameter( nazwa parametru ) która zwraca wartość typu String String imie = getparameter("imie") W razie konieczności przechowania danych innego typu, należy zadbać o konwersję typów

Adobe Flash Technologia tworzenia animacji w postaci grafiki wektorowej z elementami programowania Przegląd Animacja.swf WWW browser Programowanie interakcji Instalacja na komputerze klienta Action Script Flash Player Wtyczka 15

Microsoft SilverLight Odpowiedź Microsoft na technologię Flash Koncepcja RIA (ang. Rich Internet Application) Wsparcie OS Windows XP / Vista / Windows 8 / 10 Platforma Windows Phone Wsparcie sprzętowej akceleracji komputerowej grafiki oraz multimediów Na rok 2021 zapowiedziany jest koniec wsparcia technologii ;( 16

Charakterystyka technologii wtyczek Wprowadzenie do aplikacji WWW cech interfejsu GUI aplikacji desktopowych Zaawansowane możliwości graficzne Zabezpieczony kod źródłowy (kompilacja) Dostęp do zasobów na komputerze użytkownika Niebezpieczeństwo nadużycia uprawnień Konieczność instalacji środowiska uruchomieniowego Problemy kompatybilności przeglądarek 17

JavaScript JS język skryptowy wykorzystujący składnię języka Java (poza tym ma niewiele wspólnego z Javą) Przeznaczenie: głównie kod wykonywany po stronie klienta (w przeglądarce WWW): Walidacja wartości wprowadzonych przez użytkownika Komunikaty, podpowiedzi Interaktywne menu Etc. Język interpretowany Dynamiczne typy danych Istnieje możliwość uruchomienia na serwerze WWW w celu napisania aplikacji dynamicznych 18

Zastosowanie JavaScript Strony WWW Walidacja wprowadzanych danych po stronie użytkownika Realizacja efektów wizualnych Office JavaScript Aplikacje samodzielne Aplikacje serwerowe Rhino (Google) SpiderMonkey (Mozilla) node.js Aplikacje graficzne Widgety 19

Osadzenie JS w kodzie HTML W dowolnym miejscu pliku HTML <script> function X() { }; </script> Jako zewnętrzny załącznik (możliwe jest wykorzystanie w wielu plikach HTML) <script src="przyklad.js"></script> 20

Oddziaływanie na elementy HTML id="akapit" Element HTML Kod JavaScript <script> var x = document.getelementbyid("akapit"); x.innerhtml = "Witam!"; x.style = "color: red"; x.style.fontsize = "24px"; </script> 21

Metody wyprowadzania danych Komunikat w przeglądarce window.alert("pozdrawiam!") Podmiana treści elementu HTML element.innerhtml = "nowa wartość" Generowanie treści dokumentu HTML document.write("<h1>przykład JS</h1>") 22

Funkcje JS Funkcja JS jest fragmentem kodu o określonej nazwie function X() {. } Funkcje mogą posiadać argumenty oraz zwracać wartość function Y(a, b) { } return a * b; Funkcje mogą być wywoływane przez zdarzenia 23

Zdarzenia w HTML Zdarzenie (event) zmiana stanu dokumentu HTML lub jego elementu spowodowana: Interakcją z użytkownikiem (np. kliknięcie przycisku, zmiana wartości pola tekstowego, etc.) Ukończeniem wykonania operacji (np. ładowanie dokumentu) W odpowiedzi na zdarzenie, JS może: Wykonać określoną czynność bezpośrednio w miejscu obsługi zdarzenia Wywołać funkcję obsługi (najczęściej) 24

Przykład obsługi zdarzenia Przycisk zdarzenie onclick Kod JavaScript function Test() { } <input type="button" value="naciśnij tu" onclick="test()"/> <script> function Test() { window.alert("2x2=" + 2*2); } </script> 25

Typowe zdarzenia elementów HTML Element button select radio text Zdarzenie onclick onchange onchange onkeydown 26

Walidacja zawartości pola tekstowego za pomocą JS <input type="text" id="student"> <input type="submit" onclick="return walidacja()"> Jan Kowalski Wyślij function walidacja() { var stud = document.getelementbyid('student').value; if( stud.length == 0 ) { document.getelementbyid('blad').innerhtml = 'Pole jest wymagane!'; return false; } return true; } 27

Popularne biblioteki JavaScript Angular ReactJS Vue.js 28