02 - Introduction to Web Programming · Content • Introduction*to*Internet •...

57
Introduction to Web Programming Dr. Afnizanfaizal Abdullah [email protected] http://comp.utm.my/afnizanfaizal

Transcript of 02 - Introduction to Web Programming · Content • Introduction*to*Internet •...

Page 1: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Introduction  to  Web  Programming

Dr.  Afnizanfaizal  [email protected]

http://comp.utm.my/afnizanfaizal

Page 2: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Content

• Introduction  to  Internet• Introduction  to  World  Wide  Web• Introduction  to  Web  Application  Development

2

Page 3: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

INTRODUCTION  TO  INTERNET

3

Page 4: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Creation  of  ARPANET  (1)

• 1957  – USSR  launched  Sputnik   IUnited  States  were  shocked

• Advanced  Research  Projects  Agency– Thechnological   think-­‐tank– Space,  ballistic  missiles  and  nuclear  test  monitoring

– Communication   between  operational  base  and  subcontracters

4

Page 5: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Creation  of  ARPANET  (2)

• 1962  – computer   research  program– Leaded  by  John  Licklider  (MIT)– Leonard  Kleinrock  published  his  first  paper  on  packet-­‐switching   theory

• 1965  – first  “wide  area  network”  created– Connection   between  Berkeley  and  MIT

5

Page 6: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Creation  of  ARPANET  (3)

• 1967  – plans  for  ARPANET  were  published– MIT  – NPL  (UK)  – RAND

• 1969  – Interface  Message  Processor   (IMP)– 4  computers   (UCLA,  SRI,  UCSB  and  UTAH)

• 1971  – 23  host  computers   (15  nodes)

6

Page 7: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

From  ARPANET  to  Internet  (1)

• 1972  – ARPANET  went  ‘public’– ICCC– First  program  for  person-­‐to-­‐person  communication(e-­‐mail)

• 1973– 75%  of  all  ARPANET  traffic  is  e-­‐mail– First  international  connection   (University  College  of  London)

7

Page 8: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

From  ARPANET  to  Internet  (2)

• 1974  – TCP/IP– Each  network  should  work  on  its  own– Within  each  network  there  would  be  a  ‘gateway’– Packages  would  be  routed  through  the  fastest  available  route

– Large  mainframe  computers– Several  years  of  modification  and  redesign

8

Page 9: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

From  ARPANET  to  Internet  (3)• 1974/1982  – Networks   launched– Telenet  – first  commercial  version  of  ARPANET– MFENet  – researchers   into  Magnetic  Fusion  Energy– HEPNet  – researchers   into  High  Energy  Physics– SPAN  – space  physicists– Usenet  – open  system  focusing  on  e-­‐mail  and  newsgroups

– Bitnet  – university   scientists  using  IBM  computers– CSNet  – Computer  Scientists  in  universities,   industry  and  government

– Eunet  – European  version  of  the  Unix  network– EARN  – European  version  of  Bitnet

9

Page 10: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

From  ARPANET  to  Internet  (4)

• 1974/1982– Very  chaotic– Different  competing  techniques   and  protocols– ARPANET  is  still  the  backbone

• 1982  – The  internet  is  born  using  the  TCP/IP   standard

10

Page 11: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

INTRODUCTION  TO  WWW

11

Page 12: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

From  Internet  to  WWW  (1)

• System  expands– Advances   in  computer   capacities  and  speeds– Introduction  of  glass-­‐fibre  cables

• Problems   created  by  its  own  success– More  computers are  linked  (1984  – 1000  hosts)– Large  volume  of  traffic  (success   of  e-­‐mail)

• 1984  – Introduction   DNS

12

Page 13: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

From  Internet  to  WWW  (2)• Use  of  internet   throughout   the  higher  educational  

system– British  government  – Joint  Academic  Network– US  National  Science   Foundation   – NSFNet

• NSFNet– Use  of  TCP/IP– Federal   Agencies  share  cost  of  infrastructures– NSFNet   shared  infrastructure– Support  behind   the  ‘Internet  Activities  Board’– NSFNet   provided   the  ‘backbone’

13

Page 14: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

From  Internet  to  WWW  (3)• NSFNet– broke  the  capacity  bottleneck– encouraged   a  surge  in  Internet  use

• 1984  – 1,000  hosts• 1986  – 5,000  hosts• 1987  – 28,000  hosts• 1989  – 100,000  hosts• 1990  – 300,000  hosts

– encouraged   the  development   of  private  Internet  providers

• Commercial  users14

Page 15: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

From  Internet  to  WWW  (4)

