Programowanie w HTML i XML

1 Programowanie w HTML i XMLprowadzący: dr inż. Tomasz Wi...
Author: Bolesława Bonikowski
0 downloads 5 Views

1 Programowanie w HTML i XMLprowadzący: dr inż. Tomasz Wierciński

2 Plan wykładów Język XML Język XSL Język JavaScript Co to jest WWW?Architektura środowiska WWW (klient-serwer) Przeglądarki WWW Serwery WWW Uniform Resource Locators – URL Protokół HTTP Witryny WWW Języki znaczników Właściwości języków znakowania Budowa języków znakowania Język HTML Wersje języka HTML Struktura dokumentu HTML Opis znaczników HTML Kodowanie znaków Dynamiczny HTML Arkusze styl Zdarzenia The Document Object Model (DOM) Język XML Język XSL Język JavaScript

3 Literatura www.w3.org/MarkUp/ www.w3schools.comBryan Pfaffenberger, Bill Karow, HTML 4. Biblia, Helion, 2000 Laura Lemay, HTML 4. Vademecum profesjonalisty, Helion, 1998 Benoit Marchal, XML w przykładach, Wydawnictwo MIKOM, 2001 Bryan Pfaffenberger, Steven M. Schafer, Chuck White, Bill Karow, HTML, XHTML i CSS. Biblia, Helion, 2005 Wojciech Romowicz, HTML i JavaScript, Helion, 1998 Steve Holzner, XSLT. Vademecum profesjonalisty, Helion, 2002 David Crowder, Rhoda Crowder, Tworzenie stron WWW. Biblia, Helion, 2002 Danny Goodman, JavaScript. Biblia, Helion, 2002

4 Co to jest WWW? Sieć WWW jest hipertekstowym systemem informacyjnymidea hipertekstu polega na tym, że zamiast czytać tekst po kolei, linia po linii (tak jak książkę), można przechodzić od punktu do punktu w sposób nieliniowy

5 WWW jest systemem graficznymintegruje ze sobą tekst z grafiką, dźwiękiem i sekwencjami wideo oraz wbudowane aplikacje

6 WWW jest siecią wieloplatformowądostęp do WWW możliwy jest przy użyciu dowolnego sprzętu, dowolnego systemu operacyjnego i dowolnego typu ekranu ograniczenia wynikają z użycia niestandardowych rozszerzeń wprowadzanych przez producentów oprogramowania

7 WWW jest siecią rozproszonądane rozproszone są po całym świecie w tysiącach witryn na tysiącach serwerów każda witryna, każda strona ma swój unikalny adres URL (ang. Uniform Resource Locator) będący uniwersalnym identyfikatorem zasobów, np.

8 WWW jest siecią dynamicznądane zmodyfikowane na stronach www są automatycznie widoczne przez wszystkich użytkowników

9 Sieć WWW jest interakcyjnamożliwość reakcji na zdarzenia wywołane przez użytkownika, np. kliknięcie myszką możliwość wymiany informacji pomiędzy użytkownikiem a serwerem WWW za pomocą formularzy

10 Architektura statycznego środowiska WWWWWW to środowisko klient-serwer

11 Klient WWW Klientem WWW jest przeglądarkaPrzeglądarka jest programem, który służy do oglądania i poruszania się po stronach WWW Potrafi odczytywać pliki różnych (oprócz HTTP) serwisów internetowych takich jak FTP, Gopher, grupy dyskusyjne Usenet, bazy danych WAIS, Telnet, poczta elektroniczna ( )

12 Chcąc wykorzystać przeglądarkę do odczytywania różnych typów informacji w Internecie, należy skorzystać z różnych rodzajów adresów URL, np. ftp://nazwa_serwera/katalog/plik Obecnie najpopularniejszymi przeglądarkami w sieci WWW są Microsoft Internet Explorer, Mozilla Firefox, Opera

13 Serwer WWW Serwer WWW to program działający na komputerze w sieci Internet, który odpowiada na żądania przeglądarki i wysyła do niej odpowiednie pliki (np. Apache)

14 Architektura dynamicznego środowiska WWWArchitektura trójwarstwowa WWW Server Application Server DB Server

15 Serwer Aplikacyjny Serwer w sieci komputerowej, przeznaczony do zdalnego uruchamiania i użytkowania aplikacji Zestaw oprogramowania (platforma) wspierająca programistę/developera przy tworzeniu aplikacji. Umożliwia oddzielenie logiki biznesowej od usług dostarczanych przez producenta platformy (bezpieczeństwo, zarządzanie transakcjami, skalowalność, czy też dostęp do baz danych). Do serwerów aplikacji należą m.in.: JBoss, BEA WebLogic, IBM WebSphere oraz platforma .NET Microsoft-u.

