SlideShare una empresa de Scribd logo
Programación Web

Desarrollo de aplicaciones Web
Arquitectura de las aplicaciones Web.
Arquitectura de dos niveles:
Es la más simple, se tiene el nivel del “Cliente” y el nivel del “Servidor”.
Arquitectura Web de tres niveles:
•   El primer nivel consiste en la capa de presentación que incluye no sólo el
    navegador, sino también el servidor web que es el responsable de dar a los
    datos un formato adecuado. El segundo nivel está referido habitualmente a
    algún tipo de programa o script. Finalmente, el tercer nivel proporciona al
    segundo los datos necesarios para su ejecución.
Lenguajes de programación del lado del
                  cliente.
• Los programas del lado del cliente están
  incluidos dentro de la página HTML, se
  descargan del servidor junto con este.
• Los programas se ejecutan dentro del ámbito
  del browser.
Tecnologías y lenguajes del lado del cliente.
– Navegadores para Web.
– HTML.
– Javascript y Vbscript.
– Applets en Java.
– Flash (lenguaje ActionScript).
– XML.
– PDF.
– AJAX, acrónimo de Asynchronous JavaScript And
  XML (JavaScript asíncrono y XML).
Lenguajes del lado del cliente
•   Algunos navegadores Web.
     –   Amaya
     –   Epiphany
     –   Galeon
     –   Internet Explorer
     –   Konqueror
     –   Lynx
     –   Mozilla suite navigator
     –   Mozilla Firefox
     –   Netscape Navigator
     –   Opera
     –   Safari
     –   Shiira
     –   Maik Navigator
Tecnologías y lenguajes del lado del cliente.


• Algunos de estos lenguajes y tecnologías requieren de un
  programa especial (plug-in) instalado en la computadora
  del usuario. Ejemplo: Adobe Flash Player.

• Un complemento (o plug-in en inglés) es una aplicación
  que se relaciona con otra para aportarle una función
  nueva y generalmente muy especifica. Esta aplicación
  adicional es ejecutada por la aplicación principal e
  interactúan por medio de la API.
Lenguajes de programación del lado del
                    servidor.
• Se ejecutan en el servidor de Web y son dependientes de la
  plataforma del servidor.




•   Se usan para acceder a recursos del servidor, como bases de datos y
    generación de contenido dinámico para las páginas.
Lenguajes de programación del lado del
                  servidor.
• Por ejemplo, el ámbito de ejecución de una
  página ASP.NET.
Lenguajes de programación del lado del
                   servidor.
Algunos ejemplos de lenguajes del lado del servidor:

• ASP, ASP.NET (son tecnologías, soportan diferentes lenguajes como
  VB, C#, C++, etc.).
• PHP.
• JSP.
• Perl.
• Ruby.
• Python.
• XML.
Servidor Web
• Un servidor web es un programa que implementa el
  protocolo HTTP ). Este protocolo pertenece a la capa de
  aplicación del modelo OSI y está diseñado para transferir
  lo que se llama hipertextos, páginas web o páginas
  HTML: textos complejos con enlaces, figuras,
  formularios, botones y objetos incrustados como
  animaciones o reproductores de música.
Servidor Web.
• Algunos ejemplos:
   – CERN httpd
   – Apache (Libre, servidor más usado del mundo, según Wikipedia)
   – IIS
   – Resin
   – Tomcat(Libre, del proyecto Jakarta de Apache)
   – Geronimo(Libre, orientado a J2EE, del proyecto Jakarta de Apache,
     actualmente se encuentra en desarrollo)
   – JBoss
   – JOnAS
   – Cherokee
Ambientes para el desarrollo de aplicaciones
                   Web.
• Los IDE (ambientes integrados de desarrollo) para
  aplicaciones Web son muy numerosos.
• Considerar los que permitan trabajar con los diferentes
  lenguajes para Web.
• Algunos son específicos para lenguajes del lado del
  servidor. Por ejemplo, Visual Studio solo soporta
  ASP.NET del lado del servidor.
