SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
Intro	
  to	
  Web	
  Standards	
  

           Jussi	
  Pohjolainen	
  
TAMK	
  University	
  of	
  Applied	
  Sciences	
  
Web	
  Standards?	
  
•  Formal	
  standards	
  or	
  technical	
  specifica2ons	
  that	
  
   describe	
  the	
  World	
  Wide	
  Web	
  
•  Web	
  Standards	
  consist	
  of	
  the	
  following	
  
   –  RecommendaDons	
  of	
  the	
  World	
  Wide	
  Web	
  
      ConsorDum	
  (W3C)	
  
       •  (X)HTML,	
  CSS,	
  SVG,	
  DOM	
  ...	
  
   –  RFC	
  documents	
  published	
  by	
  Internet	
  Engineering	
  
      Task	
  Force	
  (IETF)	
  
       •  URI,	
  HTTP,	
  MIME	
  ...	
  
   –  And	
  also	
  standards	
  by	
  Ecma	
  InternaDonal	
  (JavaScript),	
  
      Unicode	
  (Charsets)	
  and	
  IANA	
  (Name	
  and	
  number	
  
      registries).	
  	
  
World	
  Wide	
  Web	
  ConsorDum	
  
•  The	
  World	
  Wide	
  Web	
  ConsorDum	
  (W3C)	
  is	
  the	
  
   main	
  internaDonal	
  standards	
  organizaDon	
  for	
  
   the	
  World	
  Wide	
  Web	
  
•  Compa2bility	
  among	
  industry	
  members	
  
•  W3C	
  makes	
  recommenda)ons	
  for	
  the	
  web	
  
•  Several	
  recommendaDons	
  	
  
   –  XHTML,	
  DOM,	
  CSS,	
  XML...	
  
•  URL:	
  hXp://www.w3.org/	
  
W3C	
  RecommendaDon:	
  XHTML	
  
•  XHTML™	
  1.0	
  The	
  Extensible	
  HyperText	
  
   Markup	
  Language	
  (Second	
  EdiDon)	
  
       –  hXp://www.w3.org/TR/xhtml1/	
  
•  Markup	
  language	
  for	
  web	
  pages	
  
•  Can	
  be	
  used	
  to	
  create	
  structured	
  documents	
  
   by	
  using	
  structural	
  semanDcs	
  
       –  headings,	
  paragraph,	
  lists,	
  links	
  ...	
  
	
  
Example	
  of	
  XHTML	
  
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Hello</title>
    <meta http-equiv="content-type" content="application/xhtml
   +xml; charset=utf-8" />
</head>
<body>
    <h1>Hello World!</h1>
    <p>Here is a paragraph.</p>
</body>
</html>
XHTML,	
  HTML?	
  
SGML:	
  Standard	
  Generalized	
  Markup	
  Language	
  
Meta	
  language	
  	
  




                          XML	
  
           Meta	
  language	
  (subset	
  of	
  SGML)	
  




    OOXML	
                MathML	
                  XHTML	
         HTML	
  
    (.docx)	
              (.mml)	
                  (.xhtml)	
     (.html)	
  
(X)HTML	
  versions	
  
•  1996:	
  HTML	
  2.0	
                     •  200X:	
  (X)HTML	
  5	
  
•  1997:	
  HTML	
  3.2	
                         –  2D	
  drawing,	
  Offline	
  
    –  W3C	
  RecommendaDon	
                        storage,	
  drag	
  and	
  drop..	
  

•  1997:	
  HTML	
  4.0	
  
    –  CSS	
  
•  2000:	
  XHTML	
  1.0	
  	
  
    –  SeparaDon	
  of	
  layout	
  and	
  
       the	
  document	
  
W3C	
  RecommendaDon:	
  XML	
  
•  eXtensible	
  Markup	
  Language,	
  is	
  a	
  specificaDon	
  
   for	
  creaDng	
  custom	
  markup	
  languages	
  
•  W3C	
  RecommendaDon	
  
•  Primary	
  purpose	
  is	
  to	
  help	
  computers	
  to	
  share	
  
   data	
  
•  XML	
  is	
  meta-­‐language.	
  This	
  means	
  that	
  you	
  
   use	
  it	
  for	
  creaDng	
  languages.	
  
•  XML	
  is	
  an	
  extensive	
  concept.	
  
XML-­‐language:	
  XHTML	
  
<?xml version="1.0"?>!
<!DOCTYPE html !
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"!
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">!
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
   lang="en">!
  <head>!
    <title>Minimal XHTML 1.0 Document</title>!
  </head>!
  <body>!
    <p>This is a minimal <a href="http://www.w3.org/TR/
   xhtml1/">XHTML 1.0</a> !
    document.</p>!
  </body>!
</html>!
XML-­‐language:	
  SVG	
  
<?xml version="1.0"?>!
<!DOCTYPE svg !
     PUBLIC "-//W3C//DTD SVG 1.1//EN" !
     "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">!
