SlideShare una empresa de Scribd logo
1 de 45
Introducción a la
Programación para Internet
Prof. Miguel Vélez Rubio
Agosto de 2009
Contenido



Historia del Internet
Programación en Internet







Programación en el Cliente
(Client Side)
Programación en el Servidor
(Server Side)

Referencias y Sitios de Importancia
Resumen y Preguntas
Historia del Internet
Finales de los 60
 ARPA (Advanced Research Project
Agency) – Department of Defense



Auspicia investigaciones graduadas
Conferencia para presentar ideas –
Universidad de Illinois en UrbanaChampaign




Planes concretos de interconectar una parte
de ellos
Incrementar velocidad de comunicación
Historia del Internet
Finales de los 60
 ARPAnet




Daría base inicial al Internet
Funcionó en septiembre de 1969
Propósitos



Comunicación entre investigadores
Siguiera funcionando aunque parte se
cayera
Historia del Internet
Finales de los 60
 Beneficio inicial: En vez del compartir de
recursos resulto ser la capacidad de lo
que llamarían E-Mail
 Características principales





Intercambio de información simultáneamente
Tecnología de packet switching : mezcla de
paquetes a través de las líneas de
comunicación
Sin tener un control centralizado: no se cae
por pérdida parcial de estaciones o red
Historia del Internet
Finales de los 60
 ARPAnet: Primera configuración


4 estaciones







Universidad de California en Los Ángeles
Instituto de Investigación de Stanford
Universidad de California en Santa Bárbara
Universidad de Utah

Protocolo inicial: TCP



Transmission Control Protocol
Asegura el direccionamiento adecuado de los
mensajes
Historia del Internet


TCP/IP






Surje con el establecimiento de otras
redes como ARPAnet
IP (Internetworking Protocol) permite que
pueda haber comunicación entre las
distintas redes
Da paso a la verdadera Red de Redes

INTERNET
Historia del Internet


Evolución:





Primero sólo Universidades e Instituciones de
Investigación
Luego: La milicia
Finalmente: Gobierno permite acceso a comercio








Oposición de investigadores y militares por probable
degradación en tiempo de respuesta
Ocurrió lo opuesto con la entrada de más y mejores
recurso por la inversión privada
Aumento dramático en ancho de banda y disminución en
costos
Efecto directo en la economía nacional
Historia del Internet
1989
 World Wide Web (WWW)
 Desarrollado por Tim Berners-Lee de CERN
(Laboratorio Europeo de Partículas Físicas)
 Permite localizar y ver documentos de
multimedios por medio de programas y
protocolos particulares
 Se monta sobre el Internet tras reconocer su
potencial
 El Internet y el WWW están consideradas en la
lista de las invenciones más importantes y
revolucionarias en toda la existencia humana
Historia del Internet
1991
 Tim Berners-Lee funda el World Wide Web
Consortium (W3C)








Se dedica al desarrollo de tecnologías no
propietarias para el Web
Meta principal: Hacer que el Web este
disponible para todos
Trabaja la estandarización de Tecnologías:
Recomendaciones
Emite los estándares (recomendaciones)
principales para el establecimiento de enlaces
entre computadoras
Historia del Internet
1993
 Primer Browser con un Interfaz Gráfico sencillo



MOSAIC
Creado por Marc Andreessen

1994
 Marc Andreessen y Jim Clark



Fundan Netscape Communications Corporation
Tirada de Netscape Navigator 1.0
Historia del Internet
1995
 Emerge Java oficialmente como un lenguaje
para el Web



Lenguaje Orientado a Objetos similar a C++
creado por James Gosling
Desarrollado por Sun Microsystems

1996
 WebTV
1997
 Microsoft Internet Explorer 4.0 (Los puso en
el mapa)
 50 millones conectados al Internet
Historia del Internet
1998
 Telecommuting




Más de 10,000,000 trabajando en remoto desde
sus casas

Boom del E-Commerce





E-Bay
Dell
E*Trade
Amazon.com
Historia del Internet
1999
 Microsoft Office 2000 ofrece el poder crear
contenido para el Internet directamente pudiendo
publicar sin conversiones ni tener que hacer
procedimientos especializados
 Apache para Linux comienza a ganar terreno como
la mejor opción entre los Web Servers
2000
 Ventas de E-Commerce exceden los $100 billones
2002
 Wireless Internet