• Existen IDE’s de buena cantidad, libres y gratuitos de
  buena calidad.
Ambientes para el desarrollo de aplicaciones
                   Web.

• Algunos ejemplos de IDE para Web:
  –   Microsoft Visual Studio.
  –   Microsoft Web Developer Express.
  –   Mono (para ASP.NET).
  –   NetBeans.
  –   Jbuilder.
  –   Eclipse.
Metodologías para el desarrollo de
                aplicaciones Web.
• Ciclo de vida clásico. Pressman, “adapta” esta
  metodología para el desarrollo de Web, en lo que el
  llama la “Ingeniería Web”:
   –   Formulación.
   –   Planificación.
   –   Análisis (contenido, interacción, funcional, configuración).
   –   Diseño (arquitectónico, navegación, interfaz, de base de datos).
   –   Implementación.
   –   Pruebas.
Metodologías para el desarrollo de
             aplicaciones Web.

• UWE UML (UML-Based Web Engineering) es
  una metodología de desarrollo de aplicaciones
  web, utilizada en la ingeniería web, prestando
  especial atención en sistematización y
  personalización (sistemas adaptativos).
UWE UML
El método UWE UML consta de seis modelos:

• Modelo de casos de uso para capturar los requisitos del sistema.
• Modelo conceptual para el contenido (modelo del dominio).
• Modelo de usuario: modelo de navegación que incluye modelos estáticos
  y dinámicos.
• Modelo de estructura de presentación, modelo de flujo de presentación.
• Modelo abstracto de interfaz de usuario y modelo de ciclo de vida del
  objeto.
• Modelo de adaptación.
Aspectos de seguridad.
• Las aplicaciones Web están más expuestas a
  ataques.

Se pueden tener ataques en tres niveles:
  – A la computadora del usuario.
  – Al servidor.
  – A la información en tránsito.
La seguridad en Web tiene 3 etapas primarias:
– Seguridad de la computadora del usuario.
– Seguridad del servidor Web y de los datos
  almacenados ahí.
– Seguridad de la información que viaja entre el
  servidor Web y el usuario.
Seguridad de la computadora del usuario

• Los usuarios deben contar con navegadores y
  plataformas seguras, libres de virus y
  vulnerabilidades. También debe garantizarse
  la privacidad de los datos del usuario.
Seguridad del servidor Web y de los datos
  almacenados ahí
• Se debe garantizar la operación continua del
  servidor, que los datos no sean modificados
  sin autorización (integridad) y que la
  información sólo sea distribuida a las personas
  autorizadas (control de acceso).
• Seguridad de la información que viaja entre el
  servidor Web y el usuario.

Garantizar que la información en tránsito no sea leída
  (confidencialidad), modificada o destruida por terceros.
  También es importante asegurar que el enlace entre
  cliente y servidor no pueda interrumpirse fácilmente
  (disponibilidad).
Recomendaciones: Asegurar el servidor

Se deben considerar los siguientes puntos:
• Asegurar el servidor en una forma fundamental: el
  sistema operativo, ya sea por medio de actualizaciones
  (parches) y habilitando los mecanismos propios de la
  plataforma.
• Garantizar la seguridad del servidor Web propiamente
  (IIS, Apache, etc.)
• Auditar las aplicaciones que interactúan en las    dos
  capas anteriores (módulos, bibliotecas).
Recomendaciones: Asegurar la información
             en tránsito
 Esto se puede lograr por diversos medios:
• Asegurando la red físicamente (switches en lugar de
   hubs).
• Esconder la información (esteganografía).
• Cifrar la información (criptografía) por medio de
   algoritmos diversos (SSL, VPNs).
Recomendaciones:
           Asegurar el equipo del usuario

  Vulnerar el equipo del usuario quizás no tenga el impacto
  de vulnerar el servidor, sin embargo es un problema más
  difícil de erradicar (1 servidor, 5000 clientes):