<svg width="100%" height="100%" version="1.1"!
xmlns="http://www.w3.org/2000/svg">!
!
<circle cx="100" cy="50" r="40" stroke="black"!
stroke-width="2" fill="red"/>!
!
</svg>!
XML-­‐language:	
  MathML	
  
<?xml version="1.0"?>!
<!DOCTYPE math:math PUBLIC "-//OpenOffice.org//DTD Modified W3C
   MathML 1.01//EN" "math.dtd">!
<math:math xmlns:math="http://www.w3.org/1998/Math/MathML">!
 <math:semantics>!
  <math:mrow>!
   <math:mi>x</math:mi>!
   <math:mo math:stretchy="false">=</math:mo>!
   <math:mfrac>!
    <math:mrow>!
        ...!
    </math:mrow>!
  <math:annotation math:encoding="StarMath 5.0">x = {-b +-
   sqrt{b^{2}-4{ac}}   } over {2 {a}} </math:annotation>!
 </math:semantics>!
</math:math>!
XML-­‐language:	
  You	
  can	
  create	
  your	
  
                   own!	
  
<plist version='1.0'>!
<dict>!
<key>Student and Staff Restaurant</key>!
<array>!
  <string>Gratinated broccoli</string>!
  <string>Oven baked sausage</string>!
  <string>Beef in red wine sauce</string>!
  <string>Ham and pepperoni baguette</string>!
  <string>Baguette with beef roast</string>!
</array>!
<key>Cafeteria</key>!
<array>!
  <string>Tomato soup with chevre &amp;</string>!
  <string>Ham and pasta salad</string>!
</array>!
</dict>!
</plist>!
W3C	
  recommendaDon:	
  CSS	
  
•  Cascading	
  Style	
  Sheets	
  is	
  used	
  to	
  describe	
  
   presentaDon	
  of	
  a	
  document	
  wriXen	
  in	
  some	
  
   markup	
  language	
  
   –  Markup	
  language	
  can	
  be	
  (x)html	
  
•  Different	
  versions	
  
   –  CSS	
  1,	
  CSS	
  2,	
  CSS	
  3	
  
•  Different	
  browsers	
  support	
  different	
  things	
  in	
  
   CSS	
  
XHTML	
  with	
  CSS	
  
<?xml version="1.0"?>
<!DOCTYPE html
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Minimal XHTML 1.0 Document</title>
     <link rel="stylesheet" href="mystyle.css">
  </head>
  <body>
    <p>This is a minimal <a href="http://www.w3.org/TR/xhtml1/">XHTML
   1.0</a>
    document.</p>
  </body>
</html>
CSS:	
  mystyle.css	
  
p {
      font-family:     Arial, serif;
      color:           RGB(255,0,0);
}
Result	
  in	
  Browser	
  
JavaScript,	
  LiveScript,	
  JScript,	
  
                  ECMAScript?	
  
•  ScripDng:	
  add	
  client-­‐side	
  behaviour	
  to	
  the	
  site	
  
•  JavaScript	
  
    –  Developed	
  by	
  Netscape	
  
    –  Originally	
  JavaScript,	
  then	
  LiveScript	
  and	
  then	
  back	
  to	
  
       JavaScript.	
  
•  JScript	
  
    –  Microsok	
  made	
  their	
  own	
  version	
  of	
  the	
  JavaScript	
  
•  CompaDbility	
  problems	
  
•  =>	
  ECMAScript,	
  effort	
  to	
  standardize	
  different	
  
   versions	
  of	
  the	
  J(ava)Script	
  
ECMAScript	
  
•  ECMAScript	
  is	
  a	
  scripDng	
  language,	
  
   standardized	
  by	
  Ecma	
  InternaDonal	
  
•  In	
  Browsers,	
  ECMAScript	
  is	
  commonly	
  called	
  
   JavaScript	
  
•  Java/ECMAscript	
  is	
  nowdays	
  heavily	
  used	
  with	
  
   AJAX	
  –	
  based	
  sites	
  
•  SDll	
  many	
  problems	
  because	
  of	
  browser	
  
   incompaDbilites	
  
Client-­‐Server	
  Architecture	
  
HTTP?	
  
•  HTTP	
  (Hypertext	
  transfer	
  protocol)	
  is	
  a	
  
   stateless	
  protocol,	
  which	
  is	
  meant	
  to	
  
   transfer	
  informaDon	
  on	
  intranets	
  and	
  World	
  
   Wide	
  Web.	
  
   –  RFC2616:	
  
   –  hXp://www.w3.org/Protocols/rfc2616/rfc2616.html	
  
•  HTTP	
  is	
  a	
  request	
  /	
  response	
  standard	
  
   between	
  client	
  and	
  server	
  
Clients	
  and	
  Servers	
  
•  Client	
  
   –  Client	
  makes	
  a	
  hXp	
  request.	
  
   –  Client	
  can	
  be	
  a	
  web	
  browser,	
  spider	
  or	
  other	
  end-­‐user	
  
      tool	
  
   –  Client	
  is	
  referred	
  as	
  a	
  user	
  agent	
  
