Clase 2 Lenguajes de Programación Web

rtillero 136 views 10 slides Feb 03, 2021
Slide 1
Slide 1 of 10
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10

About This Presentation

Clase 2 Lenguajes de Programación Web


Slide Content

Electiva II
Clase 2
Lenguajes de Programación Web
Ing. José Ricardo Tillero UPTAEB

Lenguajes de Programación Web
Introducción
Enlaactualidad,existeunagrancantidaddelenguajesdeprogramación
enfocadosaldesarrolloWeb.
ParalaprogramacióndelladodelclienteoFrontEnd,tenemosHTMLy
CSS,estoslenguajespermitencrearpaginasysitiosWebestáticos.Para
lacreacióndepaginas,sitiosWebyaplicacionesWebdinámicas,
debemoscombinarlosanterioreslenguajesconotroslenguajesque
permitanlainteraccióndinámicaconelusuario.Entreesoslenguajes,
tenemos:JavaScript,PHP,PhytonyRuby.
ParalaprogramacióndelladodelServidorWeboBackEnd,tenemos
Perl,PHP,Ruby,JSP,estoslenguajespermiten.

Lenguajes de Programación Web
HTML
HTML(LenguajedeMarcasdeHipertexto,delinglésHyperTextMarkupLanguage)eselcomponente
másbásicodelaWeb.Defineelsignificadoylaestructuradelcontenidoweb.AdemásdeHTML,
generalmenteseutilizanotrastecnologíasparadescribirlaapariencia/presentacióndeunapáginaweb
(CSS)olafuncionalidad/comportamiento(JavaScript).
"Hipertexto"hacereferenciaalosenlacesqueconectanpáginaswebentresí,yaseadentrodeunúnico
sitioweboentresitiosweb.LosenlacessonunaspectofundamentaldelaWebHTMLutiliza"marcas"
paraetiquetartexto,imágenesyotrocontenidoparamostrarloen
unnavegadorWeb.LasmarcasHTMLincluyen"elementos"especialescomo<head>,<title>,<body>,
<header>,<footer>,<article>,<section>,<p>,<div>,<video>,<ul>,<ol>,<li>ymuchosotros.
UnelementoHTMLsedistinguedeotrotextoenundocumentomediante"etiquetas",queconsistenen
elnombredelelementorodeadopor"<"y">".Elnombredeunelementodentrodeunaetiquetano
distingueentremayúsculasyminúsculas.Esdecir,sepuedeescribirenmayúsculas,minúsculasouna
mezcla.Porejemplo,laetiqueta<title>sepuedeescribircomo<Title>,<TITLE>odecualquierotra
forma.

Lenguajes de Programación Web
CSS
HojasdeEstiloenCascada(delinglésCascadingStyleSheets)oCSSes
ellenguajedeestilosutilizadoparadescribirlapresentaciónde
documentosHTMLoXML(incluyendovarioslanguagesbasadosenXML
comoSVG,MathMLoXHTML).CSSdescribecomodebeserrenderizado
elelementoestructuradoenlapantalla,enpapel,enelhablaoenotros
medios.
CSSesunodeloslenguajesbasedelaOpenWebyposeeuna
especificaciónestandarizadaporpartedelW3C.
CSSesutilizadoparadiseñarydarestiloalaspáginasweb,porejemplo,
alterandolafuente,color,tamañoyespaciadodelcontenido,dividirloen
múltiplescolumnasoagregaranimacionesyotrascaracterísticas
decorativas.

Lenguajes de Programación Web
JavaScript
JavaScript(JS)esunlenguajedeprogramaciónligero,interpretado,ocompiladojusto-a-
tiempo(just-in-time)confuncionesdeprimeraclase.Sibienesmásconocidocomoun
lenguajedescripting(secuenciasdecomandos)parapáginasweb,yesusadoenmuchos
entornosfueradelnavegador,talcomoNode.js,ApacheCouchDByAdobeAcrobat.
JavaScriptesunlenguajedeprogramaciónbasadaenprototipos,multiparadigma,deun
solohilo,dinámico,consoporteparaprogramaciónorientadaaobjetos,imperativay
declarativa(porejemploprogramaciónfuncional).
ElestándarparaJavaScriptesECMAScript.Apartirdel2012,todoslosnavegadores
modernossoportancompletamenteECMAScript5.1.Losnavegadoresviejossoportanal
menosECMAScript3.DesdeJunio17,2015,ECMAInternationalpublicolasextaversión
principaldeECMAScript,queoficialmentesellamaECMAScript2015,yqueinicialmentese
denominóECMAScript6oES6.
NoconfundasJavaScriptconellenguajedeprogramaciónJava.Ambos"Java"y
"JavaScript"sonmarcasomarcasregistradasdeOracleenlosEstadosUnidosyotros
países,Sinembargo,losdoslenguajesdeprogramacióntienensintaxis,semánticayusos
muydiferentes.

Lenguajes de Programación Web
PHP
PHPesunlenguajedeprogramacióndeusogeneralqueseadaptaespecialmentealdesarrolloweb.Fue
creadoinicialmenteporelprogramadordanés-canadienseRasmusLerdorfen1994.
ElcódigoPHPsueleserprocesadoenunservidorwebporunintérpretePHPimplementadocomoun
módulo,undaemonocomounejecutabledeinterfazdeentradacomún(CGI).Enunservidorweb,el
resultadodelcódigoPHPinterpretadoyejecutado—quepuedesercualquiertipodedatos,comoel
HTMLgeneradoodatosdeimágenesbinarias—formaríalatotalidadopartedeunarespuestaHTTP.
Existendiversossistemasdeplantillas,sistemasdegestióndecontenidosyframeworksquepueden
emplearseparaorganizarofacilitarlageneracióndeesarespuesta.Tambiénsepuedeinterpretary
ejecutaruncódigoPHPcualquieraatravésdeunainterfazdelíneadecomandos(CLI).
ElintérpreteestándardePHP,impulsadoporMotorZend,esunsoftwarelibrepublicadobajoLicencia
PHP.PHPhasidoampliamenteportadoypuedeserdesplegadoenlamayoríadelosservidoresweben
casitodoslossistemasoperativosyplataformas,deformagratuita.