Crecimiento
Hoy: Más de 1 billón de nodos
(350 millones en el 2000)

1984
Más de 1,000 nodos

1969
Cuatro nodos

Tomado de Discovering
Computers 2005,
Thomson Learning y de
Internet World Stats
2008
Crecimiento


Según Datos del Gobierno del año
2000:





El tráfico del Internet se duplica cada 100
días
Crecimiento anual de más de 700%
Para capturar la atención de 60 millones
de personas




Tomo a la radio 15 años
Tomo a la televisión 30 años
Tomo al Internet 3 años
Programación en Internet



Muchas tecnologías existentes
hoy
Tecnologías basadas en Objetos




Object Oriented Programming

Base inicial en programación
Web:


Java (1995)
Tecnología Basada en Objetos







Beneficios: Componentes de Programación
Reutilizables, Más fácil de Entender, Corregir y
Modificar
Su origen se remonta a un lenguaje de 1967
conocido como Stimula 67
Este dio base junto a C, a C++ y de hay a todos
los demás lenguajes que usaron a C++ como
base
Es la base en la programación para el Internet y
el Web
Programación en Internet


Dos áreas principales


Programación en el Cliente (Client Side)




HTML, XHTML, CSS, Java, Java Applets,
JavaScript, Dynamic HTML, XML, VBScript

Programación en el Servidor (Server
Side)


JavaScript, Web Servers (IIS, Apache), ADO,
WML, VBScript, ASP, XML, Perl, CGI,
Python, PHP, ColdFusion, Java, Java
Servlets, JSP
Programación en el Cliente
(Client Side)
XHTML
Extensible Hypertext Markup Language
 Lenguaje de marcas para identificar los elementos de
un documento del Web que permite a un Browser el
mostrarlo en pantalla.
 Sale directamente de HTML con algunos cambios
provenientes de XML. HTML a su vez surgió de SGML
(Standardized General Markup Language) que fue un
estándar muy utilizado en aplicaciones industriales
poderosas desde el 1986.
 Surje directamente de una Recomendación del World
Wide Web Consortium (W3C).
XHTML



Está basado en el manejo de tags y atributos
Permite:








incorporar textos, imágenes, líneas y caractéres
especiales
incorporar enlaces de texto, de imágenes y mapas
de imágenes
incorporar listas, tablas, formas para la entrada de
datos y frames para la presentación de varios
documentos a la vez
controlar el estilo que contendrá la información al ser
presentada por un browser
CSS
Cascading Style Sheets
 Desarrollar páginas para el Web especificando el
estilo que tendrán sus elementos separado de la
estructura interna específica del documento en
XHTML.
 Permite manejo más simple de las páginas e
implementar cambios de forma fácil y rápida,
principalmente si son muchas.
 Se pueden implementar estilos sobre elementos
específicos, sobre el contenido de una página en su
totalidad o sobre el contenido de un Site
definiéndolos en un archivo compartido.
Ejemplo
Java


Código similar a C en su base pero mucho
más fácil que C++ en muchos aspectos







Sin pointers
No es híbrido, es totalmente Orientado a
Objetos
Utilidades simples para manejo gráfico y de
eventos
Manejo automático de memoria
Capacidad de ¨Multithreading¨
Multi-Platform con su capacidad de correr
aplicaciones en páginas del Web
Java


Permite a los desarrolladores lo siguiente:










Crear páginas de Web con contenido dinámico
e interactivo
Desarrollo de aplicaciones para Internet e
Intranet
Desarrollar aplicaciones de empresas a gran
escala
Proveer aplicaciones para unidades electrónicas
de consumo (celulares, PDA´s)
Otros
JavaScript








Object-Based Scripting para el Web
Es uno de los lenguajes tipo Script más utilizado hoy
Es base principal de programación para el Web en las
aplicaciones actuales desde el punto de vista del cliente
Es compatible con los Browsers más utilizados
actualmente
Permite manipular elementos de una página de Web
mientras ésta se procesa en el Browser
También permite manipular su contenido
Puede interactuar con la codificación en XHTML, los
objetos de Dynamic HTML, etc.
Código

Corrida
Dynamic HTML (DHTML)





Modelo de Objetos desarrollado por Microsoft
Convierte los elementos que bajan en una página
de Web en Objetos que pueden ser manipulados
con JavaScript
Combinados permite el manejo de:


Eventos, Filtros y Transiciones para animaciones y otros
efectos, Controles para el Manejo de Datos, Gráficas
estructuradas con Active X y Direct Animation que es
parte de Direct X, además de otros controles como el de
Sprite para animaciones
Dynamic HTML (DHTML)
El modelo de DHTML de Microsoft está
compuesto por varias tecnologías de uso
gratuíto entre las que se incluyen:
 XHTML
 JavaScript
 Cascading Style Sheets
 Dynamic HTML Object Model and Event
Model
 Active X controls
 Otros
Netscape cuenta con un modelo similar
XML
Extensible Markup Language
DTD
 Surje también de SGML pero con utilidades muy
mejoradas en términos de usabilidad.
XML
 Fue creado por el W3C para describir datos en un
formato portátil. Eso implica que no es en sí un
lenguaje.
 Se ha convertido en un “lenguaje” para crear otros
“lenguajes” tipo markup. Entre los creados se incluyen:
XHTML, MathML (para matemáticas), VoiceXML (para
reconocer voz), SMIL (para presentaciones con
multimedios), CML (para química) y XBRL (para
intercambio de datos financieros).
 Es una de las tecnologías de mayor importancia hoy y
se utiliza en un sinnúmero de áreas.
VBScript
Visual Basic Script
 Desarrollado por Microsoft
 No funciona con todos los Browser aunque
se logra hacer algo con la ayuda de Plug-ins
 Es el más utilizado para escribir ASP´s para
servidores
 Su uso se circunscribe a aplicaciones de
Internet puras de Microsoft y a Intranets
basados en Microsoft
Programación en el Servidor
(Server Side)
Web Servers




Los servidores de Web son considerados
una aplicación multi-nivel (multitiered)
Ejemplo de 3 niveles:


nivel de datos (data/bottom tier)




nivel intermedio (middle tier)




base de datos de la organización
recive un pedido del cliente, accesa y maneja los
datos en el servidor y envía lo pedido al cliente

nivel de cliente (client/top tier)


presenta la página y ejecuta las instrucciones de
scripting contenidas en ella


Web Servers
Los servidores más utilizados en
la industria:


Apache Web Server





Es el más popular de los Web
Servers por su estabilidad, eficiencia
y portabilidad
Es Open Source (gratis y
modificable)
Corre en Unix, Linux o Windows
Web Servers


Internet Information Server (IIS)






Servidor Web a nivel empresa
(enterprise) que es parte de
Windows 2000
Al configurarlo en cualquier
máquina permite que ésta
despache documentos de Web
Funciona sólo para Windows
ASP
Microsoft Active Server Pages
 Pueden ser programadas en varios lenguajes de
los que el más utilizado es VBScript
 Implementan lógica de negocios a nivel intermedio
 Trabaja con el concepto de dynamic content
generation
 Mediante un lenguaje de Script se generan
documentos en HTML, XHTML, XML u otros
 Permite:
 almacenar archivos de texto
 generar queries para bases de datos en Access
o SQL Server
 utilizar controles de Active X en el lado del
servidor
Perl/CGI
Practical Extraction and Report Language / Common
Gateway Interface
 Es la tecnología más utilizada en el desarrollo de
programación del lado del servidor
 A pesar de todas las herramientas existentes se
espera que continue su supremacía
 Permite:







interactuar con bases de datos MySQL
hacer busquedas de patrones de caracteres con el uso de
regular expressions
leer y escribir datos del usuario en cookies

Compite con ASP como uno de las mejores
Perl/CGI
Perl
 Lenguaje de programación creado en 1987 por Larry
Wall
 Fue creado para dar seguimiento a proyectos grandes y
generar reportes
 Se supone es más flexible que C
 Es uno de los más usados hoy para programación en el
Web
 Tiene capacidades excelentes para el procesamiento
de textos
 Permite la generación más directa y simple de tareas
comunes de programación
Perl/CGI
CGI
 Es un protocolo mediante el cual los usuarios
interactúan con las aplicaciones residentes en un
servidor de Web
 Provee a los Browsers mecanismos indirectos para
lograr comunicarse con esas aplicaciones
 Para lograrlo se interactúa mediante un CGI Script
que puede estar escrito en distintos lenguajes para
lo que el más utilizado es Perl por ser poderoso,
flexible y por haber mucho código existente para
lidiar con situaciones comunes
Perl/CGI
Funcionamiento similar al de ASP
 Mediante el CGI Script se procesan los datos