•  Server	
  
   –  Stores	
  informaDon	
  and	
  makes	
  them	
  available	
  to	
  the	
  
      client	
  
   –  Gives	
  hXp	
  response	
  to	
  the	
  client	
  
Resources	
  
•  Server	
  provides	
  resources	
  to	
  clients	
  
•  Resources	
  can	
  be	
  accessed	
  by	
  HTTP	
  using	
  
   URLs	
  (	
  Uniform	
  Resource	
  Locator	
  )	
  
•  Example	
  
   –  hXp://www.tamk.fi/~jack/document.doc	
  
Request	
  and	
  Response	
  

Client	
                                        Client	
  
User-­‐agent:	
  Firefox	
                      Apache	
  HTTP	
  Server	
  

                                  request	
  

                                 response	
  
Request	
  GET	
  
•  HTTP	
  defines	
  eight	
  methods	
  that	
  define	
  a	
  acDon	
  
   which	
  will	
  be	
  made	
  to	
  a	
  resource	
  
•  Most	
  typical	
  method	
  is	
  GET	
  
•  By	
  using	
  the	
  GET	
  -­‐	
  method,	
  client	
  gets	
  a	
  
   representaDon	
  of	
  the	
  resource.	
  
•  Example	
  of	
  geqng	
  a	
  file	
  
    –  URL:	
  hXp://www.something.com/file.doc	
  
    –  1)	
  Open	
  connecDon	
  to	
  the	
  server	
  
    –  2)	
  Send	
  following	
  through	
  the	
  connecDon:	
  
         •  GET	
  /path/to/file.doc	
  HTTP/1.0	
  
    –  3)	
  Read	
  the	
  response	
  
More	
  on	
  Request	
  GET	
  
•  Typically	
  HTTP	
  client	
  is	
  a	
  browser	
  that	
  
   creates	
  the	
  request	
  automaDcally	
  when	
  user	
  
   opens	
  a	
  url	
  
•  Browser	
  creates	
  the	
  request	
  which	
  contains	
  
   addiDon	
  to	
  the	
  GET	
  lot	
  of	
  other	
  informaDon..	
  
•  For	
  example,	
  informa)on	
  about	
  user	
  agent!	
  
Request	
  and	
  Response	
  

Client	
                       example	
  request	
            Client	
  
User-­‐agent:	
  Firefox	
     GET / HTTP/1.1!                 Apache	
  HTTP	
  Server	
  
                               Host: www.tamk.fi!
                               User-Agent: Mozilla/5.0 (Mac..)!
                               ...!
                               !


                                                response	
  
Response	
  
•  When	
  making	
  a	
  GET	
  request	
  to	
  a	
  certain	
  URL,	
  
   client	
  gets	
  a	
  response	
  
•  Response	
  consists	
  of	
  
    –  1)	
  Header	
  informaDon	
  
    –  2)	
  Resource	
  itself	
  
•  Browser	
  makes	
  decisions	
  based	
  on	
  the	
  header	
  
   informaDon..	
  
Example	
  of	
  Response	
  

               HTTP/1.1 200 OK!
               Date: Fri, 12 Jan 2007 07:51:41 GMT!
               Server: Apache/1.3.37 (Unix)!
               Last-Modified: Wed, 10 Jan 2007 12:43:34 GMT!
Header	
       ETag: "479a0-16a9-45a4df76"!
               Accept-Ranges: bytes!
               Content-Length: 5801!
               Connection: close!
               Content-Type: text/html; charset=iso-8859-1!
               !
               <html>!
Resource	
     <head>!
               <title>...!
               !
Request	
  and	
  Response	
  
Client	
                        example	
  request	
          Client	
  
User-­‐agent:	
  Firefox	
      GET / HTTP/1.1!               Apache	
  HTTP	
  Server	
  
                                Host: www.tamk.fi!
                                User-Agent: Mozilla/5.0 (Mac..)!
                                ...!




                               example	
  response	
  
                               HTTP/1.1 200 OKDate: Fri, 12 Jan
                               2007 07:51:41 GMTServer: Apache/
                               1.3.37 (Unix)...!
                               ...!
                               <html><head><title>...!
                               !
Firefox	
  and	
  HTTP	
  headers	
  
Client	
  vs.	
  Server	
  
•  In	
  client-­‐side	
  techniques,	
  browser	
  or	
  it's	
  
   plugins	
  executes	
  dynamic	
  behaviour	
  
    –  Flash,	
  JavaScript,	
  Applets...	
  
•  In	
  server-­‐side	
  techniques,	
  server	
  is	
  responsible	
  
   for	
  the	
  dynamic	
  behaviour	
  
    –  PHP,	
  Java	
  EE..	
  
    –  Persistant	
  Storage	
  is	
  implemented	
  by	
  using	
  
       databases,	
  for	
  example:	
  MySQL	
  	
  

Contenu connexe

Tendances

Tendances (12)

INFT132 093 04 HTML and XHTML
INFT132 093 04 HTML and XHTMLINFT132 093 04 HTML and XHTML
INFT132 093 04 HTML and XHTML
 
