Consulta

1. ¿Qué es un servidor web?

Es un software que hace parte de un servidor y su objetivo es devolver información a medida que va recibiendo peticiones de los usuarios. Algunos tipos de servidor web son los siguientes: HTTP Apache, Nginx, LiteSpeed, Microsoft IIS, Sun Java System Web Server.

2. ¿Qué es un cliente web?

Es un ordenador que se encuentra conectado a internet y se encarga de realizar peticiones de documentos incorporados en una página web y para visualizar dicho contenido se hace uso de un navegador web.

3. ¿Qué son aplicaciones dinámicas sincrónicas y asincrónicas en la web?

Aplicaciones síncronas: Es una técnica que se enfoca en el envío de una trama de datos, estos se configuran en un bloque de información iniciando con un conjunto de bits al final del bloque, los bits de sincronismo tienen como tarea la sincronización de los relojes existentes, tanto del emisor como del receptor y por ende estos controlan los diferentes bits y caracteres.
Aplicaciones asíncronas: Esta técnica tiene lugar cuando el proceso de sincronización entre el emisor y receptor se realiza en cada palabra de código transmitido. También se establece cuando no se presenta una relación temporal entre el emisor y el receptor.

4. ¿Qué tipo de tecnologías se requieren para realizar aplicaciones en tiempo real?

Se hace uso de integración de bases de datos, conectadas por medio de API’s basadas en Node (MongoDB), una base de datos NoSQL. Otra posibilidad, que no es muy factible para la implementación en tiempo real es RethinkDB (consulta y recepción de datos de tipo JSON).

5. ¿Cuáles son las aplicaciones típicas de las aplicaciones en tiempo real?

API’s, MongoDB, bases de datos NoSQL, JS, diversos FrameWorks de JS.

6. ¿Qué es un Websocket?

Es una tecnología que permite abrir una sesión de comunicación interactiva entre el navegador del usuario y un servidor. Por medio de esta API, se posibilita el envío de mensajes a un servidor y recibir respuestas controladas por eventos sin necesidad de consultar al servidor para obtener una respuesta.

7. ¿Cuáles son las aplicaciones de los Websocket?

Esta tecnología basada en el protocolo ws, permite establecer una conexión full-duplex entre el cliente y el servidor; en este caso un cliente puede ser el navegador del usuario, pero el protocolo es una plataforma independiente.

8. ¿Cuáles son las características del API Websocket?

Los Websockets son implementados en HTML5 para la comunicación entre el cliente y el servidor.

9. ¿Qué navegadores soportan Websocket y qué se entiende por FrontEnd y BackEnd?

Chrome [v6, v14, v16], Firefox (Gecko) [V4.0 (2.0), v6.0 (6.0), v7.0 (7.0), v11.0 (11.0)], Opera [v11.00 (disabled), v12.10], Safari v5.0.1.

FrontEnd: Abarca las tecnologías de Desarrollo y diseño web que corren en un navegador y permiten la interacción con los usuarios.
BackEnd: Es la capa a la cual los usuarios no pueden acceder directamente, ya que se compone de la lógica que administra los datos. Esta, posibilita el acceso al servidor y entiende la forma en la que navegador realiza solicitudes al servidor.

10. ¿Qué son las PWA (Progressive Web Apps), Aplicaciones Web Progresivas? ¿Cuáles son sus ventajas y desventajas?

Las PWA se basa en web tradicional, pero incluye particularidades que la hacen aparentar como una app nativa para teléfonos móviles y tabletas.

Ventajas:
- No necesitan ingresar a Google Play o Apple Store para poder descargar algo, requiere de acceso a internet y un navegador web.
- Cualquier usuario puede instalarla en la pantalla de inicio de su dispositivo.
- El peso puede ser de menos de 1MB.
Desventajas:
- Consume más batería de los dispositivos.
- Impide el acceso a todas las funcionalidades del dispositivo.

11. ¿Cuáles son las tecnologías de las aplicaciones móviles nativas? ¿Qué son los services worker? ¿Cómo se implementa?

Aplicaciones nativas: Son aquellas que se desarrollan propiamente para cada uno de los sistemas operativos.
Services worker: Trabajan como proxy servers fijado entre las aplicaciones web, la red y el navegador. Estas permiten la creación de experiencias offline y permiten el acceso a notificaciones y la sincronización en segundo plano por medio de las API’s.

12. ¿Qué herramientas se pueden utilizar para desarrollar aplicaciones tiempo real modernas que también funcione en los dispositivos móviles?

Node JS, socket.