• 1990  – ARPANET  was  wound  up• 1990  – first  search-­‐engine   (Archie)• 1991  – NSF  removed   restrictions  on  private  access• “Information   superhighway”   project

15

Page 16: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

The  World  Wide  Web  (1)

• 1989  – WWW  conceptby  Tim  Berners-­‐Lee

• 1990  – first  browser/editor   program

16

Page 17: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

The  World  Wide  Web  (2)

• National  Center  for  SuperComputing   Applications  launched  Mosaic  X

• Commercial  websites  began  their  proliferation• Followed  by  local  shool/club/family   sites• The  web  exploded– 1994  – 3,2  million  hosts  and  3,000  websites– 1995  – 6,4  million  hosts  and  25,000  websites– 1997  – 19,5  million  hosts  and  1,2  million  websites– January  2001  – 110  million  hosts  and  30  million  websites

17

Page 18: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

The  World  Wide  Web  (3)

18

Page 19: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

The  World  Wide  Web  (4)• 1989  -­‐ Birth  of  www

– Tim  Berners-­‐Lee  &  his  associates  at  CERN• 1990  -­‐ First  Web  Browser

– Used  within  CERN• 1991  -­‐ Public   offering  of  www• 1993  -­‐ Birth  of  Mosaic

– Graphical,  multimedia  browser  from  NCSA• 1994  -­‐ First  commercial   browser  

– By  Netscape  communications   founded  by  Jim  Clark  and  Marc  Andreessen

19

Page 20: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

The  World  Wide  Web  (5)

• Some  facts– 1994  – Hotmail  starts  web  based  email– 1994  – World  Wide  Web  Consortium   (W3C)  was  founded

– 1995  – JAVA  source   code  was  released– 1996  – Mirabilis  (Israel)  starts  ICQ– 1998  – Google   is  founded

20

Page 21: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

The  World  Wide  Web  (6)

21

Page 22: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

The  World  Wide  Web  (7)

22

Page 23: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Web  Advantages

• Creates  a  virtual  hyperspace– Beyond  geographical  constraints– Break  computer  hardware  and  software  obstacles– Bring  the  whole  world  together

• A  low  cost  way  to  share,  maintain,   and  distribute• Information

– Intranet– Electronic  commerce– Customer  support

23

Page 24: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Web  Client  (browser)

24

Page 25: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Web  Server

25

Page 26: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Web  Surfing  (Logical  View)

26

Page 27: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Web  Surfing  (Network  View)

27

Page 28: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Establishing  Communication

28

Page 29: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Network  Basics• TCP/IP  protocol

– Transmission  Control  Protocol  and  Internet  Protocol– Specifies  how  two  computer  exchange  data

• HTML– Content-­‐based or  structural markup  language,  where   the  codes  

describe  what  the  contents  of  the  document  are.  – Codes  are  used  to  indicate  the  various  parts  of  the  document,  such  as  

headings,  paragraphs,  lists,  etc• IP  address

– Every  computer  has  a  unique  IP  address– 32  bits  in  three  8  bit  number  groups– 131.96.142.17

29

Page 30: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Network  Basics• Domain  name  system  (DNS)– Symbolic  name  for  IP  addressutm.my

– Communication   is  established  by  mapping  a  domain

– name  to  its  IP  address• URL

– Internet  address  consist  of  • protocol• host  name• path

30

Page 31: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Domain’s  URL’s  and  IPs

• Domain  name:  The  specific   address  of  a  computer  on  the  Internet  – http://www.google.com

• Uniform  Resource   Locator  (URL):  – http://www.microsoft.com/faqs.html

• Internet  protocol  (IP)  address• 168.212.226.204  in  binary  form  is  

10101000.11010100.11100010.11001100.

31

Page 32: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

URL

• Abbreviation  of  Uniform  Resource  Locator, the  global  address  of  documents and  other  resources on  the  World  Wide  Web.  

• The  first  part  of  the  address  indicates  what  protocol  to  use,  and  the  second  part  specifies  the  IP  address or  the  domain  name where  the  resource  is  located.  

• For  example,  the  two  URLs  below  point  to  two  different  files  at  the  domain  pcwebopedia.com. The  first  specifies  an  executable  file  that  should  be  fetched  using  the  FTP  protocol;  the  second  specifies  a  Web  page that  should  be  fetched  using  the  HTTP  protocol:  • ftp://www.pcwebopedia.com/stuff.exe• ftp://www.pcwebopedia.com/stuff.zip• http://www.pcwebopedia.com/index.html

32

Page 33: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

URL

<protocol>  <host  name>  <path>

• HTTP-­‐-­‐Hypertext   Transfer  Protocol– Protocol  for  accessing  World  Wide  Web  documents