• Aplicar actualizaciones (parches) al sistema
 operativo.
• Uso de antivirus, firewalls personales.
• Educación de los usuarios.
• GRACIAS…

Más contenido relacionado

La actualidad más candente

Arquitectura- Programacion WEB
Arquitectura- Programacion WEBArquitectura- Programacion WEB
Arquitectura- Programacion WEBYael_21
 
La importancia del frontend y backend en un proyecto
La importancia del frontend y backend en un proyectoLa importancia del frontend y backend en un proyecto
La importancia del frontend y backend en un proyecto
Aptitud Emprendedora
 
Diseño y Desarrollo Web
Diseño y Desarrollo WebDiseño y Desarrollo Web
Diseño y Desarrollo Web
Henry Emmanuel Pérez Vivas
 
lenguaje web
lenguaje weblenguaje web
lenguaje web
Gleider Torres
 
Tecnologia ASP.net
Tecnologia ASP.netTecnologia ASP.net
Tecnologia ASP.net
Elvin Hernandez
 
Presentacion tecnica microsoft.net
Presentacion tecnica microsoft.netPresentacion tecnica microsoft.net
Presentacion tecnica microsoft.netRulo Rosaz
 
2.2 lenguajes del lado cliente
2.2 lenguajes del lado cliente2.2 lenguajes del lado cliente
2.2 lenguajes del lado clienteJeremias Morales
 
Programacion web c5 programacion del lado servidor
Programacion web c5 programacion del lado servidorProgramacion web c5 programacion del lado servidor
Programacion web c5 programacion del lado servidorAlejandro Hernandez
 
Internet - Teconología para Sistemas Web
Internet - Teconología para Sistemas WebInternet - Teconología para Sistemas Web
Internet - Teconología para Sistemas Web
Jhon Querevalú
 
Front end y Back-end
Front end y Back-end Front end y Back-end
Front end y Back-end
MaryCarmen Rivera González
 
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Micael Gallego
 
Pag. web
Pag. webPag. web
introducción tecnologías web
introducción tecnologías webintroducción tecnologías web
introducción tecnologías web
evelynfarro06
 

La actualidad más candente (17)

Arquitectura- Programacion WEB
Arquitectura- Programacion WEBArquitectura- Programacion WEB
Arquitectura- Programacion WEB
 
Tecnologias de desarrollo web
Tecnologias de desarrollo webTecnologias de desarrollo web
Tecnologias de desarrollo web
 
La importancia del frontend y backend en un proyecto
La importancia del frontend y backend en un proyectoLa importancia del frontend y backend en un proyecto
La importancia del frontend y backend en un proyecto
 
Diseño y Desarrollo Web
Diseño y Desarrollo WebDiseño y Desarrollo Web
Diseño y Desarrollo Web
 
Charla internet
Charla internetCharla internet
Charla internet
 
lenguaje web
lenguaje weblenguaje web
lenguaje web
 
Tecnologia ASP.net
Tecnologia ASP.netTecnologia ASP.net
Tecnologia ASP.net
 
Presentacion tecnica microsoft.net
Presentacion tecnica microsoft.netPresentacion tecnica microsoft.net
Presentacion tecnica microsoft.net
 
2.2 lenguajes del lado cliente
2.2 lenguajes del lado cliente2.2 lenguajes del lado cliente
2.2 lenguajes del lado cliente
 
Programacion web c5 programacion del lado servidor
Programacion web c5 programacion del lado servidorProgramacion web c5 programacion del lado servidor
Programacion web c5 programacion del lado servidor
 
Internet - Teconología para Sistemas Web
Internet - Teconología para Sistemas WebInternet - Teconología para Sistemas Web
Internet - Teconología para Sistemas Web
 
Front end y Back-end
Front end y Back-end Front end y Back-end
Front end y Back-end
 
JSP
JSPJSP
JSP
 
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
 
Pag. web
Pag. webPag. web
Pag. web
 