Cross Origin Resource Sharing
Cross Origin Resource SharingCross Origin Resource Sharing
Cross Origin Resource Sharing
 
Developing CouchApps
Developing CouchAppsDeveloping CouchApps
Developing CouchApps
 
Dynamic websites
Dynamic websitesDynamic websites
Dynamic websites
 
ICT project
ICT projectICT project
ICT project
 
MongoDB, E-commerce and Transactions
MongoDB, E-commerce and TransactionsMongoDB, E-commerce and Transactions
MongoDB, E-commerce and Transactions
 
Wt unit 1 ppts web development process
Wt unit 1 ppts web development processWt unit 1 ppts web development process
Wt unit 1 ppts web development process
 
XML Document Object Model (DOM)
XML Document Object Model (DOM)XML Document Object Model (DOM)
XML Document Object Model (DOM)
 
Inet prog
Inet progInet prog
Inet prog
 
Describing LDP Applications with the Hydra Core Vocabulary
Describing LDP Applications with the Hydra Core VocabularyDescribing LDP Applications with the Hydra Core Vocabulary
Describing LDP Applications with the Hydra Core Vocabulary
 
Wordpress: A Tool for online Earning
Wordpress: A Tool for online EarningWordpress: A Tool for online Earning
Wordpress: A Tool for online Earning
 
Presentation_1367055087514
Presentation_1367055087514Presentation_1367055087514
Presentation_1367055087514
 

En vedette

BarCamp Miami 2009 - Ten Beginner to Advanced Strategies to Use Social Media ...
BarCamp Miami 2009 - Ten Beginner to Advanced Strategies to Use Social Media ...BarCamp Miami 2009 - Ten Beginner to Advanced Strategies to Use Social Media ...
BarCamp Miami 2009 - Ten Beginner to Advanced Strategies to Use Social Media ...Jay Berkowitz www.TenGoldenRules.com
 
Finale Basics
Finale BasicsFinale Basics
Finale Basicsajgarr
 
Dillard University Student Policies FY2010 - 2011
Dillard University Student Policies FY2010 - 2011Dillard University Student Policies FY2010 - 2011
Dillard University Student Policies FY2010 - 2011Dillard University Library
 
Extensible Stylesheet Language
Extensible Stylesheet LanguageExtensible Stylesheet Language
Extensible Stylesheet LanguageJussi Pohjolainen
 
Dillard University CTLAT Faculty Mini Grant Application Feb 14 2012
Dillard University CTLAT Faculty Mini Grant Application Feb 14 2012Dillard University CTLAT Faculty Mini Grant Application Feb 14 2012
Dillard University CTLAT Faculty Mini Grant Application Feb 14 2012Dillard University Library
 

En vedette (7)

BarCamp Miami 2009 - Ten Beginner to Advanced Strategies to Use Social Media ...
BarCamp Miami 2009 - Ten Beginner to Advanced Strategies to Use Social Media ...BarCamp Miami 2009 - Ten Beginner to Advanced Strategies to Use Social Media ...
BarCamp Miami 2009 - Ten Beginner to Advanced Strategies to Use Social Media ...
 
Facebook Marketing Strategies for Business
Facebook Marketing Strategies for BusinessFacebook Marketing Strategies for Business
Facebook Marketing Strategies for Business
 
Finale Basics
Finale BasicsFinale Basics
Finale Basics
 
Dillard University Student Policies FY2010 - 2011
Dillard University Student Policies FY2010 - 2011Dillard University Student Policies FY2010 - 2011
Dillard University Student Policies FY2010 - 2011
 
Extensible Stylesheet Language
Extensible Stylesheet LanguageExtensible Stylesheet Language
Extensible Stylesheet Language
 
Dillard University CTLAT Faculty Mini Grant Application Feb 14 2012
Dillard University CTLAT Faculty Mini Grant Application Feb 14 2012Dillard University CTLAT Faculty Mini Grant Application Feb 14 2012
Dillard University CTLAT Faculty Mini Grant Application Feb 14 2012
 
Ten golden rules of social media slides 01 09 14
Ten golden rules of social media slides 01 09 14Ten golden rules of social media slides 01 09 14
Ten golden rules of social media slides 01 09 14
 

Similaire à Intro to Web Standards

WEB TECHNOLOGY:Web Essentials and Markup Language HTML
WEB TECHNOLOGY:Web Essentials and Markup Language HTMLWEB TECHNOLOGY:Web Essentials and Markup Language HTML
WEB TECHNOLOGY:Web Essentials and Markup Language HTMLsmitawagh14
 
Introduction to HTML5 and CSS3 (revised)
Introduction to HTML5 and CSS3 (revised)Introduction to HTML5 and CSS3 (revised)
Introduction to HTML5 and CSS3 (revised)Joseph Lewis
 
Introduction to Basic Concepts in Web
Introduction to Basic Concepts in WebIntroduction to Basic Concepts in Web
Introduction to Basic Concepts in WebJussi Pohjolainen
 
