¿Qué lenguaje de programación o pila de idiomas es el más adecuado para una aplicación interactiva de chat social que puede conectarse a redes externas?

Escribir una aplicación de chat con pilas de aplicaciones web populares como LAMP (PHP) ha sido tradicionalmente muy difícil. Implica sondear los cambios del servidor, realizar un seguimiento de las marcas de tiempo, y es mucho más lento de lo que debería ser.

Los sockets han sido tradicionalmente la solución en torno a la cual se diseñan la mayoría de los sistemas de chat en tiempo real, proporcionando un canal de comunicación bidireccional entre un cliente y un servidor.

Esto significa que el servidor puede enviar mensajes a los clientes. Cada vez que escribe un mensaje de chat, la idea es que el servidor lo reciba y lo envíe a todos los demás clientes conectados.

Node.js y Websockets son la combinación perfecta para escribir aplicaciones muy rápidas y sin demoras que pueden enviar datos a una gran cantidad de clientes.

¿Por qué usar este combo?

Node.js es una plataforma basada en el tiempo de ejecución de JavaScript de Chrome para crear aplicaciones en JavaScript que se ejecutan en el servidor. Node.js utiliza un modelo de E / S sin bloqueo controlado por eventos, que lo hace perfecto para crear aplicaciones en tiempo real.

Es una plataforma creada para aplicaciones de red rápidas y escalables. También se usa para crear aplicaciones en tiempo real que interactúan con tareas relacionadas con datos.

La característica principal de nuestra aplicación es la comunicación en tiempo real entre el cliente y el servidor. Socket.IO tiene como objetivo hacer posibles aplicaciones en tiempo real en todos los navegadores y dispositivos móviles, borrando las diferencias entre los diferentes mecanismos de transporte. Es 100% en tiempo real sin preocupaciones en JavaScript. HTML5 presenta Websockets, pero está lejos de ser compatible con todos los usuarios, por lo que necesitamos una solución de respaldo.

También ofrece funciones muy fáciles de comunicar entre el servidor y el cliente, en ambos lados.

Hmm

Entonces ves programación, es un arte.

En el arte, a veces puede necesitar un pincel delgado:

O uno un poco más grueso.

Todo depende de lo que quieras hacer, ¿verdad?

La programación es de la misma manera.

Diferentes lenguajes de programación se convierten en diferentes herramientas en su caja de herramientas.

Para esta aplicación, si desea que esté en la web, aprenda HTML, CSS y JavaScript + un lenguaje de back-end.

Si quieres que sea móvil, aprende Java u Objective-C + Swift.

¡Al final, diviértete creando lo que amas y buena suerte!

More Interesting

¿Qué sitios web ofrecen la mejor base de datos en compañías de desarrollo de aplicaciones?

¿Qué podemos hacer con lenguajes de programación web que no sean sitios web / aplicaciones?

¿Cuál es la mejor aplicación móvil o sitio web receptivo?

¿Qué empresa es experta en tecnología de desarrollo de aplicaciones móviles?

¿Es seguro usar imágenes de aplicaciones en publicaciones de revisión de aplicaciones de Play Store?

¿Cuál debo elegir para una aplicación web, Sencha Touch o jQuery Mobile?

¿Por qué una aplicación nativa es mejor que una aplicación web?

En los próximos meses, puedo concentrarme en iOS o en el desarrollo web completo con una inclinación hacia el frente o el backend. ¿Cual deberia elegir?

¿Debo invertir mi tiempo en crear un sitio web o crear una aplicación móvil?

'La mayoría de las aplicaciones también necesitan un sistema back-end en el servidor'. ¿Qué significa esto?

¿Cómo se puede crear un sitio web y una aplicación como Quora?

¿Cuál es la diferencia entre las aplicaciones móviles y un sitio web optimizado para dispositivos móviles?

¿Sería útil para un programador si primero terminara el diseño gráfico y configurara un sitio web y una aplicación móvil antes de pedir ayuda con la integración de la base de datos o preferiría comenzar desde cero?

¿Cómo se desarrolló Slack para que la experiencia web y móvil sea tan similar?

¿Debo elegir convertirme en desarrollador web, programador de gráficos, desarrollador de aplicaciones móviles o ingeniero / científico de datos?