introducción tecnologías web
introducción tecnologías webintroducción tecnologías web
introducción tecnologías web
 
Javascript
JavascriptJavascript
Javascript
 

Destacado

Fundamentos de Desarrollo Web
Fundamentos de Desarrollo Web Fundamentos de Desarrollo Web
Fundamentos de Desarrollo Web
Alexander
 
Lenguaje de programación web
Lenguaje de programación webLenguaje de programación web
Lenguaje de programación web
Eduardo Alvarez
 
Fundamentos técnicos de internet
Fundamentos técnicos de internetFundamentos técnicos de internet
Fundamentos técnicos de internet
Juan Álvarez
 
Lenguajes de programación web
Lenguajes de programación webLenguajes de programación web
Lenguajes de programación web
Jackeline González
 
Programacion web introduccion practica o9
Programacion web introduccion practica o9Programacion web introduccion practica o9
Programacion web introduccion practica o9Anavay
 
Lenguajes de programación web
Lenguajes de programación webLenguajes de programación web
Lenguajes de programación web
Kriss Rachel
 
Programacion web
Programacion webProgramacion web
Programacion web
Carlos Alonso Pérez
 
C) elaboracion de formularios dinamicos en paginas web mediante el uso de un ...
C) elaboracion de formularios dinamicos en paginas web mediante el uso de un ...C) elaboracion de formularios dinamicos en paginas web mediante el uso de un ...
C) elaboracion de formularios dinamicos en paginas web mediante el uso de un ...Chaarly Fiiguerooa
 
PROGRAMACIÓN WEB INTRODUCCIÓN
PROGRAMACIÓN WEB INTRODUCCIÓNPROGRAMACIÓN WEB INTRODUCCIÓN
PROGRAMACIÓN WEB INTRODUCCIÓNKarol Moreno
 

Destacado (9)

Fundamentos de Desarrollo Web
Fundamentos de Desarrollo Web Fundamentos de Desarrollo Web
Fundamentos de Desarrollo Web
 
Lenguaje de programación web
Lenguaje de programación webLenguaje de programación web
Lenguaje de programación web
 
Fundamentos técnicos de internet
Fundamentos técnicos de internetFundamentos técnicos de internet
Fundamentos técnicos de internet
 
Lenguajes de programación web
Lenguajes de programación webLenguajes de programación web
Lenguajes de programación web
 
Programacion web introduccion practica o9
Programacion web introduccion practica o9Programacion web introduccion practica o9
Programacion web introduccion practica o9
 
Lenguajes de programación web
Lenguajes de programación webLenguajes de programación web
Lenguajes de programación web
 
Programacion web
Programacion webProgramacion web
Programacion web
 
C) elaboracion de formularios dinamicos en paginas web mediante el uso de un ...
C) elaboracion de formularios dinamicos en paginas web mediante el uso de un ...C) elaboracion de formularios dinamicos en paginas web mediante el uso de un ...
C) elaboracion de formularios dinamicos en paginas web mediante el uso de un ...
 
PROGRAMACIÓN WEB INTRODUCCIÓN
PROGRAMACIÓN WEB INTRODUCCIÓNPROGRAMACIÓN WEB INTRODUCCIÓN
PROGRAMACIÓN WEB INTRODUCCIÓN
 

Similar a Programación web

¿Cómo elegir servidor web?
¿Cómo elegir servidor web?¿Cómo elegir servidor web?
¿Cómo elegir servidor web?
Juan Belón Pérez
 
Cómo elegir un servidor Web
Cómo elegir un servidor WebCómo elegir un servidor Web
Cómo elegir un servidor Web
Juan Belón Pérez
 
Exposicion
ExposicionExposicion
Exposicion
RONLAD MAMANI
 
Arquitectura web EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
Arquitectura web  EXPOSICION KAREN ANDRADE, EFRAIN SARANSIGArquitectura web  EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
Arquitectura web EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
Efrain Criss
 