• FTP-­‐-­‐File  Transfer  Protocol– Protocol  for  transferring   files  from  one  computer  to  another

• Gopher– Protocol  for  accessing  documents  via  Gopher  menus  (archaic;  no  

longer  widely  used)• Telnet

– Protocol  that  allows  users  to  logon  to  a  remote  computer

33

Page 34: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

URL  Host  Name

<protocol>  <host  name>  <path>

<host>.<organization>.<org  type>

www.utm.mywww.google.comwww.acm.orgwww.jpa.gov.my

34

Page 35: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Organization  Types• .org :  non-­‐profit  organizations• .com:  commercial  hosts• .net  :  network  hosts• .edu  :  educational  institutions• .int:  international  treaty  organizations• .gov  :  government  agencies  and  organizations• .mil  :  U.  S.  military• .my :  Malaysia• .jp :  Japan

35

Page 36: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

URL  Examples

• Full  URL–http://www.utm.my/–http://elearning.utm.my/–http://www.maxis.net.my/–http://www.lhdn.gov.my/

• Not  all  characters  can  be  used  in  URL–Which  characters  cannot  be  used?

36

Page 37: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

MIME  Typing  System

• Multipurpose   Internet  Mail  Extensions• A  file  type  naming  system  on  the  Internet

– .html  (or  .htm),  .gif,  .mpeg,  .xls

• Allow  a  browser  to  determine  how  to  work  correctly  with  given  files– Handle  by  the  browser  itself– Call  a  helper  application– Example:  

• use  Adobe  Acrobat  to  read  .PDF  files• use  Microsoft  Excel  to  read  .xls  files

37

Page 38: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

INTRODUCTION  TO  WEB  APPLICATION  DEVELOPMENT

38

Page 39: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

How  the  www  works?

• How  does  a  Web  Browser  (Firefox)  fit  in  this  picture?

39

Text  file  containingan  HTML  web  page

Your  computer,Your  web  browsere.g.  Firefox

Internetconnection

InternetRouters Their  computer,Their  web  server

(an  HTTP  server)e.g.  Apache

/mypage.html

Page 40: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

How  the  www  works?

• Your  browser  connects,  using  the  HTTP  protocol,  to  a  web  server

• The  web  server  fetches  an  HTML  web  page  and  sends  the  HTML  to  your  browser

• Your  browser  turns  the  HTML  page  into  a  nice-­‐looking  page  on  your  screen

40

Page 41: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Static  VS  Dynamic• HTML  documents   are  usually  static• The  contents  can  only  be  changed  manually• There  are  needs   for  dynamic  documents– Search  results– Database  access– Context  sensitive  reply

• Static  – page  appears  exactly  as  it  was  encoded,  nothing  changes

• Dynamic– page  is  compiled,  or  able  to  be  changed

41

Page 42: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Dynamic  Web  pages

• Applications  executed  by  the  server  at  run-­‐time  to  process  client  input  or  generate  document  in  response  to  client  request

• Generating  dynamic  Web  pages  requires  programming

42

Page 43: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Clients  vs  Servers

Clients  (Browser)• Internet  Explorer• Firefox• Mozilla• Netscape• Opera• Amaya• AOL• MSN

Servers• Apache• Microsoft• Netscape• zeus• AOLserver• AV• JavaWebServer• Oracle

43

Page 44: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Scripts:  Server-­‐Side  VS  Client-­‐Side

• Server-­‐side– the  first  type  possible  on  the  Web– action  occurs  at  the  server

• Client-­‐side– generally  easier  to  implement– may  be  prepared  and  implemented  offline– action  occurs  on  the  client  side  (browser)

44

Page 45: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Client-­‐Side  Scripting

• Client  side  scripts  are  embedded   inside  HTML  document.   They  are  interpreted  by  browser.  

• When  Web  browser  encounters   a  script,   it  calls  a  scripting  interpreter,  which  parses  and  deciphers   the  scripting  code.

• Provide  response   to  questions   and  queries  without  interventions   from  the  server– Validate  user  data– Calculate  expressions– Link  to  other  applications

45

Page 46: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Client-­‐Side  Scripting

Client  side  advantages  • Faster  response  time• Better  animation• Simpler  server  programs

Client  side  disadvantages  • Longer  load  time• Browser  compatibility• Complexity   in  web  page  

design

46

Page 47: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

JavaScript

Advantage

• Easy  to  learn  and  use• Wide  browser  support• Protection  of  local  

resources

Disadvantage• Browser  compatibility  

issues• Not  object  oriented• Unable  to  gain  access  to  

local  resources

47