Lenguajes de Programación Web
Python
Pythonesactualmenteelsegundolenguajedecodificaciónmáspopular
enGitHub(despuésdeJavaScript).Esamadoporsusintaxisclaray
concisa–cuandosecodificaenPython,hayqueescribirmuchomenos
queenlamayoríadeloslenguajes.
Pythonesunproyectodecódigolibreyabierto,gestionadoporla
FundacióndeSoftwarePython.Soportalosparadigmasde
programaciónestructurada,orientadaaobjetosyfuncional,ytieneuna
extensaBibliotecaEstándarqueesunacoleccióndemódulosPythonde
usocomún.
EllenguajePythonseutilizafrecuentementeenelaprendizaje
automático,eneldesarrollowebdebackend(siendoDjangoel
frameworkwebmáspopular),enelanálisisdedatos,enla
automatización,enlacomputacióncientíficayenelwebscraping.

Lenguajes de Programación Web
Ruby
Rubyesunlenguajedescriptsdecódigoabiertoypropósitogeneralconuna
sintaxiscompactayfácildeleer.Siguelosprincipiosdelaprogramación
orientadaaobjetosypermiteescribiruncódigolimpioylógico.EnRuby,todo
esunobjeto,inclusolostiposquesonprimitivosenlamayoríadeloslenguajes,
comolosbooleanosylosenteros.
Losconceptosorientadosalosobjetoscomolaherencia,lasmezclasylas
metaclasestambiénseutilizanmucho.
AunqueRubytieneundiseñopuramenteorientadoalosobjetos,también
soportaprogramaciónprocedimental(lasfuncionesyvariablesdefinidasfuera
delasclasespertenecenalobjetoSelf)yprogramaciónfuncional(atravésde
funcionesanónimas,cierresycontinuaciones).
Rubyseutilizaprincipalmenteeneldesarrollowebdebackend,potenciando
algunosrobustosmarcosdeaplicaciónwebcomoRubyonRails.

Lenguajes de Programación Web
Perl
Perlesunlenguajedescriptingdepropósitogeneralquehaexistidopormásdetreinta
años(desde1987).Originalmente,fuecreadocomounlenguajedescriptsUNIXparael
procesamientodeinformes.Deahívienetambiénsunombre,yaqueelacrónimoPerl
significa«PracticalExtractionandReportingLanguage(LenguajePrácticodeExtraccióny
Reporte)».
EllenguajePerlsehizopopularenladécadade1990cuandolosprogramadores
comenzaronautilizarloampliamenteparalaelaboracióndescriptsCGI(CommonGateway
Interface–Interfazdeentradacomún),queesunaespecificacióndeinterfazmásantigua
paralosservidoresweb(actualmente,seutilizaprincipalmenteenlossitiosheredados).
Aunquehoyendíanoeslaelecciónmásfrecuentedelosdesarrolladoresweb,Perlpuede
serutilizadoconéxitoeneldesarrollodebackend.AdemásdelentornodeejecuciónCGI,
tambiénseejecutaenlosservidoreswebApacheyNginx–lapilaLAMPesenrealidad
LAMPP,quesignificaLinux,Apache,MySQL,PHP,yPerl.Tambiénexistenalgunosmarcos
dedesarrollowebPerl,siendolosmáspopularesCatalyst,MojoliciousyDancer.

Lenguajes de Programación Web
JSP (JavaServerPages)
JSPesunacrónimodeJavaServerPages,queencastellanovendríaadeciralgocomoPáginasde
ServidorJava.Es,pues,unatecnologíaorientadaacrearpáginaswebconprogramaciónenJava.
ConJSPpodemoscrearaplicacioneswebqueseejecutenenvariadosservidoresweb,demúltiples
plataformas,yaqueJavaesenesenciaunlenguajemultiplataforma.LaspáginasJSPestáncompuestas
decódigoHTML/XMLmezcladoconetiquetasespecialesparaprogramarscriptsdeservidorensintaxis
Java.Portanto,lasJSPpodremosescribirlasconnuestroeditorHTML/XMLhabitual.
ElmotordelaspáginasJSPestábasadoenlosservletsdeJava(programasenJavadestinadosa
ejecutarseenelservidor),aunqueelnúmerodedesarrolladoresquepuedenafrontarlaprogramaciónde
JSPesmuchomayor,dadoqueresultamuchomássencilloaprenderquelosservlets.
EnJSPcreamospáginasdemaneraparecidaacomosecreanenASPoPHP.Generamosarchivoscon
extensión.jspqueincluyen,dentrodelaestructuradeetiquetasHTML,lassentenciasJavaaejecutaren
elservidor.Antesdequeseanfuncionaleslosarchivos,elmotorJSPllevaacabounafasede
traduccióndeesapáginaenunservlet,implementadoenunarchivoclass(BytecodesdeJava).Esta
fasedetraducciónsellevaacabohabitualmentecuandoserecibelaprimerasolicituddelapágina.jsp,
aunqueexistelaopcióndeprecompilarencódigoparaevitaresetiempodeesperalaprimeravezque
unclientesolicitalapágina.