sometidos desde una Forma
 Luego se garantiza acceso al ejecutable a utilizar
en el servidor el cual se ejecuta





Este es por lo general un .cgi o .pl
Se encuentran en un directorio especial del servidor
conocido como cgi-bin

Finalmente el ejecutable responde enviando una
página en HTML o XHTML con lo solicitado


Esta puede contener imágenes, archivos de audio,
archivos de Flash, XML u otros
Python








Lenguaje de propósito general que es
interpretado, orientado a objetos y para
distintas plataformas
Creado por Guido van Rossum
Permite crear mecanismos de búsqueda a
gran escala, aplicaciones GUI, scripts de
administración, CGI scripts, etc.
Es gratis y open source
Su mayor ventaja es que permite el rápido
desarrollo de aplicaciones, incluyendo las
de GUI
PHP
Personal Home Page Tools
 Fue creado en 1994 por Rasmus Lerdorf
 En 1997 explotó su popularidad como lenguaje
script
 Excelente para la creación de páginas de Web
dinámicas
 En uso en sobre 6 millones de dominios
 Es Open Source
 Existe para Linux, Unix y Windows y apoya a bases
de datos como MySQL
 Interactúa también con cookies
 Fortaleza: diseñado específicamente para
interactuar con el Web
Cold Fusion
ColdFusion Markup Language (CFML)
 Diseñado por Allaire y adquirido luego por Macromedia
 Muy popular en su versión para servidor
 Formato simple basado en tags (al estilo XHTML)
 Extensión .cfm a la que se llama ColdFusion template
 Permite desarrollo rápido y dinámico
 Apoya XML, ColdFusion Components y Web Services
Java Servlets y JSP
Servlets y Java Server Pages
 Tecnologías del servidor basadas en Java (no en
JavaScript)
 JSPs son extensión de Servlets
 Funcionamiento similar a las tecnologías descritas con:





Se fundamentan en el modelo request-response para
su funcionamiento




Capacidades excelentes para redes
Base en Java

El cliente requiere que alguna acción se lleve a cabo y el
servidor la lleva a cabo y le responde al cliente.

Están apoyadas por todos los servidores de Web más
importante, incluyendo el de W3C
Java Servlets y JSP



JSPs: contenido a enviar al cliente es casi todo
estático y con marcas
Servlets:





no siempre producen contenido
tareas más avanzadas que incluyen el interactuar
con JDBC, con poco o ningún contenido estático

Los Servlets son efectivos en el desarrollo de
soluciones para Web que:





ayuden a proveer acceso seguro a un Sitio Web
permitan al cliente interactuar con bases de datos
generen dinámicamente páginas en XHTML
mantener información única de la sesión de cada
cliente que este trabajando

Servlet
Referencias y Sitios de
Importancia













Internet & World Wide Web: How to Program, Deitel, Deitel
& Goldberg, Prentice Hall, 2004.
Programming the Web: An Introduction, McGraw-Hill
Technology Education, 2004.
Java: How to Program, Deitel & Deitel, Prentice Hall, 2003.
Discovering Computers 2005, Shelly, Cashman & Vermaat,
Thomson Learning (scsite.com/dc2005).
Web 101: Making the ‘Net Work for you, Lehnert, Addison
Wesley, 2001.
World Wide Web Consortium (www.w3c.org)
www.isoc.org
www.isocpr.org
www.xml.com
www.xbrl.com
www.apache.org
www.iisanswers.com

Más contenido relacionado

Similar a Introducción a la Programación Internet

Similar a Introducción a la Programación Internet (20)

Trabajo de internet
Trabajo de internetTrabajo de internet
Trabajo de internet
 
Trabajo de internet
Trabajo de internetTrabajo de internet
Trabajo de internet
 
Trabajo de internet
Trabajo de internetTrabajo de internet
Trabajo de internet
 
Trabajo de internet
Trabajo de internetTrabajo de internet
Trabajo de internet
 
Capitulo1
Capitulo1Capitulo1
Capitulo1
 
Trabajo de internet
Trabajo de internetTrabajo de internet
Trabajo de internet
 
Trabajo de internet
Trabajo de internetTrabajo de internet
Trabajo de internet
 
W3c
W3cW3c
W3c
 
0. Antecedentes Asp
0. Antecedentes Asp0. Antecedentes Asp
0. Antecedentes Asp
 
