Enrera
Mòdul 1

Creació i gestió d'entorns web dinàmics (PHP)

  Pràctica
1
2
3
4
5
6
7
   
Exercicis
Exercicis
 
 

 Llenguatges web

   
 
Introducció
   
 

 

  Les pàgines web són un mitjà d'informació molt utilitzat a tots els nivells, i es reflecteix en la contínua evolució dels llenguatges web i les seves aplicacions en tots els camps de la nostra societat.
   
  A més, ens trobem un gran ventall d'eines per dotar les pàgines web d'un caràcter dinàmic i interactiu. Aquesta característica s'aconsegueix mitjançant scripts programables. Entre els més utilitzats hi ha el Javascript / VisualScript, els CGI en Perl o C, el Java, el VisualNet, l'ASP i el llenguatge PHP, entre d'altres
   
   
  L'HTML
  Podem definir l'HTML com un llenguatge basat en etiquetes que s'introdueixen en llocs estratègics en un text ASCII que defineixen el format d'una pàgina de text, i que permet inserir elements textuals i multimèdia (imatges, sons, vídeos...).
   
  L'HTML no diu directament a l'ordinador com mostrar en pantalla el format GIF o JPG d'una imatge, ni la forma d'obtenir el tipus de font del sistema operatiu. L'HTML es basa únicament en una sèrie de marques que un altre programa ha d'interpretar.
   
  Aquest llenguatge sempre s'ha caracteritzat per ser un llenguatge estàtic, és a dir, una vegada carregada la pàgina en el nostre navegador, no pot ser modificada, ni en la forma ni en el contingut.
   
  L'HTML ha evolucionat dividint-se en dos models, el CSS i l'XML, per solucionar alguns problemes com el de separació real de dades i presentació.
   
  La utilització dels estàndards CSS (Cascading Style Sheets (full d'estil)) fa que el codi HTML pugui centrar-se a mantenir les dades de la pàgina, deixant al CSS la major part de les tasques de presentació (color, posició, mida, tipus de lletres). L'avantatge d'aquest sistema és que els documents CSS poden ser intercanviables i globals, i que aconsegueixen un resultat més hetereogeni i uniforme.
   
  Basat en un principi similar al CSS, apareix l'XSLT, que és un llenguatge d'estils creat per treballar amb llenguatges derivats de l' XML, i que oferix unes característiques més potents i flexibles que el CSS.
   
  L'XML és un llenguatge fonamentat en marques o etiquetes que s'utilitza per crear especificacions o models de documents o dades a fi de poder estandarditzar l'intercanvi de dades entre els components d'una aplicació, entre diferents aplicacions, o sistemes. L'XML es presenta com un estàndard d'intercanvi de dades i, per tant la seva tecnologia i filosofia no són propietat de cap empresa. Com a principals avantatges podem destacar:
   
 
  • La possibilitat de dissenyar tipus de documents personalitzats; això facilita les tasques de disseny en projectes complexos en què no hi ha etiquetes HTML específiques.
 
  • Funcions d'hipertext millorades respecte a l'HTML.
 
  • La informació és més compatible, ja que la flexibilitat de les etiquetes no ha d'adaptar-se a cap navegador específic, simplement ha de suportar l'XML.
   
  Per tant, és fàcil entreveure que la filosofia XML / XLST s'està estenent i prenent com a patró a seguir.
   
  Consulta d'estàndards: Worl Wide Web Consortium
   
  El JavaScript i el VisualScript
  Es tracta de llenguatges de script que es basen en codis no complicats, interpretats, i que s'executen habitualment com a llenguatges de suport per a aplicacions més grans. Aquests llenguatges s'utilitzen tant en la part del client, com suport a la interacció de l'usuari, com pàgines d'Internet interactives (DHTML), com en la part de servidor, dins les tecnologies de pàgines dinàmiques.
   
  Aquest codi s'insereix dins del codi HTML de les pàgines web afegint-hi interactivitat; no hi ha cap pàgina web que no incorpori alguna rutina en llenguatge script. Aquests programes no generen cap tipus de codi compilat, simplement el navegador s'encarrega d'interpretar-ho una vegada s'ha descarregat la pàgina a l'ordinador del client.
   
  El JavaScript i el VisualScript són dos llenguatges similars però predestinats a enfrontar-se, per sempre. El primer va ser creat per Netscape i recolzat per Sun Microsystems, i el segon va ser creat per Microsoft.
   
  El VisualScript és un llenguatge basat en el Visual Basic orientat al web i, per tant, la seva estructura general és coneguda pels programadors del Visual Basic. Realment es basa en el llenguatge JScript, que s'afegeix a l'estàndard ECMAScript, que intenta unificar criteris entorn al llenguatge. Només l'Explorer de Microsoft sap interpretar aquest llenguatge, mentre que el Javascript és reconegut tant pel Netscape - Mozilla, Opera, com per l'Explorer de Microsoft, però té algunes funcionalitats menys que el seu oponent.
   
  Cap d'aquests dos llenguatges és excloent; ens podem trobar pàgines web HTML que contenen ambdós codis i sense disminuir la funcionalitat. A més, per la seva facilitat i estandardització, algunes operacions de validació i comprovació de dades que s'han d'enviar des del client al servidor, es fan en aquests llenguatges.
   
 
Exemples Javascript
Exemples Visualscript
<script language="JavaScript"> <%@ language="VBScript" %>
alert(....) MsgBox(...)
var x_variable Dim x_variable
   
  Llenguatges de servidor
   
  És una tecnologia que es basa en els llenguatges de script, i que s'insereix dins les pàgines HTML per aconseguir continguts dinàmics de la informació de les pàgines web. Per tant, dins d'una pàgina HTML es pot accedir en temps real a una base de dades per consultar, modificar i inserir-hi informació a partir d'una pàgina web.
   
  Aquests llenguatges no necessiten compilació, sinó que s'interpreten cada vegada que es rep una petició d'una pàgina web al servidor, i una vegada executada retorna al client que ha fet la petició un codi HTML, que es pot visualitzar en qualsevol navegador.
   
  En principi, pot semblar que amb un llenguatge interpretat es gasta més temps que si el programa fos compilat, ja que el servidor ha de fer un esforç d'interpretació d'aquest codi. Però aquest aspecte és relatiu, ja que el temps utilitzat pel servidor en intepretar el codi és insignificant comparat amb el temps que utilitza per accedir a les bases de dades, al temps de resposta del client... En la majoria d'apliacions web, realment no s'aprecia gaire diferència entre els programes compilats i els interpretats.
   
 

 

 

   
  El client envia una sol·licitud HTTP al servidor web. El servidor web reacciona, llegeix el codi de script i executa les comandes, i envia un document HTML per al client. Com que el servidor és l'únic que executa el codi, el client mai pot veure el codi del programa, només pot observar el resultat en HTML.
   
  Actualment, hi ha en el mercat diferents opcions com a resposta als llenguatges en el costat del servidor, com ara :
   
 
  • ASP , de Microsoft
 
  • JSP i Servlets, de SUN
 
  • PHP com a projecte Open Source
 
   
L'ASP
   
  La tecnologia que desenvolupa Microsoft per oferir un model de desenvolupament basat en llenguatges interpretats en el servidor s'anomena ASP (Active Server Pages).
   
  L'estàndard ASP permet poder utilitzar qualsevol llenguatge per a la programació, si bé Microsoft afavoreix que s'utilitzi el VBScript, i en segon pla el JScript (versió de l'estàndard Javascript feta per Microsoft ). En teoria, i mitjantçant la programació, és possible adaptar versions de llenguatges com Pascal, C i altres, per utilitzar-los dins de pàgines ASP.
   
  Quan va sortir al mercat el ColdFusion (1994), una empresa anomenada Aspect Software va crear un producte anomenat Hot Lava, que era semblant al ColdFusion però que utilitzava un llenguatge d'automatizació Visual de programació. Als inicis del 1996, Microsoft va comprar l'empresa i a finals d'aquell mateix any va llançar al mercat l'ASP, que formava part de l'Internet Information Server (IIS).
   
 
http://www.asptoday.com
   
  L'ASP està disponible de forma gratuïta amb l'Option Pack del Windows NT, i forma part de la plataforma Windows 2000; però té un gran desavantatge: que s'executa en servidors web de Microsoft (tot i que hi ha també algunes opcions de fer-ho en Linux).
 
El JSP
   
  El llenguatge Java Server Pages ofereix unes característiques molt semblants als seus competidors directes. Una pàgina JSP conté codi HTML, i codi JAVA inserit. Aquestes aplicacions són funcionals tant en servidors Linux com en Windows.
   
  El desenvolupador del JSP té al seu abast, a més del llenguatge, totes les biblioteques JavaBeans i components EJB de Java.
   
  El Java és un llenguate de programació ben estructurat i molt d'acord amb les necessitats actuals dels models d'aplicatius client-servidor. El Java és propietat de Sun Microsystems.
   
 
   
  En el curs D110 de Java, en el mòdul 7 pràctica 2 podeu trobar més informació.
   
El PHP
  Història
   
  Tardor de l'any 1994. Un canadenc-danès anomenat Rasmus Lerdorf necessitava conèixer, entre altres coses, si la gent accedia a la publicitat que tenia a la seva web, i volia afegir dinamisme en el disseny d'aquesta.
   
  Va crear un seguit d'utilitats i macros, i les va anomenar Personal Home Page Tools (PHP). Durant l'any 95 va incorporar al seu sistema un Form Interpreter (FI) i va posar totes aquestes eines a disposició de tota la comunitat d'Internet; ràpidament es va guanyar la popularitat dins dels àmbits dels desenvolupadors, fet que va estendre ràpidament PHP-FI.
   
 

Zeev Suraski i Andy Gutmans (ZEND) eren dos analistes que els va agradar la idea de Lerdorf, van utilitzar el PHP per a un projecte de la universitat i van redissenyar el nucli, amb el nom de PHP3. Animats pel seu professor, Michael Rodeh, que també era el director d'investigació de IBM a Haifa, Israel, van presentar a la comunitat PHP el codi font del nou motor.

   
  El PHP va passar a ser un llenguatge de programació molt potent, i de codi obert, que va créixer molt ràpidament. Poder introduir codi php dins de textos html era realment innovador: fins en aquell moment les aplicacions web utilitzaven el Perl, el C++ i el CGI.
   
  Últimament, s'ha tornat a redissenyar completament l'intèrpret, afegint potència i noves funcionalitats per evolucionar fins al PHP4, que s'ha consolidat com a competidor molt seriós de ColdFusion i ASP. Implementa un suport orientat a objectes, i s'han incorporat tipus nous i noves opcions de comprovació de tipus.
   
  Actualment, més d'un milió i mig de hosts utilitzen el motor de script del PHP. Moltes companyies comercials inclouen el motor dins els servidors web, com per exemple Linux, Sthonghol de C2...
   
  El desenvolupament del codi obert per un costat i el ferm suport comercial per l'altre, han portat al PHP a graus inimaginables. El nou suport JAVA i DCOM, les avançades característiques de l'XML i les millores de la programació orientada a objectes POO, han incrementat l'acceptació del PHP en entorns comercials, i l'han convertit en una eina viable per a la programació en entorns empresarials.
 

 

 
  Característiques
 
  • És un llenguatge robust i potent de programació, inserida en documents HTML.
 
  • Ha estat escrit especialment per a web, per tant, no arrossega cap excés de càrrega com altres llenguatges.
 
  • Disposa de biblioteques per connectar amb la majoria de sistemes de gestió de bases de dades.
 
  • Proporciona suport per a la majoria de protocols de comunicació a Internet (HTTP, IMAP, FTP, LDAP, INMP...).
 
  • Codi font obert. El PHP està escrit en C.
 
  • Gratuït.
 
  • Portable i multiplataforma (W95,98,200,XP,NT,Unix, Linux...); això fa que sigui portable a qualsevol tipus de plataforma sense modificació del codi.
 
  • Eficiència. Consumeix pocs recursos.
 
  • Gran velocitat de desenvolupament de projectes.
   
  Cost i obtenció
   
 

El PHP és codi obert, això significa que qualsevol persona pot utilitzar el programari lliurement, fins i tot per a ús comercial o empresarial. Quasi la meitat del nucli PHP està sota llicència comercial, l'anomenat motor Zend. La resta del nucli PHP i el mateix llenguatge PHP segueixen sent Open Source.

   
  Aquest fet augmenta l'estabilitat i robustesa del sistema, ja que qualsevol pot analitzar el codi, per millorar-lo, enriquir-lo i detectar ràpidament errors.
  Termes de llicència: http://es.php.net/license/3_0.txt
 

El programari en les seves versions en codi font o binàries, per a diferents plataformes, es pot descarregar de:

http://www.php.net/downloads.php

 
  El PHP versus...
  El PERL. Es troba en molts llocs web; és igual de potent, però molt més complicat. El PERL neix l'any 1986, quan el web encara no existia.
   
  L'ASP. És l'alternativa de Microsoft, però sol anar lligat a l'IIS de Microsoft, com a servidor web, mentre que el PHP funciona en tots els servidors web i en tots els sistemes operatius, fets que no són tan contundents amb l'ASP.
   
 
   
  Una de les raons de més pes que defensa el PHP enfront de l'ASP i el ColdFusion és que aquests dos últims són productes comercials i de codi tancat, mentre que el PHP permet veure el codi, amb la tranquil·litat i curiositat que això implica quan les coses van mal dades.
   
El ColdFusion
   
  Va néixer quasi al mateix moment que el PHP, prop de l'any 1994. Un desenvolupador d'aplicacions web anomenat Jeremy Allaire va utilitzar el CGI i el Perl per als seus projectes i les aplicacions web, pero es va proposar fer les coses més senzilles i ho va aconseguir. Es va associar amb el seu germà i tots dos van crear el ColdFusion.
   
  El ColdFusion pot reposar sobre diferents tipus de servidors web i plataformes (Windows, Linux...) amb versions de lliure distribució. Ara bé, moltes de les funcionalitats d'aquest llenguatge, com l'accés a BD, només s'inclou en la versió comercial.
   
  A diferència del PHP i l'ASP, el ColdFusion utilitza una sintaxi de tipus de marcatge anomenat CFML, més complicada que la sintaxi de programació del PHP i l'ASP.
   
   
Atenció !

Podem trobar molta més informació d'alguns dels llenguatges web detallats en els cursos telemàtics de l'àrea de formació en tecnologies de la informació:

   
 
  • D72. Disseny i creació de pàgines web
 
  • D98. Disseny i creació de pàgines web (avançat)
 
  • D108. El DHTML i el JavaScript
   
 
Enrera
Pràctica
1
2
3
4
5
6
7
Exercicis
Exercicis