Tecnologias de desarrollo web
Tecnologias de desarrollo webTecnologias de desarrollo web
Tecnologias de desarrollo web
Adriana P. Aguilar Callejas
 
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacion
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacionTema1 seleccion de_arquitecturas_y_herramientas_de_programacion
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacion
Juana Sánchez
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
fanny casadiego
 
los-diferentes-lenguajes-de-programacion-para-la-web
 los-diferentes-lenguajes-de-programacion-para-la-web los-diferentes-lenguajes-de-programacion-para-la-web
los-diferentes-lenguajes-de-programacion-para-la-web
olguisf
 
los diferentes lenguajes de programación para-la-web
 los diferentes lenguajes de programación para-la-web los diferentes lenguajes de programación para-la-web
los diferentes lenguajes de programación para-la-webolguisf
 
Clase 1 introd asp net
Clase 1  introd asp net Clase 1  introd asp net
Clase 1 introd asp net
VictorAcosta112
 
Programacion web al lado del servidor.pdf
Programacion web al lado del servidor.pdfProgramacion web al lado del servidor.pdf
Programacion web al lado del servidor.pdf
JoseArevalo99
 
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
Luis Fernando Aguas Bucheli
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
arito_silva26
 
2009_asp.net_capitulo_1
2009_asp.net_capitulo_12009_asp.net_capitulo_1
2009_asp.net_capitulo_1
zhylz Zevallos
 
0. Antecedentes Asp
0. Antecedentes Asp0. Antecedentes Asp
0. Antecedentes Asp
Rubén Márquez
 
Clase12-ServidoresWeb.pdf
Clase12-ServidoresWeb.pdfClase12-ServidoresWeb.pdf
Clase12-ServidoresWeb.pdf
SantiagoGongora5
 

Similar a Programación web (20)

Prog webuni3
Prog webuni3Prog webuni3
Prog webuni3
 
Prog webuni3
Prog webuni3Prog webuni3
Prog webuni3
 
Web2
Web2Web2
Web2
 
UWE
UWEUWE
UWE
 
¿Cómo elegir servidor web?
¿Cómo elegir servidor web?¿Cómo elegir servidor web?
¿Cómo elegir servidor web?
 
Cómo elegir un servidor Web
Cómo elegir un servidor WebCómo elegir un servidor Web
Cómo elegir un servidor Web
 
Exposicion
ExposicionExposicion
Exposicion
 
Arquitectura web EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
Arquitectura web  EXPOSICION KAREN ANDRADE, EFRAIN SARANSIGArquitectura web  EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
Arquitectura web EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
 
Tecnologias de desarrollo web
Tecnologias de desarrollo webTecnologias de desarrollo web
Tecnologias de desarrollo web
 
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacion
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacionTema1 seleccion de_arquitecturas_y_herramientas_de_programacion
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacion
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
los-diferentes-lenguajes-de-programacion-para-la-web
 los-diferentes-lenguajes-de-programacion-para-la-web los-diferentes-lenguajes-de-programacion-para-la-web
los-diferentes-lenguajes-de-programacion-para-la-web
 
los diferentes lenguajes de programación para-la-web
 los diferentes lenguajes de programación para-la-web los diferentes lenguajes de programación para-la-web
los diferentes lenguajes de programación para-la-web
 
Clase 1 introd asp net
Clase 1  introd asp net Clase 1  introd asp net
Clase 1 introd asp net
 
Programacion web al lado del servidor.pdf
Programacion web al lado del servidor.pdfProgramacion web al lado del servidor.pdf
Programacion web al lado del servidor.pdf
 
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
2009_asp.net_capitulo_1
2009_asp.net_capitulo_12009_asp.net_capitulo_1
2009_asp.net_capitulo_1
 
0. Antecedentes Asp
0. Antecedentes Asp0. Antecedentes Asp
0. Antecedentes Asp
 
Clase12-ServidoresWeb.pdf
Clase12-ServidoresWeb.pdfClase12-ServidoresWeb.pdf
Clase12-ServidoresWeb.pdf
 

