¿Como funcionan las paginas web?
Los sitios web son esencialmente un grupo de archivos asociados que se muestran a través de un navegador web. Los navegadores web pueden leer diversos tipos de lenguajes de programación, sin embargo, los sitios más comunes están escritos en lenguaje de marcado de hipertexto (HTML) y se analizan y se muestran a través de un navegador web. La página web más simple puede ser un archivo HTML, mientras que los sitios web más avanzados pueden consistir en un número infinito de archivos relacionados entre sí.
Esto describe la forma más básica en la que un sitio web funciona. Creas archivos, los subes a un servidor web, y los ves a través de una URL. Sin embargo, hay sitios web mucho más complejos con bases de datos que pueden funcionar de manera diferente.
¿Tipos de aplicaciones informaticas?
En las aplicaciones de terminal se accede al servidor directamente y se interactúa con el, del mismo modo que si lo hicieramos físicamente en él. Normalmente se utilizan para tareas de configuración del servidor.
En las aplicaciones de escritorio todo el software y los datos se encuentran físicamente en el dispositivo, no siendo necesario contar con una conexión externa para su normal funcionamiento. Aunque algunas aplicaciones cuentan con funcionalidades añadidas para la realización de comunicaciones en red o a través de un servidor local, un ejemplo sería la utilización de un servicio de cloud computing para almacenar nuestros datos o realizar copias de seguridad en la "nube".
En las aplicaciones clientes/servidor el Navegador y el Servidor se reparten las tareas según corresponda, a través de una comunicación persistente que cada cierto tiempo comprueba el estado de la misma. El Navegador ( Cliente ) realiza peticiones al Servidor que es el encargado de procesarlas y devolver el resultado de las mismas.
Programacion para el desarrollo de paginas web:
Desde los inicios de Internet, fueron surgiendo diferentes demandas por los usuarios y se dieron soluciones mediante lenguajes estáticos. A medida que paso el tiempo, las tecnologías fueron desarrollándose y surgieron nuevos problemas a dar solución. Esto dio lugar a desarrollar lenguajes de programación para la web dinámicos, que permitieran interactuar con los usuarios y utilizaran sistemas de Bases de Datos. A continuación daremos una introducción a los diferentes lenguajes de programación para la web.
Lenguaje HTML
Desde el surgimiento de internet se han publicado sitios web gracias al lenguaje HTML. Es un lenguaje estático para el desarrollo de sitios web (acrónimo en inglés de HyperText Markup Language, en español Lenguaje de Marcas Hipertextuales). Desarrollado por el World Wide Web Consortium (W3C). Los archivos pueden tener las extensiones
(htm, html).Sintaxis:
<html> (Inicio del documento HTML)
<head>
( Cabecera )
</head>
<body>
( Cuerpo )
</body>
</html>
<b> </b> Negrita
<p> </p> Definir parrafo
<etiqueta> Apertura de la etiqueta
</etiqueta> Cierre de la etiqueta
Ventajas:
- Sencillo que permite describir hipertexto.
- Texto presentado de forma estructurada y agradable.
- No necesita de grandes conocimientos cuando se cuenta con un editor de páginas web o WYSIWYG.
- Archivos pequeños.
- Despliegue rápido.
- Lenguaje de fácil aprendizaje.
- Lo admiten todos los exploradores.
Desventajas:
- Lenguaje estático.
- La interpretación de cada navegador puede ser diferente.
- Guarda muchas etiquetas que pueden convertirse en “basura” y dificultan la corrección.
- El diseño es más lento.
- Las etiquetas son muy limitadas.
Lenguaje Javascript
Este es un lenguaje interpretado, no requiere compilación. Fue creado por Brendan Eich en la empresa Netscape Communications. Utilizado principalmente en páginas web. Es similar a Java, aunque no es un lenguaje orientado a objetos, el mismo no dispone de herencias. La mayoría de los navegadores en sus últimas versiones interpretan código Javascript.
El código Javascript puede ser integrado dentro de nuestras páginas web. Para evitar incompatibilidades el World Wide Web Consortium (W3C) diseño un estándar denominado DOM (en inglés Document Object Model, en su traducción al español Modelo de Objetos del Documento).
Sintaxis:
<script type="text/javascript"> ... </script>
Ventajas:
- Lenguaje de scripting seguro y fiable.
- Los script tienen capacidades limitadas, por razones de seguridad.
- El código Javascript se ejecuta en el cliente.
Desventajas:
- Código visible por cualquier usuario.
- El código debe descargarse completamente.
- Puede poner en riesgo la seguridad del sitio, con el actual problema llamado XSS (significa en inglés Cross Site Scripting renombrado a XSS por su similitud con las hojas de estilo CSS).
Lenguaje PHP
Es un lenguaje de programación utilizado para la creación de sitio web. PHP es un acrónimo recursivo que significa “PHP Hypertext Pre-processor”, (inicialmente se llamó Personal Home Page). Surgió en 1995, desarrollado por PHP Group.
PHP es un lenguaje de script interpretado en el lado del servidor utilizado para la generación de páginas web dinámicas, embebidas en páginas HTML y ejecutadas en el servidor. PHP no necesita ser compilado para ejecutarse. Para su funcionamiento necesita tener instalado Apache o IIS con las librerías de PHP. La mayor parte de su sintaxis ha sido tomada de C, Java y Perl con algunas características específicas. Los archivos cuentan con la extensión
(php).Sintaxis:
La sintaxis utilizada para incorporar código PHP es la siguiente:
<?
$mensaje = “Hola”;
echo $mensaje;
?>
También puede usarse:
<?php
$mensaje = “Hola”;
echo $mensaje;
?>
Ventajas:
- Muy fácil de aprender.
- Se caracteriza por ser un lenguaje muy rápido.
- Soporta en cierta medida la orientación a objeto. Clases y herencia.
- Es un lenguaje multiplataforma: Linux, Windows, entre otros.
- Capacidad de conexión con la mayoría de los manejadores de base de datos: MysSQL, PostgreSQL, Oracle, MS SQL Server, entre otras.
- Capacidad de expandir su potencial utilizando módulos.
- Posee documentación en su página oficial la cual incluye descripción y ejemplos de cada una de sus funciones.
- Es libre, por lo que se presenta como una alternativa de fácil acceso para todos.
- Incluye gran cantidad de funciones.
- No requiere definición de tipos de variables ni manejo detallado del bajo nivel.
Desventajas:
- Se necesita instalar un servidor web.
- Todo el trabajo lo realiza el servidor y no delega al cliente. Por tanto puede ser más ineficiente a medida que las solicitudes aumenten de número.
- La legibilidad del código puede verse afectada al mezclar sentencias HTML y PHP.
- La programación orientada a objetos es aún muy deficiente para aplicaciones grandes.
- Dificulta la modularización.
- Dificulta la organización por capas de la aplicación.
Seguridad:
PHP es un poderoso lenguaje e intérprete, ya sea incluido como parte de un servidor web en forma de módulo o ejecutado como un binario CGI separado, es capaz de acceder a archivos, ejecutar comandos y abrir conexiones de red en el servidor. Estas propiedades hacen que cualquier cosa que sea ejecutada en un servidor web sea insegura por naturaleza.
PHP está diseñado específicamente para ser un lenguaje más seguro para escribir programas CGI que Perl o C, y con la selección correcta de opciones de configuración en tiempos de compilación y ejecución, y siguiendo algunas prácticas correctas de programación.
Lenguaje ASP
Es una tecnología del lado de servidor desarrollada por Microsoft para el desarrollo de sitio web dinámicos. ASP significa en inglés (Active Server Pages), fue liberado por Microsoft en 1996. Las páginas web desarrolladas bajo este lenguaje es necesario tener instalado Internet Information Server (IIS).
ASP no necesita ser compilado para ejecutarse. Existen varios lenguajes que se pueden utilizar para crear páginas ASP. El más utilizado es VBScript, nativo de Microsoft. ASP se puede hacer también en Perl and Jscript (no JavaScript). El código ASP puede ser insertado junto con el código HTML. Los archivos cuentan con la extensión
(asp).Sintaxis:
<% %>
Ventajas:
- Usa Visual Basic Script, siendo fácil para los usuarios.
- Comunicación óptima con SQL Server.
- Soporta el lenguaje JScript (Javascript de Microsoft).
Desventajas:
- Código desorganizado.
- Se necesita escribir mucho código para realizar funciones sencillas.
- Tecnología propietaria.
- Hospedaje de sitios web costosos.
Lenguaje ASP.NET
Este es un lenguaje comercializado por Microsoft, y usado por programadores para desarrollar entre otras funciones, sitios web. ASP.NET es el sucesor de la tecnología ASP, fue lanzada al mercado mediante una estrategia de mercado denominada .NET.
El ASP.NET fue desarrollado para resolver las limitantes que brindaba tu antecesor ASP. Creado para desarrollar web sencillas o grandes aplicaciones. Para el desarrollo de ASP.NET se puede utilizar C#, VB.NET o J#. Los archivos cuentan con la extensión
(aspx). Para su funcionamiento de las páginas se necesita tener instalado IIS con el Framework .Net. Microsft Windows 2003 incluye este framework, solo se necesitará instalarlo en versiones anteriores.Sintaxis:
Ventajas:
- Completamente orientado a objetos.
- Controles de usuario y personalizados.
- División entre la capa de aplicación o diseño y el código.
- Facilita el mantenimiento de grandes aplicaciones.
- Incremento de velocidad de respuesta del servidor.
- Mayor velocidad.
- Mayor seguridad.
Desventajas:
- Mayor consumo de recursos.
Lenguaje JSP
Es un lenguaje para la creación de sitios web dinámicos, acrónimo de Java Server Pages. Está orientado a desarrollar páginas web en Java. JSP es un lenguaje multiplataforma. Creado para ejecutarse del lado del servidor.
JSP fue desarrollado por Sun Microsystems. Comparte ventajas similares a las de ASP.NET, desarrollado para la creación de aplicaciones web potentes. Posee un motor de páginas basado en los servlets de Java. Para su funcionamiento se necesita tener instalado un servidor Tomcat.
Sintaxis:
<%= new java.util.Date() %>
Características:
- Código separado de la lógica del programa.
- Las páginas son compiladas en la primera petición.
- Permite separar la parte dinámica de la estática en las páginas web.
- Los archivos se encuentran con la extensión (jsp).
- El código JSP puede ser incrustado en código HTML.
Elementos de JSP
Los elementos que pueden ser insertados en las páginas JSP son los siguientes:
- Código: se puede incrustar código “Java”.
- Directivas: permite controlar parámetros del servlet.
- Acciones: permite alterar el flujo normal de ejecución de una página.
Ventajas:
- Ejecución rápida del servlets.
- Crear páginas del lado del servidor.
- Multiplataforma.
- Código bien estructurado.
- Integridad con los módulos de Java.
- La parte dinámica está escrita en Java.
- Permite la utilización se servlets.
Desventajas:
- Complejidad de aprendizaje.
Lenguaje Python
Es un lenguaje de programación creado en el año 1990 por Guido van Rossum, es el sucesor del lenguaje de programación ABC. Python es comparado habitualmente con Perl. Los usuarios lo consideran como un lenguaje más limpio para programar. Permite la creación de todo tipo de programas incluyendo los sitios web.
Su código no necesita ser compilado, por lo que se llama que el código es interpretado. Es un lenguaje de programación multiparadigma, lo cual fuerza a que los programadores adopten por un estilo de programación particular:
- Programación orientada a objetos.
- Programación estructurada.
- Programación funcional.
- Programación orientada a aspectos.
Sintaxis:
Ejemplo de una clase en Phyton:
def dibujar_muneco(opcion):
if opcion == 1:
C.create_line(580, 150, 580, 320, width=4, fill="blue")
C.create_oval(510, 150, 560, 200, width=2, fill='PeachPuff')
Ventajas:
- Libre y fuente abierta.
- Lenguaje de propósito general.
- Gran cantidad de funciones y librerías.
- Sencillo y rápido de programar.
- Multiplataforma.
- Licencia de código abierto (Opensource).
- Orientado a Objetos.
- Portable.
Desventajas:
- Lentitud por ser un lenguaje interpretado.
Lenguaje Ruby
Es un lenguaje interpretado de muy alto nivel y orientado a objetos. Desarrollado en el 1993 por el programador japonés Yukihiro “Matz” Matsumoto. Su sintaxis está inspirada en Phyton, Perl. Es distribuido bajo licencia de software libre (Opensource).
Ruby es un lenguaje dinámico para una programación orientada a objetos rápida y sencilla. Para los que deseen iniciarse en este lenguaje pueden encontrar un tutorial interactivo de ruby. Se encuentra también a disposición de estos usuarios un sitio con informaciones y cursos en español.
Sintaxis:
puts "hola"
Características:
- Existe diferencia entre mayúsculas y minúsculas.
- Múltiples expresiones por líneas, separadas por punto y coma “;”.
- Dispone de manejo de excepciones.
- Ruby puede cargar librerías de extensiones dinámicamente si el (Sistema Operativo) lo permite.
- Portátil.
Ventajas:
- Permite desarrollar soluciones a bajo Costo.
- Software libre.
- Multiplataforma.
Aplicaciones web - conceptos basicos:
Los modelos y tecnologías de desarrollo web han evolucionado mucho en la última década, existen multitud de aplicaciones, frameworks, librerías, arquitecturas y sistemas de publicación en diferentes versiones que a su vez reciben cambios o mejoran con el tiempo.
El progreso también ha tenido lugar en lo relacionado con la administración de sistemas, servicios de alojamiento, técnicas de escalabilidad, monitorización y gestión de centros de procesos de datos.
Esta evolución ha dado lugar a la convergencia de una gran cantidad de tecnologías, herramientas y estilos arquitectónicos para desarrollar sitios web y aplicaciones, te contamos los aspectos más importantes relacionados con ellos, y la manera en la que interactúan entre sí.
Contenidos de esta publicación [ocultar]
- 1 Arquitectura básica de una aplicación web
- 2 Tecnologías del lado del cliente o del lado del servidor
- 3 Arquitecturas web de contenido estático o dinámico
- 4 Tecnologías estándar del lado cliente
- 5 Tecnologías no estándar para desarrollo web
- 6 Tecnologías de servidor
- 7 Bases de datos
- 8 Sistemas gestores de contenidos
- 9 Conclusiones
Arquitectura básica de una aplicación web
Para que un sitio o aplicación web funcione mostrándose al público es necesaria una arquitectura que disponga como mínimo los siguientes elementos:
El navegador: Representa el concepto de cliente realizando peticiones solicitando recursos a diferentes servidores web a través de URL.
El Servidor: Almacena de forma organizada la estructura de la información del sitio web para servir los contenidos en relación a las peticiones del navegador.
El protocolo http: Es el protocolo basado en TCP/IP a través del cual el navegador realiza peticiones al servidor para que este responda.
HTML: Es el formato básico de los documentos que componen las páginas web, está basado en etiquetas y sirve para estructurar la forma de mostrar los contenidos de las páginas.
CSS: Las hojas de estilo en cascada sirven para favorecer estéticamente los elementos y contenidos estructurados a través de las etiquetas HTML, dotándoles de personalidad en cuanto a su diseño, forma y colores.
https://es.coursera.org › lecture › video-3-caracteristicas-de-aplicaciones-web-2gRUl
¿Como funciona una aplicacion web?:
Las aplicaciones web son un tipo de software que se codifica en un lenguaje soportado por los navegadores web y cuya ejecución es llevada a cabo por el navegador en Internet o de una intranet (de ahí que reciban el nombre de App web).
Otra definición que podríamos dar para una aplicación web es la siguiente:
Son aquellas herramientas que los usuarios pueden utilizar accediendo a un servidor web por medio de Internet o de una intranet mediante un navegador que ejecutará la misma
¿Cómo funcionan las Apps web?
Que las aplicaciones web sean ejecutadas por medio de un navegador web en una red significa que los datos o los archivos en los que trabajas son procesados y almacenados dentro de la una red a través de un navegador. Por este motivo, este tipo de aplicaciones por lo general, no necesitan ser instaladas en el ordenador o el móvil.
Que las aplicaciones web sean ejecutadas por medio de un navegador web en una red significa que los datos o los archivos en los que trabajas son procesados y almacenados dentro de la una red a través de un navegador. Por este motivo, este tipo de aplicaciones por lo general, no necesitan ser instaladas en el ordenador o el móvil.
Una página Web puede contener elementos que permiten una comunicación activa entre el usuario y la información, haciendo que éste acceda a los datos de forma interactiva, ya que el sitio web se encargará de responder a cada una de las acciones que éste ejecute (por ejemplo acceder a gestores de bases de datos de todo tipo, publicar e interactuar con los contenidos, rellenar y enviar formularios, participar en juegos, etc.
Las aplicaciones web están íntimamente relacionadas con el almacenamiento de datos en la nube, ya que toda la información se guarda de forma permanente en servidores web, los cuales además de alojar dicha información, nos la envían a nuestros dispositivos móviles o equipos informáticos en cada momento que sea requerida, realizando copias temporales de estos envíos dentro de los equipos y dispositivos que utilicemos.
Las empresas que alquilan estos espacios en los servidores web son conocidas como empresas o servicios de Hosting. Si quieres saber más sobre los tipos de Hosting web y los servicios que prestan, quizás te interese este artículo.

¿Por qué son tan populares las aplicaciones web?
Las aplicaciones web son muy populares debido a:
- La practicidad que ofrecen los navegadores web como clientes ligeros. Un cliente ligero (Thin Client) es un sistema que trabaja en una arquitectura de red cliente-servidor en la cual existe muy poca o ninguna lógica del programa, por lo que depende principalmente del servidor central para las tareas de procesamiento.
- La independencia del sistema operativo que uses en tu ordenador o dispositivo móvil.
- La facilidad para actualizar y mantener aplicaciones web sin la necesidad de tener que distribuir el software o que se tengan que instalar el mismo por los usuarios potenciales.
- El libre acceso de los usuarios en cualquier momento, lugar o dispositivo, sólo con tener conexión a Internet y los datos de acceso (nombre usuario y contraseña).
Tipos de Apps web que se pueden desarrollar
Existen miles de páginas y aplicaciones web asociadas. A continuación te presentamos algunos ejemplos de aplicaciones web que se pueden llegar a desarrollar:
- Web mail: Sistemas de acceso al correo electrónico que permiten acceder a tus correos mediante un navegador web, sin tener que descargar los propios correos en el ordenador. Para ello utilizan clientes del tipo Gmail, Outlook, etc
- Wikis: Sitios y aplicaciones web cuyas páginas y contenidos pueden ser editados directamente desde el navegador, donde los usuarios crean, modifican o eliminan contenidos que, generalmente comparten.
- Weblogs: Sitios y aplicaciones web cuyas páginas y contenidos son de fácil actualización, de tal que permite a sus autores publicar contenidos (textos, imágenes y otros archivos) con aparentar un solo botón, ya que suelen contar con un editor y herramientas para tal efecto en la propia web.
- Tiendas Online: Tipos de comercio que usan como medio principal para realizar suyos transacciones un sitio web y/o una aplicación conectada a internet desde la que los usuarios y clientes pueden realizar sus compras.
Arquitectura de aplicaciones web:
Una aplicación Web es proporcionada por un servidor Web y utilizada por usuarios que se Conectan desde cualquier punto vía clientes Web (browsers o navegadores). La arquitectura de un Sitio Web tiene tres componentes principales:
- Un servidor Web
- Una conexión de red
- Uno o más clientes
El servidor Web distribuye páginas de información formateada a los clientes que las solicitan. Los requerimientos son hechos a través de una conexión de red, y para ello se usa el protocolo HTTP. Una vez que se solicita esta petición mediante el protocolo HTTP y la recibe el servidor Web, éste localiza la página Web en su sistema de archivos y la envía de vuelta al navegador que la solicitó.
Las aplicaciones Web están basadas en el modelo Cliente/Servidor que gestionan servidores web, y que utilizan como interfaz páginas web.
Las páginas Web son el componente principal de una aplicación o sitio Web. Los browsers piden páginas (almacenadas o creadas dinámicamente) con información a los servidores Web. En algunos ambientes de desarrollo de aplicaciones Web, las páginas contienen código HTML y scripts dinámicos, que son ejecutados por el servidor antes de entregar la página.
Una vez que se entrega una página, la conexión entre el browser y el servidor Web se rompe, es decir que la lógica del negocio en el servidor solamente se activa por la ejecución de los scripts de las páginas solicitadas por el browser (en el servidor, no en el cliente). Cuando el browser ejecuta un script en el cliente, éste no tiene acceso directo a los recursos del servidor. Hay otros componentes que no son scripts, como los applets (una aplicación especial que se ejecuta dentro de un navegador) o los componentes ActiveX. Los scripts del cliente son por lo general código JavaScript o VBSscript, mezclados con código HTML.
La colección de páginas son en una buena parte dinámicas (ASP, PHP, etc.), y están agrupadas lógicamente para dar un servicio al usuario. El acceso a las páginas está agrupado también en el tiempo (sesión). Los componentes de una aplicación Web son:
1. Lógica de negocio.
- Parte más importante de la aplicación.
- Define los procesos que involucran a la aplicación.
- Conjunto de operaciones requeridas para proveer el servicio.
2. Administración de los datos.
- Manipulación de BD y archivos.
3. Interfaz
- Los usuarios acceden a través de navegadores, móviles, PDAs, etc.
- Funcionalidad accesible a través del navegador.
- Limitada y dirigida por la aplicación.
Las aplicaciones web se modelan mediante lo que se conoce como modelo de capas, Una capa representa un elemento que procesa o trata información. Los tipos son:
- Modelo de dos capas: La información atraviesa dos capas entre la interfaz y la administración de los datos.
- Modelo de n-capas: La información atraviesa varias capas, el más habitual es el modelo de tres capas.
Modelo de dos Capas.
Gran parte de la aplicación corre en el lado del cliente (fat client).
Las capas son:
- Cliente (fat client): La lógica de negocio está inmersa dentro de la aplicación que realiza el interfaz de usuario, en el lado del cliente.
- Servidor: Administra los datos.
Las limitaciones de este modelo son.
- Es difícilmente escalable
- Número de conexiones reducida
- Alta carga de la red.
- La flexibilidad es restringida
- La funcionalidad es limitada.
Modelo de tres Capas.
Esta diseñada para superar las limitaciones de las arquitecturas ajustadas al modelo de dos capas, introduce una capa intermedia (la capa de proceso) Entre presentación y los datos, los procesos pueden ser manejados de forma separada a la interfaz de usuari o y a los datos, esta capa intermedia centraliza la lógica de negocio, haciendo la administración más sencil a, los datos se pueden integrar de múltiples fuentes, las aplicaciones web actuales se ajustan a este modelo.
Las capas de este modelo son:
1. Capa de presentación (parte en el cliente y parte en el servidor)
- Recoge la información del usuario y la envía al servidor (cliente)
- Manda información a la capa de proceso para su procesado
- Recibe los resultados de la capa de proceso
- Generan la presentación
- Visualizan la presentación al usuario (cliente)
2. Capa de proceso (servidor web)
- Recibe la entrada de datos de la capa de presentación
- Interactúa con la capa de datos para realizar operaciones
- Manda los resultados procesados a la capa de presentación
3. Capa de datos (servidor de datos)
- Almacena los datos
- Recupera datos
- Mantiene los datos
- segura la integridad de los datos
https://www.youtube.com › watch







No hay comentarios.:
Publicar un comentario