l A  scripting  language  for  Web  pages,  developed   by  Netscape   in  1995l JavaScript  code  is  embedded  directly  in  HTML  (interpreted  by  browser)l good  for  adding  dynamic  features  to  Web  page,  controlling  forms  and  GUI

Page 48: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Java  Applet• Can  be  server-­‐side  or  client-­‐side• Can  define  small,  special-­‐purpose  programs  in  Java  

called  applets• Provides  full  expressive  power  of  Java  (but  more  

overhead)• Applets  are  included  in  Web  pages  using  special  HTML  

tags• Interpreted  by  the  Java  Virtual  Machine  embedded  in  

the  browser• Good  for  more  complex  tasks  or  data  heavy  tasks,  such  

as  graphics

48

Page 49: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Example

• Java  Applet– http://www.frontiernet.net/~imaging/graph_my_equation.html

– http://www.langara.bc.ca/mathstats/resource/onWeb/precalculus/quadratics/index.htm#

• Java  Script– http://www.hostsrv.com/webmab/app1/MSP/quickmath/02/pageGenerate?site=quickmath&s1=graphs&s2=equations&s3=basic

49

Page 50: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Java  Applet

Advantage• High  functionality• Object  oriented  and  full  

graphics  functionality• Protection  of  local  

resources• Wide  Browser  support• With  Java2,  be  able  to  gain  

access  to  local  resources  with  signed  applets

Disadvantage• JVM  compatibility  issues• Difficulty  to  install  and  

configure  for  local  access• Loading  time  and  

performance  may  be  poor  for  large  application.

50

Page 51: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Server-­‐Side  Scripting

Advantages• Allows  creation  of  dynamic  

web  pages• Modifies  HTML  code  on  the  

server  before  sent  to  client• Uses  databases  such  as  

Access,  MySQL  and  Oracle• Responds  to  user  input

Disadvantages• More  complicated  then  

HTML  (with  debugging)• Slower  to  load  on  the  server• Harder  to  learn• Web  server  must  be  

enabled

51

Page 52: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Examples  of  Server-­‐Side  Scripts

• CGI  (Common  Gateway  Interface)– A  standard   for  interfacing  external  applications  with  information  

servers,  such  as  HTTP  or  Web  servers– CGI  program  is  any  program  designed  to  accept  and  return  data  that  

conforms  to  the  CGI  specification  – CGI  program  can  be  written  in  any  language  that  allows  it  to  be  

executed  on  the  system,  such  as:  C/C++,  Fortran,  PERL,  TCL,  Any  Unix  shell,  Visual  Basic,  AppleScript    etc.

• PHP  (Hypertext  Preprocessor )– Widely-­‐used  Open  Source  general-­‐purpose  scripting   language  that  is  

especially  suited  for  web  development  and  can  be  embedded  into  HTML.

52

Page 53: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Examples  of  Server-­‐Side  Scripts

• Active  Server  Pages  (Microsoft)– ASP  is  a  Microsoft  Technology   and    run  on  IIS  (Internet  Information  Server)  &  PWS  (Personal  Web  Server)

• Java  Server  Pages  (Sun)– Sun's   solution  for  developing  dynamic  web  sites– JSP  enable  the  developers   to  directly  insert   java  code  into  jsp  file,  this  makes  the  development  process   very  simple  and  its  maintenance  also  becomes   very  easy

53

Page 54: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Web  Development  Tools

• Many  high-­‐level  tools  exist  for  creating  Web  pages–e.g.,  Microsoft  FrontPage,  Netscape  Composer,  Adobe  PageMill,  Macromedia  DreamWeaver,  –also,  many  applications  have  "save  to  HTML" options  (e.g.,  Word)

54

Page 55: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

What  you  should  already  know?• What  is  the  Internet?– a  network   of  networks  – an  inter-­‐network,   or  Internet

• What  are  Internet  protocols?– the  rules  for  transferring   information   between  programs• HTTP  -­‐ hypertext  transfer  protocol• FTP  -­‐ file  transfer  protocol• SMTP  – simple  mail  transfer  protocol

• What  is  the  World  Wide  Web?– a  set  of  HTML  pages  accessible   using  the  HTTP  protocol

55

Page 56: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

56

How  the  WWW  Works

Text  file  containingan  HTML  web  page

Your  computer,Your  web  browsere.g.  Firefox

Internetconnection

InternetRouters Their  computer,Their  web  server

(an  HTTP  server)e.g.  Apache

/mypage.html

Page 57: 02 - Introduction to Web Programming · Content • Introduction*to*Internet • Introduction*to*World*Wide*Web • Introduction*to*Web*Application*Development 2

Questions???

57