Último

Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
cj3806354
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
rafaelsalazar0615
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
DanielErazoMedina
 
Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
SamuelRamirez83524
 
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
Leidyfuentes19
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
JulyMuoz18
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
Fernando Villares
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
Luis Enrique Zafra Haro
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Telefónica
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
raquelariza02
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
zoecaicedosalazar
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
coloradxmaria
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
ManuelCampos464987
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
thomasdcroz38
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 

Último (20)

Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
 
Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
 
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 

Programación web

  • 2. Arquitectura de las aplicaciones Web. Arquitectura de dos niveles: Es la más simple, se tiene el nivel del “Cliente” y el nivel del “Servidor”.
  • 3. Arquitectura Web de tres niveles: • El primer nivel consiste en la capa de presentación que incluye no sólo el navegador, sino también el servidor web que es el responsable de dar a los datos un formato adecuado. El segundo nivel está referido habitualmente a algún tipo de programa o script. Finalmente, el tercer nivel proporciona al segundo los datos necesarios para su ejecución.
  • 4. Lenguajes de programación del lado del cliente. • Los programas del lado del cliente están incluidos dentro de la página HTML, se descargan del servidor junto con este. • Los programas se ejecutan dentro del ámbito del browser.
  • 5. Tecnologías y lenguajes del lado del cliente. – Navegadores para Web. – HTML. – Javascript y Vbscript. – Applets en Java. – Flash (lenguaje ActionScript). – XML. – PDF. – AJAX, acrónimo de Asynchronous JavaScript And XML (JavaScript asíncrono y XML).
  • 6. Lenguajes del lado del cliente • Algunos navegadores Web. – Amaya – Epiphany – Galeon – Internet Explorer – Konqueror – Lynx – Mozilla suite navigator – Mozilla Firefox – Netscape Navigator – Opera – Safari – Shiira – Maik Navigator
  • 7. Tecnologías y lenguajes del lado del cliente. • Algunos de estos lenguajes y tecnologías requieren de un programa especial (plug-in) instalado en la computadora del usuario. Ejemplo: Adobe Flash Player. • Un complemento (o plug-in en inglés) es una aplicación que se relaciona con otra para aportarle una función nueva y generalmente muy especifica. Esta aplicación adicional es ejecutada por la aplicación principal e interactúan por medio de la API.
  • 8. Lenguajes de programación del lado del servidor. • Se ejecutan en el servidor de Web y son dependientes de la plataforma del servidor. • Se usan para acceder a recursos del servidor, como bases de datos y generación de contenido dinámico para las páginas.
  • 9. Lenguajes de programación del lado del servidor. • Por ejemplo, el ámbito de ejecución de una página ASP.NET.
  • 10. Lenguajes de programación del lado del servidor. Algunos ejemplos de lenguajes del lado del servidor: • ASP, ASP.NET (son tecnologías, soportan diferentes lenguajes como VB, C#, C++, etc.). • PHP. • JSP. • Perl. • Ruby. • Python. • XML.
  • 11. Servidor Web • Un servidor web es un programa que implementa el protocolo HTTP ). Este protocolo pertenece a la capa de aplicación del modelo OSI y está diseñado para transferir lo que se llama hipertextos, páginas web o páginas HTML: textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproductores de música.
  • 12. Servidor Web. • Algunos ejemplos: – CERN httpd – Apache (Libre, servidor más usado del mundo, según Wikipedia) – IIS – Resin – Tomcat(Libre, del proyecto Jakarta de Apache) – Geronimo(Libre, orientado a J2EE, del proyecto Jakarta de Apache, actualmente se encuentra en desarrollo) – JBoss – JOnAS – Cherokee
  • 13. Ambientes para el desarrollo de aplicaciones Web. • Los IDE (ambientes integrados de desarrollo) para aplicaciones Web son muy numerosos. • Considerar los que permitan trabajar con los diferentes lenguajes para Web. • Algunos son específicos para lenguajes del lado del servidor. Por ejemplo, Visual Studio solo soporta ASP.NET del lado del servidor. • Existen IDE’s de buena cantidad, libres y gratuitos de buena calidad.
  • 14. Ambientes para el desarrollo de aplicaciones Web. • Algunos ejemplos de IDE para Web: – Microsoft Visual Studio. – Microsoft Web Developer Express. – Mono (para ASP.NET). – NetBeans. – Jbuilder. – Eclipse.
  • 15. Metodologías para el desarrollo de aplicaciones Web. • Ciclo de vida clásico. Pressman, “adapta” esta metodología para el desarrollo de Web, en lo que el llama la “Ingeniería Web”: – Formulación. – Planificación. – Análisis (contenido, interacción, funcional, configuración). – Diseño (arquitectónico, navegación, interfaz, de base de datos). – Implementación. – Pruebas.
  • 16. Metodologías para el desarrollo de aplicaciones Web. • UWE UML (UML-Based Web Engineering) es una metodología de desarrollo de aplicaciones web, utilizada en la ingeniería web, prestando especial atención en sistematización y personalización (sistemas adaptativos).
  • 17. UWE UML El método UWE UML consta de seis modelos: • Modelo de casos de uso para capturar los requisitos del sistema. • Modelo conceptual para el contenido (modelo del dominio). • Modelo de usuario: modelo de navegación que incluye modelos estáticos y dinámicos. • Modelo de estructura de presentación, modelo de flujo de presentación. • Modelo abstracto de interfaz de usuario y modelo de ciclo de vida del objeto. • Modelo de adaptación.
  • 18. Aspectos de seguridad. • Las aplicaciones Web están más expuestas a ataques. Se pueden tener ataques en tres niveles: – A la computadora del usuario. – Al servidor. – A la información en tránsito.
  • 19. La seguridad en Web tiene 3 etapas primarias: – Seguridad de la computadora del usuario. – Seguridad del servidor Web y de los datos almacenados ahí. – Seguridad de la información que viaja entre el servidor Web y el usuario.
  • 20. Seguridad de la computadora del usuario • Los usuarios deben contar con navegadores y plataformas seguras, libres de virus y vulnerabilidades. También debe garantizarse la privacidad de los datos del usuario.
  • 21. Seguridad del servidor Web y de los datos almacenados ahí • Se debe garantizar la operación continua del servidor, que los datos no sean modificados sin autorización (integridad) y que la información sólo sea distribuida a las personas autorizadas (control de acceso).
  • 22. • Seguridad de la información que viaja entre el servidor Web y el usuario. Garantizar que la información en tránsito no sea leída (confidencialidad), modificada o destruida por terceros. También es importante asegurar que el enlace entre cliente y servidor no pueda interrumpirse fácilmente (disponibilidad).
  • 23. Recomendaciones: Asegurar el servidor Se deben considerar los siguientes puntos: • Asegurar el servidor en una forma fundamental: el sistema operativo, ya sea por medio de actualizaciones (parches) y habilitando los mecanismos propios de la plataforma. • Garantizar la seguridad del servidor Web propiamente (IIS, Apache, etc.) • Auditar las aplicaciones que interactúan en las dos capas anteriores (módulos, bibliotecas).
  • 24. Recomendaciones: Asegurar la información en tránsito Esto se puede lograr por diversos medios: • Asegurando la red físicamente (switches en lugar de hubs). • Esconder la información (esteganografía). • Cifrar la información (criptografía) por medio de algoritmos diversos (SSL, VPNs).
  • 25. Recomendaciones: Asegurar el equipo del usuario Vulnerar el equipo del usuario quizás no tenga el impacto de vulnerar el servidor, sin embargo es un problema más difícil de erradicar (1 servidor, 5000 clientes): • Aplicar actualizaciones (parches) al sistema operativo. • Uso de antivirus, firewalls personales. • Educación de los usuarios.