NAVEGADORES

Refiere Corrales (2011) que un navegador es una aplicación de software utilizada para ubicar, recuperar y mostrar contenido en la World Wide Web, incluidas páginas web, imágenes, videos y otros archivos. Como modelo cliente/servidor, el navegador es el cliente que se ejecuta en una computadora que se comunica con el servidor web y solicita información. El servidor web devuelve la información al navegador web, que muestra los resultados en la computadora u otro dispositivo habilitado para Internet que admita un navegador.Los navegadores actuales son paquetes de software completamente funcionales que pueden interpretar y mostrar páginas web HTML, aplicaciones, JavaScript, AJAX y otros contenidos alojados en servidores web. Muchos navegadores ofrecen complementos que amplían las capacidades del software para que pueda mostrar información multimedia (incluidos sonido y video), o el navegador se puede usar para realizar tareas como videoconferencias, diseñar páginas web o agregar filtros antiphishing y otras características de seguridad al navegador.Un navegador es un grupo de códigos estructurados que juntos realizan una serie de tareas para mostrar una página web en la pantalla. De acuerdo con las tareas que realizan, estos códigos se componen de diferentes componentes.

Arquitectura de alto nivel del navegador

Principales componentes del navegador


  1. La interfaz de usuario : la interfaz de usuario es el espacio donde el usuario interactúa con el navegador. Incluye la barra de direcciones, los botones atrás y siguiente, el botón de inicio, actualizar y detener, la opción de marcador, etc. Todas las demás partes, excepto la ventana donde se muestra la página web solicitada, se encuentran debajo de ella.
  2. El motor del navegador : el motor del navegador funciona como un puente entre la interfaz de usuario y el motor de renderizado. De acuerdo con las entradas de varias interfaces de usuario, consulta y manipula el motor de renderizado.
  3. El motor de renderizado : el motor de renderizado, como sugiere el nombre, es responsable de renderizar la página web solicitada en la pantalla del navegador. El motor de renderizado interpreta los documentos e imágenes HTML, XML que están formateados con CSS y genera el diseño que se muestra en la interfaz de usuario. Sin embargo, al usar complementos o extensiones, también puede mostrar otros tipos de datos. Los diferentes navegadores usan diferentes motores de renderizado:
    * Internet Explorer: Trident
    * Firefox y otros navegadores de Mozilla: Gecko
    * Chrome y Opera 15+: Blink
    * Chrome (iPhone) y Safari: Webkit
  4. Redes : Componente del navegador que recupera las URL utilizando los protocolos comunes de Internet de HTTP o FTP. El componente de red maneja todos los aspectos de la comunicación y la seguridad en Internet. El componente de red puede implementar un caché de documentos recuperados para reducir el tráfico de red.
  5. Intérprete de JavaScript: Es el componente del navegador que interpreta y ejecuta el código javascript incrustado en un sitio web. Los resultados interpretados se envían al motor de renderizado para su visualización. Si el script es externo, primero se obtiene el recurso de la red. El analizador se mantiene en espera hasta que se ejecuta el script.
  6. Backend de la interfaz de usuario : el backend de la interfaz de usuario se utiliza para dibujar widgets básicos como cuadros combinados y ventanas. Este backend expone una interfaz genérica que no es específica de la plataforma. Debajo utiliza métodos de interfaz de usuario del sistema operativo.
  7. Persistencia/almacenamiento de datos: esta es una capa de persistencia. Los navegadores admiten mecanismos de almacenamiento como localStorage, IndexedDB, WebSQL y FileSystem. Es una pequeña base de datos creada en el disco local de la computadora donde está instalado el navegador. Gestiona datos de usuario como caché, cookies, marcadores y preferencias.

Motor de renderizado

La capa de red comenzará a enviar el contenido de los documentos solicitados al motor de renderizado en fragmentos de 8 KB.

Flujo básico del motor de renderizado

El motor de representación analiza los fragmentos del documento HTML y convierte los elementos en nodos DOM en un árbol denominado " árbol de contenido " o " árbol DOM ". También analiza tanto los archivos CSS externos como los elementos de estilo.Mientras se construye el árbol DOM, el navegador construye otro árbol, el árbol de representación . Este árbol es de elementos visuales en el orden en que se mostrarán. Es la representación visual del documento. El propósito de este árbol es permitir pintar los contenidos en su orden correcto. Firefox llama a los elementos del árbol de renderizado "marcos". WebKit utiliza el término renderizador u objeto de renderizado.Después de la construcción del árbol de renderizado, pasa por un " proceso de diseño " del árbol de renderizado. Cuando el renderizador se crea y se agrega al árbol, no tiene posición ni tamaño. El proceso de cálculo de estos valores se denomina diseño o reflujo. Esto significa dar a cada nodo las coordenadas exactas donde debería aparecer en la pantalla. La posición del renderizador raíz es 0,0 y sus dimensiones son la ventana gráfica, la parte visible de la ventana del navegador. Todos los renderizadores tienen un método de "diseño" o "reflujo", cada renderizador invoca el método de diseño de sus elementos secundarios que necesitan diseño.La siguiente etapa es la pintura . En la etapa de pintura, se recorre el árbol de renderizado y se llama al método “paint()” del renderizador para mostrar el contenido en la pantalla. La pintura utiliza la capa de fondo de la interfaz de usuario.El motor de renderizado siempre intenta mostrar los contenidos en la pantalla lo antes posible para una mejor experiencia del usuario. No espera a que se complete el análisis de HTML antes de comenzar a construir y diseñar el árbol de representación. Analiza y muestra el contenido que ha recibido de la red, mientras que el resto del contenido sigue llegando de la red. 


Referencias Bibliográficas
Corrales, J. (2011). Introducción a llas TIC's. Universidad de Costa Rica. San José - Costa Rica.


WWW
I BUILT MY SITE FOR FREE USING