16 Serwer bazy danych Oprogramowanie bądź system informatyczny służący do zarządzania komputerowymi bazami danych Posiada mechanizmy: środki do gromadzenia, utrzymywania i administrowania trwałymi i masowymi zbiorami danych, środki zapewniające spójność i bezpieczeństwo danych, sprawny dostęp do danych (zwykle poprzez język zapytań, np. SQL), środki programistyczne służące do aktualizacji/przetwarzania danych (API dla popularnych języków programowania), jednoczesny dostęp do danych dla wielu użytkowników (z reguły realizowany poprzez transakcje), środki pozwalające na regulację dostępu do danych (autoryzację), środki pozwalające na odtworzenie zawartości bazy danych po awarii, środki optymalizujące zajętość pamięci oraz czas dostępu (np. indeksy), środki do pracy lub współdziałania w środowiskach rozproszonych.

17 Uniform Resource LocatorsOznacza zunifikowany format odnośników do zasobów Jest podzbiorem URI (Uniform Resource Identifier - zunifikowany identyfikator zasobów) Jest używany do adresowania dokumentów lub innych danych w sieci WWW. Może to być dokument WWW, plik na serwerze FTP, wiadomość na serwerze grup dyskusyjnych lub adres poczty elektronicznej

18 Pełen adres URL ma następującą postać syntaktyczną: scheme://host:port/path/filename?queryscheme - typ serwisu (nazwa protokołu), np HTTP, FTP; host - nazwa hostu (komputera w sieci WWW) port - numer portu na którym nasłuchuje dany serwer ( domyślnym numerem portu jest 80); path - ścieżka podkatalogów na serwerze (domyślnie katalog główny – root); filename - nazwa dokumentu (domyślnie index.html) query - treść zapytania postaci nazwa=wartość

19 Protokół HTTP (Hypertext Transfer Protocol)za pomocą protokołu HTTP przesyła się informacje w sieci WWW udostępnia on znormalizowany sposób komunikowania się komputerów ze sobą określa on formę żądań klienta dotyczących danych oraz formę odpowiedzi serwera na te żądania (protokół request/response) metody GET parametry zapytania przekazane w zapytaniu (query string) POST posiada blok danych umieszczony za nagłówkiem; posiada dodatkowe pola nagłówka: Content-Type:, Content-Length:

20 Protokół HTTP Initial request line Initial Response Line (Status Line)posiada trzy części: nazwę metody, ścieżkę lokalną zasobu i używaną wersję HTTP GET /path/to/file/index.html HTTP/1.0 Initial Response Line (Status Line) posiada trzy części: wersję HTTP, kod statusu odpowiedzi i opis przyczyny HTTP/ OK lub HTTP/ Not Found

21 Kody statusu odpowiedzi2xx – sukces, np. 200 OK 3xx – przekierowanie, np. 302: Moved Temporarily 4xx – błąd klienta, np. 404: Not Found 5xx – błąd serwera, np. 500: Internal Server Error

22 Metoda POST Nagłówek Treść HTTP Request HTTP ResponsePOST /login.jsp HTTP/1.1 Host: User-Agent: Mozilla/4.0 Content-Length: 29 Content-Type: application/x-www-form-urlencoded login=julius&password=zgadnij Nagłówek Treść HTTP Response HTTP/ OK. Date: Fri, 31 Dec :59:59 GMT Content-Type: text/plain Content-Length: 1354 status=ok

23 Metoda GET HTTP RequestGET /index.html?login=julius&password=zgadnij HTTP/1.1 Host: User-Agent: Mozilla/4.0

24 Witryny WWW Witryna to zbiór składający się z jednej lub kilku stron WWW powiązanych ze sobą w sposób, który odzwierciedla istotę zawartych w niej informacji i tworzy spójną całość Struktury witryn

25 Struktura hierarchicznaposiada wiele poziomów strona główna zawiera ogólny przegląd opisywanych treści oraz połączenia do stron, które znajdują się na niższych poziomach hierarchii

26 Struktura liniowa przejście od strony do strony odbywa się w sposób liniowy (krok po kroku)

27 Struktura liniowa z alternatywąposiada możliwość odejścia od głównej ścieżki dokumentów

28 Struktura mieszana (liniowo-hierarchiczna)

29 Struktura sieciowa brak ogólnej struktury dokumentówpołączenia między stronami za pomocą hiperłączy

30 Języki znaczników Język znakowania to sposób kodowania dokumentów tekstowych przy pomocy znaczników.

31 Budowa dokumentu dokument opisany przy użyciu języka znakowania zawiera: właściwy tekst znaczniki, określające elementy dokumentu, jego strukturę, sposoby formatowania i hiperpołączenia do innych stron lub informacji innego rodzaju większość elementów (elementy blokowe) składa się z trzech części: znacznika otwierającego, zawartości i znacznika zamykającego

32 Budowa dokumentu zawartość np.