Trabajo de internet web 2.0
Trabajo de internet web 2.0Trabajo de internet web 2.0
Trabajo de internet web 2.0
 
Web2.0 3.0
Web2.0 3.0Web2.0 3.0
Web2.0 3.0
 
Capitulo 1 - Proyecto integrador 2015-2016
Capitulo 1 - Proyecto integrador 2015-2016Capitulo 1 - Proyecto integrador 2015-2016
Capitulo 1 - Proyecto integrador 2015-2016
 
Manual de html y flash mx
Manual de html y flash mxManual de html y flash mx
Manual de html y flash mx
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Hacia La Web Sincrona
Hacia La Web SincronaHacia La Web Sincrona
Hacia La Web Sincrona
 
Comercio electronico presentacion 1
Comercio electronico presentacion 1Comercio electronico presentacion 1
Comercio electronico presentacion 1
 
Tecnologias de desarrollo web
Tecnologias de desarrollo webTecnologias de desarrollo web
Tecnologias de desarrollo web
 
Internetpres
InternetpresInternetpres
Internetpres
 
Fundamentos tecnologías web
Fundamentos tecnologías webFundamentos tecnologías web
Fundamentos tecnologías web
 
Trabajo D La Xilanga 47 Jejeje
Trabajo D La Xilanga 47 JejejeTrabajo D La Xilanga 47 Jejeje
Trabajo D La Xilanga 47 Jejeje
 

Último

POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 

Último (16)

POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 