Les Basiques - Web Développement HTML5, CSS3, JS et PHP
Les Basiques - Web  Développement HTML5, CSS3, JS et PHPLes Basiques - Web  Développement HTML5, CSS3, JS et PHP
Les Basiques - Web Développement HTML5, CSS3, JS et PHPHamdi Hmidi
 
Web topic 13 html validation tools
Web topic 13  html validation toolsWeb topic 13  html validation tools
Web topic 13 html validation toolsCK Yang
 
Presentation on php and Javascript
Presentation on php and JavascriptPresentation on php and Javascript
Presentation on php and JavascriptPradip Shrestha
 
Arcomem training Specifying Crawls Advanced
Arcomem training Specifying Crawls AdvancedArcomem training Specifying Crawls Advanced
Arcomem training Specifying Crawls Advancedarcomem
 
Training report on web developing
Training report on web developingTraining report on web developing
Training report on web developingJawhar Ali
 
HTTP protocol and Streams Security
HTTP protocol and Streams SecurityHTTP protocol and Streams Security
HTTP protocol and Streams SecurityBlueinfy Solutions
 
Wt-UNNIT-1 (1).ppt
Wt-UNNIT-1 (1).pptWt-UNNIT-1 (1).ppt
Wt-UNNIT-1 (1).pptGReshma10
 
Front end for back end developers
Front end for back end developersFront end for back end developers
Front end for back end developersWojciech Bednarski
 
Arcomem training specifying-crawls
Arcomem training specifying-crawlsArcomem training specifying-crawls
Arcomem training specifying-crawlsarcomem
 

Similaire à Intro to Web Standards (20)

Introduction to JavaScript
Introduction to JavaScriptIntroduction to JavaScript
Introduction to JavaScript
 
Html and Xhtml
Html and XhtmlHtml and Xhtml
Html and Xhtml
 
WEB TECHNOLOGY:Web Essentials and Markup Language HTML
WEB TECHNOLOGY:Web Essentials and Markup Language HTMLWEB TECHNOLOGY:Web Essentials and Markup Language HTML
WEB TECHNOLOGY:Web Essentials and Markup Language HTML
 
Introduction to HTML5 and CSS3 (revised)
Introduction to HTML5 and CSS3 (revised)Introduction to HTML5 and CSS3 (revised)
Introduction to HTML5 and CSS3 (revised)
 
Intro to JavaScript
Intro to JavaScriptIntro to JavaScript
Intro to JavaScript
 
Introduction to Basic Concepts in Web
Introduction to Basic Concepts in WebIntroduction to Basic Concepts in Web
Introduction to Basic Concepts in Web
 
Les Basiques - Web Développement HTML5, CSS3, JS et PHP
Les Basiques - Web  Développement HTML5, CSS3, JS et PHPLes Basiques - Web  Développement HTML5, CSS3, JS et PHP
Les Basiques - Web Développement HTML5, CSS3, JS et PHP
 
Html 5
Html 5Html 5
Html 5
 
XHTML
XHTMLXHTML
XHTML
 
Unit 01 (1).pdf
Unit 01 (1).pdfUnit 01 (1).pdf
Unit 01 (1).pdf
 
Web topic 13 html validation tools
Web topic 13  html validation toolsWeb topic 13  html validation tools
Web topic 13 html validation tools
 
Presentation on php and Javascript
Presentation on php and JavascriptPresentation on php and Javascript
Presentation on php and Javascript
 
Web technology today
Web technology todayWeb technology today
Web technology today
 
Arcomem training Specifying Crawls Advanced
Arcomem training Specifying Crawls AdvancedArcomem training Specifying Crawls Advanced
Arcomem training Specifying Crawls Advanced
 
Training report on web developing
Training report on web developingTraining report on web developing
Training report on web developing
 
HTTP protocol and Streams Security
HTTP protocol and Streams SecurityHTTP protocol and Streams Security
HTTP protocol and Streams Security
 
Wt-UNNIT-1 (1).ppt
Wt-UNNIT-1 (1).pptWt-UNNIT-1 (1).ppt
Wt-UNNIT-1 (1).ppt
 
Front end for back end developers
Front end for back end developersFront end for back end developers
Front end for back end developers
 
Web
WebWeb
Web
 
Arcomem training specifying-crawls
Arcomem training specifying-crawlsArcomem training specifying-crawls
Arcomem training specifying-crawls
 

Plus de Jussi Pohjolainen

libGDX: Screens, Fonts and Preferences
libGDX: Screens, Fonts and PreferenceslibGDX: Screens, Fonts and Preferences
libGDX: Screens, Fonts and PreferencesJussi Pohjolainen
 
libGDX: User Input and Frame by Frame Animation
libGDX: User Input and Frame by Frame AnimationlibGDX: User Input and Frame by Frame Animation
libGDX: User Input and Frame by Frame AnimationJussi Pohjolainen
 
Intro to Building Android Games using libGDX
Intro to Building Android Games using libGDXIntro to Building Android Games using libGDX
Intro to Building Android Games using libGDXJussi Pohjolainen
 