znacznik otwierający może zawierać listę atrybutów formatujących atrybuty występują w parach postaci: nazwa=”wartość”, np. align=”center”, width=”100px” niektóre elementy (liniowe) nie wymagają znacznika zamykającego, np.

33 Właściwości języków znakowaniaopis dokumentu w pliku tekstowym przenoszalność i kompatybilność poprzez wykorzystanie jedynie znaków ASCII oddzielenie struktury dokumentu od jego wyglądu (podział dokument-widok) opis struktury strony a nie wyglądu konkretnych jej elementów - odwrotnie niż w edytorach graficznych typu WYSIWYG (ang. What You See Is What You Get) praca w środowisku wieloplatformowym (różne komputery, systemy operacyjne i przeglądarki) hierarchiczna struktura znaczników

34 Język SGML (Standard Generalized Markup Language)1986 – stał się standardem według organizacji ISO nie ma określonego zbioru znaczników i reguł ich użytkowania jest nadrzędnym językiem służącym do definiowania dowolnych znaczników i ustalania zasad ich poprawnego użytkowania umożliwia definiowanie poszczególnych języków znacznikowych

35 Język HTML (HyperText Markup Language)HTML wywodzi się z języka SGML HTML jest językiem opisu strony a nie wyglądu poszczególnych jej elementów posiada zdefiniowany zbiór elementów i atrybutów, np. HEAD, BODY, TABLE, align, width

36 Historia języka HTML standardem HTML zajmuje się konsorcjum W3C (World Wide Web Consortium) 1989 – HTML opracowana przez Tima Berners-Lee zawiera kilkanaście znaczników wraz z odsyłaczami;

37 Historia języka HTML c.d.1995 HTML podstawowy zestaw znaczników, obsługiwany przez wszystkie przeglądarki; 1996 HTML wprowadzono przede wszystkim obsługę: tabel, apletów oraz otaczanie obrazów tekstem. Można było określać kolor i grafikę tła. Pojawiły się formularze. Język ten był w pełni zgodny z wcześniejszym standardem HTML 2.0;

38 Historia języka HTML c.d.1997 HTML 4.0 – wprowadzono dynamiczny HTML i arkusze stylów;

39 Struktura HTML w HTML-u zdefiniowane są trzy znaczniki, które opisują ogólną strukturę strony oraz dostarczają podstawowych informacji nagłówkowych:

40 Opis znaczników języka HTMLKomentarz służy do zamieszczenia w kodzie źródłowym komentarza; jest ignorowany przez przeglądarkę Source Output

This is a regular paragraph

This is a regular paragraph

41 Opis znaczników języka HTML - HEADTytuł dokumentu jest wyświetlany na pasku tytułowym okna przeglądarki Moja strona WWW Treść dokumentu

42 Opis znaczników języka HTML - HEAD definiuje związek pomiędzy dwoma dokumentami atrybuty: href – adres URL rel – relacja między dokumentami type – definiuje MIME type, np. text/css text/javascript image/gif

43 Opis znaczników języka HTMLNagłówki

...
atrybuty align umożliwiają podział strony na części mają 6 poziomów różniących się między sobą wielkością i atrybutami czcionki (pogrubienie, pod­kreślenie, wielkie litery) HTML automatycznie dodaje pustą linię przed i po nagłówku

44 Nagłówki This is header 1 This is header 2 This is header 3Source Output

This is header 1

This is header 2

This is header 3

This is header 4

This is header 5
This is header 6
This is header 1 This is header 2 This is header 3 This is header 4 This is header 5 This is header 6

45 Opis znaczników języka HTMLAkapit

atrybuty: align umożliwia wyróżnienie fragmentu tekstu HTML automatycznie dodaje pustą linię przed i po akapicie Source Output This is

some text in a very short paragraph

This is some text in a very short paragraph

46 Opis znaczników języka HTMLPodział wiersza
umożliwia podział wiersza w dowolnym miejscu nie posiada znacznika końcowego (jest elementem liniowym) Source Output This text contains
a line break
This text contains a line break

47 Opis znaczników języka HTMLLinia pozioma


atrybuty: align noshade size - wysokość width pozwala na podział strony przy pomocy linii Source Output This is some text
This is some text
This is some text

48 Opis znaczników języka HTMLGrupowanie elementów

atrybuty align umożliwia utworzenie obszaru składającego się z wielu elementów blokowych pozwala na formatowanie grupy elementów automatycznie umieszcza znaki końca linii przed i po bloku div Source Output This is some text

This is a header in a div section

This is a paragraph in a div section

This is some text This is a header in a div section This is a paragraph in a div section

49 Opis znaczników języka HTMLGrupowanie elementów liniowych umożliwia grupowanie elementów w celu ich sformatowania nie umieszcza znaków końca linii Source Output

This is a paragraph This is a paragraph This is a paragraph

This is another paragraph

This is a paragraph This is a paragraph This is a paragraph This is another paragraph

50 Listy Lista wypunktowana (nieuporządkowana)