Introducción a la Programación Internet

  • 1. Introducción a la Programación para Internet Prof. Miguel Vélez Rubio Agosto de 2009
  • 2. Contenido   Historia del Internet Programación en Internet     Programación en el Cliente (Client Side) Programación en el Servidor (Server Side) Referencias y Sitios de Importancia Resumen y Preguntas
  • 3. Historia del Internet Finales de los 60  ARPA (Advanced Research Project Agency) – Department of Defense   Auspicia investigaciones graduadas Conferencia para presentar ideas – Universidad de Illinois en UrbanaChampaign   Planes concretos de interconectar una parte de ellos Incrementar velocidad de comunicación
  • 4. Historia del Internet Finales de los 60  ARPAnet    Daría base inicial al Internet Funcionó en septiembre de 1969 Propósitos   Comunicación entre investigadores Siguiera funcionando aunque parte se cayera
  • 5. Historia del Internet Finales de los 60  Beneficio inicial: En vez del compartir de recursos resulto ser la capacidad de lo que llamarían E-Mail  Características principales    Intercambio de información simultáneamente Tecnología de packet switching : mezcla de paquetes a través de las líneas de comunicación Sin tener un control centralizado: no se cae por pérdida parcial de estaciones o red
  • 6. Historia del Internet Finales de los 60  ARPAnet: Primera configuración  4 estaciones      Universidad de California en Los Ángeles Instituto de Investigación de Stanford Universidad de California en Santa Bárbara Universidad de Utah Protocolo inicial: TCP   Transmission Control Protocol Asegura el direccionamiento adecuado de los mensajes
  • 7. Historia del Internet  TCP/IP    Surje con el establecimiento de otras redes como ARPAnet IP (Internetworking Protocol) permite que pueda haber comunicación entre las distintas redes Da paso a la verdadera Red de Redes INTERNET
  • 8. Historia del Internet  Evolución:    Primero sólo Universidades e Instituciones de Investigación Luego: La milicia Finalmente: Gobierno permite acceso a comercio     Oposición de investigadores y militares por probable degradación en tiempo de respuesta Ocurrió lo opuesto con la entrada de más y mejores recurso por la inversión privada Aumento dramático en ancho de banda y disminución en costos Efecto directo en la economía nacional
  • 9. Historia del Internet 1989  World Wide Web (WWW)  Desarrollado por Tim Berners-Lee de CERN (Laboratorio Europeo de Partículas Físicas)  Permite localizar y ver documentos de multimedios por medio de programas y protocolos particulares  Se monta sobre el Internet tras reconocer su potencial  El Internet y el WWW están consideradas en la lista de las invenciones más importantes y revolucionarias en toda la existencia humana
  • 10. Historia del Internet 1991  Tim Berners-Lee funda el World Wide Web Consortium (W3C)     Se dedica al desarrollo de tecnologías no propietarias para el Web Meta principal: Hacer que el Web este disponible para todos Trabaja la estandarización de Tecnologías: Recomendaciones Emite los estándares (recomendaciones) principales para el establecimiento de enlaces entre computadoras
  • 11. Historia del Internet 1993  Primer Browser con un Interfaz Gráfico sencillo   MOSAIC Creado por Marc Andreessen 1994  Marc Andreessen y Jim Clark   Fundan Netscape Communications Corporation Tirada de Netscape Navigator 1.0
  • 12. Historia del Internet 1995  Emerge Java oficialmente como un lenguaje para el Web   Lenguaje Orientado a Objetos similar a C++ creado por James Gosling Desarrollado por Sun Microsystems 1996  WebTV 1997  Microsoft Internet Explorer 4.0 (Los puso en el mapa)  50 millones conectados al Internet
  • 13. Historia del Internet 1998  Telecommuting   Más de 10,000,000 trabajando en remoto desde sus casas Boom del E-Commerce     E-Bay Dell E*Trade Amazon.com
  • 14. Historia del Internet 1999  Microsoft Office 2000 ofrece el poder crear contenido para el Internet directamente pudiendo publicar sin conversiones ni tener que hacer procedimientos especializados  Apache para Linux comienza a ganar terreno como la mejor opción entre los Web Servers 2000  Ventas de E-Commerce exceden los $100 billones 2002  Wireless Internet
  • 15. Crecimiento Hoy: Más de 1 billón de nodos (350 millones en el 2000) 1984 Más de 1,000 nodos 1969 Cuatro nodos Tomado de Discovering Computers 2005, Thomson Learning y de Internet World Stats 2008
  • 16. Crecimiento  Según Datos del Gobierno del año 2000:    El tráfico del Internet se duplica cada 100 días Crecimiento anual de más de 700% Para capturar la atención de 60 millones de personas    Tomo a la radio 15 años Tomo a la televisión 30 años Tomo al Internet 3 años
  • 17. Programación en Internet   Muchas tecnologías existentes hoy Tecnologías basadas en Objetos   Object Oriented Programming Base inicial en programación Web:  Java (1995)
  • 18. Tecnología Basada en Objetos     Beneficios: Componentes de Programación Reutilizables, Más fácil de Entender, Corregir y Modificar Su origen se remonta a un lenguaje de 1967 conocido como Stimula 67 Este dio base junto a C, a C++ y de hay a todos los demás lenguajes que usaron a C++ como base Es la base en la programación para el Internet y el Web
  • 19. Programación en Internet  Dos áreas principales  Programación en el Cliente (Client Side)   HTML, XHTML, CSS, Java, Java Applets, JavaScript, Dynamic HTML, XML, VBScript Programación en el Servidor (Server Side)  JavaScript, Web Servers (IIS, Apache), ADO, WML, VBScript, ASP, XML, Perl, CGI, Python, PHP, ColdFusion, Java, Java Servlets, JSP
  • 20. Programación en el Cliente (Client Side)
  • 21. XHTML Extensible Hypertext Markup Language  Lenguaje de marcas para identificar los elementos de un documento del Web que permite a un Browser el mostrarlo en pantalla.  Sale directamente de HTML con algunos cambios provenientes de XML. HTML a su vez surgió de SGML (Standardized General Markup Language) que fue un estándar muy utilizado en aplicaciones industriales poderosas desde el 1986.  Surje directamente de una Recomendación del World Wide Web Consortium (W3C).
  • 22. XHTML   Está basado en el manejo de tags y atributos Permite:     incorporar textos, imágenes, líneas y caractéres especiales incorporar enlaces de texto, de imágenes y mapas de imágenes incorporar listas, tablas, formas para la entrada de datos y frames para la presentación de varios documentos a la vez controlar el estilo que contendrá la información al ser presentada por un browser
  • 23. CSS Cascading Style Sheets  Desarrollar páginas para el Web especificando el estilo que tendrán sus elementos separado de la estructura interna específica del documento en XHTML.  Permite manejo más simple de las páginas e implementar cambios de forma fácil y rápida, principalmente si son muchas.  Se pueden implementar estilos sobre elementos específicos, sobre el contenido de una página en su totalidad o sobre el contenido de un Site definiéndolos en un archivo compartido. Ejemplo
  • 24. Java  Código similar a C en su base pero mucho más fácil que C++ en muchos aspectos       Sin pointers No es híbrido, es totalmente Orientado a Objetos Utilidades simples para manejo gráfico y de eventos Manejo automático de memoria Capacidad de ¨Multithreading¨ Multi-Platform con su capacidad de correr aplicaciones en páginas del Web
  • 25. Java  Permite a los desarrolladores lo siguiente:      Crear páginas de Web con contenido dinámico e interactivo Desarrollo de aplicaciones para Internet e Intranet Desarrollar aplicaciones de empresas a gran escala Proveer aplicaciones para unidades electrónicas de consumo (celulares, PDA´s) Otros
  • 26. JavaScript        Object-Based Scripting para el Web Es uno de los lenguajes tipo Script más utilizado hoy Es base principal de programación para el Web en las aplicaciones actuales desde el punto de vista del cliente Es compatible con los Browsers más utilizados actualmente Permite manipular elementos de una página de Web mientras ésta se procesa en el Browser También permite manipular su contenido Puede interactuar con la codificación en XHTML, los objetos de Dynamic HTML, etc. Código Corrida
  • 27. Dynamic HTML (DHTML)    Modelo de Objetos desarrollado por Microsoft Convierte los elementos que bajan en una página de Web en Objetos que pueden ser manipulados con JavaScript Combinados permite el manejo de:  Eventos, Filtros y Transiciones para animaciones y otros efectos, Controles para el Manejo de Datos, Gráficas estructuradas con Active X y Direct Animation que es parte de Direct X, además de otros controles como el de Sprite para animaciones
  • 28. Dynamic HTML (DHTML) El modelo de DHTML de Microsoft está compuesto por varias tecnologías de uso gratuíto entre las que se incluyen:  XHTML  JavaScript  Cascading Style Sheets  Dynamic HTML Object Model and Event Model  Active X controls  Otros Netscape cuenta con un modelo similar
  • 29. XML Extensible Markup Language DTD  Surje también de SGML pero con utilidades muy mejoradas en términos de usabilidad. XML  Fue creado por el W3C para describir datos en un formato portátil. Eso implica que no es en sí un lenguaje.  Se ha convertido en un “lenguaje” para crear otros “lenguajes” tipo markup. Entre los creados se incluyen: XHTML, MathML (para matemáticas), VoiceXML (para reconocer voz), SMIL (para presentaciones con multimedios), CML (para química) y XBRL (para intercambio de datos financieros).  Es una de las tecnologías de mayor importancia hoy y se utiliza en un sinnúmero de áreas.
  • 30. VBScript Visual Basic Script  Desarrollado por Microsoft  No funciona con todos los Browser aunque se logra hacer algo con la ayuda de Plug-ins  Es el más utilizado para escribir ASP´s para servidores  Su uso se circunscribe a aplicaciones de Internet puras de Microsoft y a Intranets basados en Microsoft
  • 31. Programación en el Servidor (Server Side)
  • 32. Web Servers   Los servidores de Web son considerados una aplicación multi-nivel (multitiered) Ejemplo de 3 niveles:  nivel de datos (data/bottom tier)   nivel intermedio (middle tier)   base de datos de la organización recive un pedido del cliente, accesa y maneja los datos en el servidor y envía lo pedido al cliente nivel de cliente (client/top tier)  presenta la página y ejecuta las instrucciones de scripting contenidas en ella
  • 33.  Web Servers Los servidores más utilizados en la industria:  Apache Web Server    Es el más popular de los Web Servers por su estabilidad, eficiencia y portabilidad Es Open Source (gratis y modificable) Corre en Unix, Linux o Windows
  • 34. Web Servers  Internet Information Server (IIS)    Servidor Web a nivel empresa (enterprise) que es parte de Windows 2000 Al configurarlo en cualquier máquina permite que ésta despache documentos de Web Funciona sólo para Windows
  • 35. ASP Microsoft Active Server Pages  Pueden ser programadas en varios lenguajes de los que el más utilizado es VBScript  Implementan lógica de negocios a nivel intermedio  Trabaja con el concepto de dynamic content generation  Mediante un lenguaje de Script se generan documentos en HTML, XHTML, XML u otros  Permite:  almacenar archivos de texto  generar queries para bases de datos en Access o SQL Server  utilizar controles de Active X en el lado del servidor
  • 36. Perl/CGI Practical Extraction and Report Language / Common Gateway Interface  Es la tecnología más utilizada en el desarrollo de programación del lado del servidor  A pesar de todas las herramientas existentes se espera que continue su supremacía  Permite:     interactuar con bases de datos MySQL hacer busquedas de patrones de caracteres con el uso de regular expressions leer y escribir datos del usuario en cookies Compite con ASP como uno de las mejores
  • 37. Perl/CGI Perl  Lenguaje de programación creado en 1987 por Larry Wall  Fue creado para dar seguimiento a proyectos grandes y generar reportes  Se supone es más flexible que C  Es uno de los más usados hoy para programación en el Web  Tiene capacidades excelentes para el procesamiento de textos  Permite la generación más directa y simple de tareas comunes de programación
  • 38. Perl/CGI CGI  Es un protocolo mediante el cual los usuarios interactúan con las aplicaciones residentes en un servidor de Web  Provee a los Browsers mecanismos indirectos para lograr comunicarse con esas aplicaciones  Para lograrlo se interactúa mediante un CGI Script que puede estar escrito en distintos lenguajes para lo que el más utilizado es Perl por ser poderoso, flexible y por haber mucho código existente para lidiar con situaciones comunes
  • 39. Perl/CGI Funcionamiento similar al de ASP  Mediante el CGI Script se procesan los datos sometidos desde una Forma  Luego se garantiza acceso al ejecutable a utilizar en el servidor el cual se ejecuta    Este es por lo general un .cgi o .pl Se encuentran en un directorio especial del servidor conocido como cgi-bin Finalmente el ejecutable responde enviando una página en HTML o XHTML con lo solicitado  Esta puede contener imágenes, archivos de audio, archivos de Flash, XML u otros
  • 40. Python      Lenguaje de propósito general que es interpretado, orientado a objetos y para distintas plataformas Creado por Guido van Rossum Permite crear mecanismos de búsqueda a gran escala, aplicaciones GUI, scripts de administración, CGI scripts, etc. Es gratis y open source Su mayor ventaja es que permite el rápido desarrollo de aplicaciones, incluyendo las de GUI
  • 41. PHP Personal Home Page Tools  Fue creado en 1994 por Rasmus Lerdorf  En 1997 explotó su popularidad como lenguaje script  Excelente para la creación de páginas de Web dinámicas  En uso en sobre 6 millones de dominios  Es Open Source  Existe para Linux, Unix y Windows y apoya a bases de datos como MySQL  Interactúa también con cookies  Fortaleza: diseñado específicamente para interactuar con el Web
  • 42. Cold Fusion ColdFusion Markup Language (CFML)  Diseñado por Allaire y adquirido luego por Macromedia  Muy popular en su versión para servidor  Formato simple basado en tags (al estilo XHTML)  Extensión .cfm a la que se llama ColdFusion template  Permite desarrollo rápido y dinámico  Apoya XML, ColdFusion Components y Web Services
  • 43. Java Servlets y JSP Servlets y Java Server Pages  Tecnologías del servidor basadas en Java (no en JavaScript)  JSPs son extensión de Servlets  Funcionamiento similar a las tecnologías descritas con:    Se fundamentan en el modelo request-response para su funcionamiento   Capacidades excelentes para redes Base en Java El cliente requiere que alguna acción se lleve a cabo y el servidor la lleva a cabo y le responde al cliente. Están apoyadas por todos los servidores de Web más importante, incluyendo el de W3C
  • 44. Java Servlets y JSP   JSPs: contenido a enviar al cliente es casi todo estático y con marcas Servlets:    no siempre producen contenido tareas más avanzadas que incluyen el interactuar con JDBC, con poco o ningún contenido estático Los Servlets son efectivos en el desarrollo de soluciones para Web que:     ayuden a proveer acceso seguro a un Sitio Web permitan al cliente interactuar con bases de datos generen dinámicamente páginas en XHTML mantener información única de la sesión de cada cliente que este trabajando Servlet
  • 45. Referencias y Sitios de Importancia             Internet & World Wide Web: How to Program, Deitel, Deitel & Goldberg, Prentice Hall, 2004. Programming the Web: An Introduction, McGraw-Hill Technology Education, 2004. Java: How to Program, Deitel & Deitel, Prentice Hall, 2003. Discovering Computers 2005, Shelly, Cashman & Vermaat, Thomson Learning (scsite.com/dc2005). Web 101: Making the ‘Net Work for you, Lehnert, Addison Wesley, 2001. World Wide Web Consortium (www.w3c.org) www.isoc.org www.isocpr.org www.xml.com www.xbrl.com www.apache.org www.iisanswers.com