Advanced JavaScript Development
Advanced JavaScript DevelopmentAdvanced JavaScript Development
Advanced JavaScript DevelopmentJussi Pohjolainen
 
libGDX: Simple Frame Animation
libGDX: Simple Frame AnimationlibGDX: Simple Frame Animation
libGDX: Simple Frame AnimationJussi Pohjolainen
 
libGDX: Simple Frame Animation
libGDX: Simple Frame AnimationlibGDX: Simple Frame Animation
libGDX: Simple Frame AnimationJussi Pohjolainen
 
Implementing a Simple Game using libGDX
Implementing a Simple Game using libGDXImplementing a Simple Game using libGDX
Implementing a Simple Game using libGDXJussi Pohjolainen
 
Building Android games using LibGDX
Building Android games using LibGDXBuilding Android games using LibGDX
Building Android games using LibGDXJussi Pohjolainen
 
Creating Asha Games: Game Pausing, Orientation, Sensors and Gestures
Creating Asha Games: Game Pausing, Orientation, Sensors and GesturesCreating Asha Games: Game Pausing, Orientation, Sensors and Gestures
Creating Asha Games: Game Pausing, Orientation, Sensors and GesturesJussi Pohjolainen
 
Creating Games for Asha - platform
Creating Games for Asha - platformCreating Games for Asha - platform
Creating Games for Asha - platformJussi Pohjolainen
 
Intro to Java ME and Asha Platform
Intro to Java ME and Asha PlatformIntro to Java ME and Asha Platform
Intro to Java ME and Asha PlatformJussi Pohjolainen
 

Plus de Jussi Pohjolainen (20)

Moved to Speakerdeck
Moved to SpeakerdeckMoved to Speakerdeck
Moved to Speakerdeck
 
Java Web Services
Java Web ServicesJava Web Services
Java Web Services
 
Box2D and libGDX
Box2D and libGDXBox2D and libGDX
Box2D and libGDX
 
libGDX: Screens, Fonts and Preferences
libGDX: Screens, Fonts and PreferenceslibGDX: Screens, Fonts and Preferences
libGDX: Screens, Fonts and Preferences
 
libGDX: Tiled Maps
libGDX: Tiled MapslibGDX: Tiled Maps
libGDX: Tiled Maps
 
libGDX: User Input and Frame by Frame Animation
libGDX: User Input and Frame by Frame AnimationlibGDX: User Input and Frame by Frame Animation
libGDX: User Input and Frame by Frame Animation
 
Intro to Building Android Games using libGDX
Intro to Building Android Games using libGDXIntro to Building Android Games using libGDX
Intro to Building Android Games using libGDX
 
Advanced JavaScript Development
Advanced JavaScript DevelopmentAdvanced JavaScript Development
Advanced JavaScript Development
 
Introduction to AngularJS
Introduction to AngularJSIntroduction to AngularJS
Introduction to AngularJS
 
libGDX: Scene2D
libGDX: Scene2DlibGDX: Scene2D
libGDX: Scene2D
 
libGDX: Simple Frame Animation
libGDX: Simple Frame AnimationlibGDX: Simple Frame Animation
libGDX: Simple Frame Animation
 
libGDX: Simple Frame Animation
libGDX: Simple Frame AnimationlibGDX: Simple Frame Animation
libGDX: Simple Frame Animation
 
libGDX: User Input
libGDX: User InputlibGDX: User Input
libGDX: User Input
 
Implementing a Simple Game using libGDX
Implementing a Simple Game using libGDXImplementing a Simple Game using libGDX
Implementing a Simple Game using libGDX
 
Building Android games using LibGDX
Building Android games using LibGDXBuilding Android games using LibGDX
Building Android games using LibGDX
 
Android Threading
Android ThreadingAndroid Threading
Android Threading
 
Creating Asha Games: Game Pausing, Orientation, Sensors and Gestures
Creating Asha Games: Game Pausing, Orientation, Sensors and GesturesCreating Asha Games: Game Pausing, Orientation, Sensors and Gestures
Creating Asha Games: Game Pausing, Orientation, Sensors and Gestures
 
Creating Games for Asha - platform
Creating Games for Asha - platformCreating Games for Asha - platform
Creating Games for Asha - platform
 
Intro to Asha UI
Intro to Asha UIIntro to Asha UI
Intro to Asha UI
 
Intro to Java ME and Asha Platform
Intro to Java ME and Asha PlatformIntro to Java ME and Asha Platform
Intro to Java ME and Asha Platform
 

