Una història de la web

... i el desenvolupament web

1980 - 1991

Naixement de la web

 

 

Invenció i implementació de:

HTTP, HTML, URL + Navegador

HTTP

GET, POST, PUT, DELETE...

HTML

<h1>, <p>, <ul>... i sobretot <a>

URI

Uniform Resource Identifier

Navegador

Primer navegador: WorldWideWeb

Primera web (1991)

1992 - 1999

La web estàtica

Webs en HTML

<html>
  <head>
    <title>Web title</title>
  </head>
  <body>
    <font color="#A40317">
      <font size=+2>
        Header
      </font>
    </font>
    <p>
      <font color="#000000">
        Lorem ipsum...
      </font>
    </p>
    <p>
      <font color="#000000">
        Lorem ipsum...
      </font>
    </p>
  </body>
</html>

Vilaweb (1996)

UB (1996)

Generalitat (1997)

Limitacions

El contingut és estàtic

Les webs són arxius .html

 

L'estil és una mica pobre

Estil a l'HTML:

<font color="#ff000">,  <font size="+2">,  <table>

 

 

2000 - 2006

La web dinàmica

 

Blogs, fòrums, wikis...

Estil amb CSS

Fonts, colors, espaiat...

Al servidor triomfa el LAMP

Linux + Apache + MySQL + PHP

Arquitectura LAMP

Request

Response

Wikipedia (2003)

Wordpress (2005)

Un client més ric?

JavaScript

  • S'executa al navegador
  • Molt lent

 

Exemples:

  • Compte enrere
  • Amagar i mostrar elements

Un client més ric?

Flash

Un client més ric?

Java Applets

Limitacions

 

Pàgines poc interactives

Flash i Java no arriben a tothom

 

Fer webs "des de zero" és costós

 

2007 - 2011

La web interactiva

 

GMail, Twitter, Facebook...

AJAX

Asynchronous JavaScript and XML

 

                                                                       

Canviar el contingut de la web sense actualitzar

GMail

Al servidor: agilitzem el desenvolupament

Request

Response

Sempre fem el mateix

  • CRUD (Create, Read, Update, Delete)

  • Gestionar usuaris (registre, login, contrasenya...)

  • Contingut en diverses llengües

  • Llegim paràmetres per GET i POST

 

Organització del codi: Model - View - Controller

Model - View - Controller


class BlogPost:
    author = User()
    title = String()
    body = Text()

Model

Controller

URLs, GET, POST...


<h1>
  {{ post.title }}
</h1>
<p>
  by {{ post.author }}
</p>
{{ post.body }}

View

Request

Response

Frameworks

Frameworks al LAMP

Request

Response

Django / RoR + AJAX

Microframeworks

2012 - ...

 

Interacció total!

 

Aplicacions riques a tot arreu

HTML5 +  CSS3

 

  • <video>

  • <audio>

  • <canvas>

  • <svg>

  • MathML

  • WebSockets

  • File API

  • CSS transitions

JavaScript renaix

Cada cop més ràpid, fa més coses

Frameworks per JavaScript

al client

JavaScript al servidor

Microframeworks

... i en el futur?

Web 3.0

 

Arquitectures decentralitzades,

enlloc de servidors centrals

Desenvolupament del client unificat

 

Mateixa implementació de webs, aplicacions mòbils...

Una història de la web... i el desenvolupament web

By victorlf

Una història de la web... i el desenvolupament web

  • 358