Dernier

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Dernier (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Intro to Web Standards

  • 1. Intro  to  Web  Standards   Jussi  Pohjolainen   TAMK  University  of  Applied  Sciences  
  • 2. Web  Standards?   •  Formal  standards  or  technical  specifica2ons  that   describe  the  World  Wide  Web   •  Web  Standards  consist  of  the  following   –  RecommendaDons  of  the  World  Wide  Web   ConsorDum  (W3C)   •  (X)HTML,  CSS,  SVG,  DOM  ...   –  RFC  documents  published  by  Internet  Engineering   Task  Force  (IETF)   •  URI,  HTTP,  MIME  ...   –  And  also  standards  by  Ecma  InternaDonal  (JavaScript),   Unicode  (Charsets)  and  IANA  (Name  and  number   registries).    
  • 3. World  Wide  Web  ConsorDum   •  The  World  Wide  Web  ConsorDum  (W3C)  is  the   main  internaDonal  standards  organizaDon  for   the  World  Wide  Web   •  Compa2bility  among  industry  members   •  W3C  makes  recommenda)ons  for  the  web   •  Several  recommendaDons     –  XHTML,  DOM,  CSS,  XML...   •  URL:  hXp://www.w3.org/  
  • 4. W3C  RecommendaDon:  XHTML   •  XHTML™  1.0  The  Extensible  HyperText   Markup  Language  (Second  EdiDon)   –  hXp://www.w3.org/TR/xhtml1/   •  Markup  language  for  web  pages   •  Can  be  used  to  create  structured  documents   by  using  structural  semanDcs   –  headings,  paragraph,  lists,  links  ...    
  • 5. Example  of  XHTML   <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Hello</title> <meta http-equiv="content-type" content="application/xhtml +xml; charset=utf-8" /> </head> <body> <h1>Hello World!</h1> <p>Here is a paragraph.</p> </body> </html>
  • 6. XHTML,  HTML?   SGML:  Standard  Generalized  Markup  Language   Meta  language     XML   Meta  language  (subset  of  SGML)   OOXML   MathML   XHTML   HTML   (.docx)   (.mml)   (.xhtml)   (.html)  
  • 7. (X)HTML  versions   •  1996:  HTML  2.0   •  200X:  (X)HTML  5   •  1997:  HTML  3.2   –  2D  drawing,  Offline   –  W3C  RecommendaDon   storage,  drag  and  drop..   •  1997:  HTML  4.0   –  CSS   •  2000:  XHTML  1.0     –  SeparaDon  of  layout  and   the  document  
  • 8. W3C  RecommendaDon:  XML   •  eXtensible  Markup  Language,  is  a  specificaDon   for  creaDng  custom  markup  languages   •  W3C  RecommendaDon   •  Primary  purpose  is  to  help  computers  to  share   data   •  XML  is  meta-­‐language.  This  means  that  you   use  it  for  creaDng  languages.   •  XML  is  an  extensive  concept.  
  • 9. XML-­‐language:  XHTML   <?xml version="1.0"?>! <!DOCTYPE html ! PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"! "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">! <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">! <head>! <title>Minimal XHTML 1.0 Document</title>! </head>! <body>! <p>This is a minimal <a href="http://www.w3.org/TR/ xhtml1/">XHTML 1.0</a> ! document.</p>! </body>! </html>!
  • 10. XML-­‐language:  SVG   <?xml version="1.0"?>! <!DOCTYPE svg ! PUBLIC "-//W3C//DTD SVG 1.1//EN" ! "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">! <svg width="100%" height="100%" version="1.1"! xmlns="http://www.w3.org/2000/svg">! ! <circle cx="100" cy="50" r="40" stroke="black"! stroke-width="2" fill="red"/>! ! </svg>!
  • 11. XML-­‐language:  MathML   <?xml version="1.0"?>! <!DOCTYPE math:math PUBLIC "-//OpenOffice.org//DTD Modified W3C MathML 1.01//EN" "math.dtd">! <math:math xmlns:math="http://www.w3.org/1998/Math/MathML">! <math:semantics>! <math:mrow>! <math:mi>x</math:mi>! <math:mo math:stretchy="false">=</math:mo>! <math:mfrac>! <math:mrow>! ...! </math:mrow>! <math:annotation math:encoding="StarMath 5.0">x = {-b +- sqrt{b^{2}-4{ac}} } over {2 {a}} </math:annotation>! </math:semantics>! </math:math>!
  • 12. XML-­‐language:  You  can  create  your   own!   <plist version='1.0'>! <dict>! <key>Student and Staff Restaurant</key>! <array>! <string>Gratinated broccoli</string>! <string>Oven baked sausage</string>! <string>Beef in red wine sauce</string>! <string>Ham and pepperoni baguette</string>! <string>Baguette with beef roast</string>! </array>! <key>Cafeteria</key>! <array>! <string>Tomato soup with chevre &amp;</string>! <string>Ham and pasta salad</string>! </array>! </dict>! </plist>!
  • 13. W3C  recommendaDon:  CSS   •  Cascading  Style  Sheets  is  used  to  describe   presentaDon  of  a  document  wriXen  in  some   markup  language   –  Markup  language  can  be  (x)html   •  Different  versions   –  CSS  1,  CSS  2,  CSS  3   •  Different  browsers  support  different  things  in   CSS  
  • 14. XHTML  with  CSS   <?xml version="1.0"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Minimal XHTML 1.0 Document</title> <link rel="stylesheet" href="mystyle.css"> </head> <body> <p>This is a minimal <a href="http://www.w3.org/TR/xhtml1/">XHTML 1.0</a> document.</p> </body> </html>
  • 15. CSS:  mystyle.css   p { font-family: Arial, serif; color: RGB(255,0,0); }
  • 17. JavaScript,  LiveScript,  JScript,   ECMAScript?   •  ScripDng:  add  client-­‐side  behaviour  to  the  site   •  JavaScript   –  Developed  by  Netscape   –  Originally  JavaScript,  then  LiveScript  and  then  back  to   JavaScript.   •  JScript   –  Microsok  made  their  own  version  of  the  JavaScript   •  CompaDbility  problems   •  =>  ECMAScript,  effort  to  standardize  different   versions  of  the  J(ava)Script  
  • 18. ECMAScript   •  ECMAScript  is  a  scripDng  language,   standardized  by  Ecma  InternaDonal   •  In  Browsers,  ECMAScript  is  commonly  called   JavaScript   •  Java/ECMAscript  is  nowdays  heavily  used  with   AJAX  –  based  sites   •  SDll  many  problems  because  of  browser   incompaDbilites  
  • 20. HTTP?   •  HTTP  (Hypertext  transfer  protocol)  is  a   stateless  protocol,  which  is  meant  to   transfer  informaDon  on  intranets  and  World   Wide  Web.   –  RFC2616:   –  hXp://www.w3.org/Protocols/rfc2616/rfc2616.html   •  HTTP  is  a  request  /  response  standard   between  client  and  server  
  • 21. Clients  and  Servers   •  Client   –  Client  makes  a  hXp  request.   –  Client  can  be  a  web  browser,  spider  or  other  end-­‐user   tool   –  Client  is  referred  as  a  user  agent   •  Server   –  Stores  informaDon  and  makes  them  available  to  the   client   –  Gives  hXp  response  to  the  client  
  • 22. Resources   •  Server  provides  resources  to  clients   •  Resources  can  be  accessed  by  HTTP  using   URLs  (  Uniform  Resource  Locator  )   •  Example   –  hXp://www.tamk.fi/~jack/document.doc  
  • 23. Request  and  Response   Client   Client   User-­‐agent:  Firefox   Apache  HTTP  Server   request   response  
  • 24. Request  GET   •  HTTP  defines  eight  methods  that  define  a  acDon   which  will  be  made  to  a  resource   •  Most  typical  method  is  GET   •  By  using  the  GET  -­‐  method,  client  gets  a   representaDon  of  the  resource.   •  Example  of  geqng  a  file   –  URL:  hXp://www.something.com/file.doc   –  1)  Open  connecDon  to  the  server   –  2)  Send  following  through  the  connecDon:   •  GET  /path/to/file.doc  HTTP/1.0   –  3)  Read  the  response  
  • 25. More  on  Request  GET   •  Typically  HTTP  client  is  a  browser  that   creates  the  request  automaDcally  when  user   opens  a  url   •  Browser  creates  the  request  which  contains   addiDon  to  the  GET  lot  of  other  informaDon..   •  For  example,  informa)on  about  user  agent!  
  • 26. Request  and  Response   Client   example  request   Client   User-­‐agent:  Firefox   GET / HTTP/1.1! Apache  HTTP  Server   Host: www.tamk.fi! User-Agent: Mozilla/5.0 (Mac..)! ...! ! response  
  • 27. Response   •  When  making  a  GET  request  to  a  certain  URL,   client  gets  a  response   •  Response  consists  of   –  1)  Header  informaDon   –  2)  Resource  itself   •  Browser  makes  decisions  based  on  the  header   informaDon..  
  • 28. Example  of  Response   HTTP/1.1 200 OK! Date: Fri, 12 Jan 2007 07:51:41 GMT! Server: Apache/1.3.37 (Unix)! Last-Modified: Wed, 10 Jan 2007 12:43:34 GMT! Header   ETag: "479a0-16a9-45a4df76"! Accept-Ranges: bytes! Content-Length: 5801! Connection: close! Content-Type: text/html; charset=iso-8859-1! ! <html>! Resource   <head>! <title>...! !
  • 29. Request  and  Response   Client   example  request   Client   User-­‐agent:  Firefox   GET / HTTP/1.1! Apache  HTTP  Server   Host: www.tamk.fi! User-Agent: Mozilla/5.0 (Mac..)! ...! example  response   HTTP/1.1 200 OKDate: Fri, 12 Jan 2007 07:51:41 GMTServer: Apache/ 1.3.37 (Unix)...! ...! <html><head><title>...! !
  • 30. Firefox  and  HTTP  headers  
  • 31. Client  vs.  Server   •  In  client-­‐side  techniques,  browser  or  it's   plugins  executes  dynamic  behaviour   –  Flash,  JavaScript,  Applets...   •  In  server-­‐side  techniques,  server  is  responsible   for  the  dynamic  behaviour   –  PHP,  Java  EE..   –  Persistant  Storage  is  implemented  by  using   databases,  for  example:  MySQL