Archivo de la categoría: Javascript

Cover - React Provider pattern

React Provider – Patron de diseño

Los patrones de diseño son una super herramientas a la hora de desarrollar alguna funcionalidad en nuestras aplicaciones si son usados con sabiduría al igual que pueden ser un gran problema si lo implementamos simplemente por usarlo y no por necesitarlo, en este tutorial estaremos implementando el patron Provider junto a React.

Recientemente mientras trabajaba con react-redux, me hice la pregunta cómo funcionaba la función connect que me permite acceder al store de la aplicación mediante dicha función, y quise ver como funcionaba, al final me gusto mucho y lo encontré bastante útil así que me decidí a escribir para que demás personas pueda ver la magia detrás de esto.
Sigue leyendo

async actions redux

Async actions con Redux & Redux-thunk

Redux es una super librería para manejar nuestro estado en nuestras aplicaciones enviando acciones y modificando a placer nuestro estado, la simpleza de redux no permite que esta maneje acciones asíncronas y por ende es bueno utilizar algún middleware para llevar acabo dicho comportamiento, entre las opciones están redux-thunk, la cual es super simple de implementar y manejar.

Sigue leyendo

Angular Logo

$Http & $q AngularJs

Es poco probable encontrar hoy dia una aplicación web hecha en cualquier framework que no realice alguna petición ajax, debido a esto y al gran uso de AngularJS este tutorial sera de estos 2 AngluarJS service $http y $q.

$http

Servicio que nos proporciona todo un set de metodos para realiza nuestras peticiones xhr de la forma es que mejor nos guste y cumpla con los requerimentos de nuestras apies.

Realizar un request con angular es tan facil como:

var config = {};
$http.get('http://localhost/api/test', config)
     .then(function(response){ console.log('request exitosa.') }, 
           function(response){ console.log('error'); });

Sigue leyendo

Socket.IO Rooms & NameSpace

Socket.io es una excelente herramienta para lo que conocemos como aplicaciones en tiempo real, si tenemos una gran cantidad de usuario y queremos organizarlos y/o segmentarlo para saber a que grupo de usuarios le enviamos cierta información las características de Room y Namespace.

Los namespace

Son una segmentación de nivel superior, tanto el cliente como el server deben tener definidos estos contextos ya definidos una vez la aplicación esta en ejecución a diferencia de los rooms. Por defecto todas las instancias de socket.io usan un namespace ‘/’ dependera de nosotros queremos usar uno extra.

var server = require('http').Server(app);
var io = require('socket.io')(server);

Sigue leyendo

WebSockets (SocketIO & Express)

SocketIO una vez salió a la luz revoluciono la forma en la que las aplicaciones se realizaban, y nos brindo a los desarrolladores una herramienta bastante poderosa en cuanto al desarrollo de aplicaciones web se refiere. Brindándonos la capacidad de poder comunicarnos con nuestros clientes de forma directa en tiempo real.

Aprovechando la acogida de las apis de HTML5 socket.io nos brinda una interface para poder utilizar WebSockets y ademas a eso nos abstrae de usar metodos alternativos a WebSockets para navegadores que no lo soporten y aun así brindar a todos nuestros usuarios aplicaciones en tiempo real. Esta libreria cae perfecto para aplicaciones como Chats, Juegos, Analitica y demás, se puede ser bien creativo cuando tiene una comunicación bi-direccional con nuestros usuarios.

Sigue leyendo

Usando Redis en NodeJS

Usar Redis hoy día para hacer Caching de data que usamos constantemente es bien común y Nodejs no se queda atrás con esto. Por eso veremos un uso básico del mismo.

Redis también puede ser usado para implementar el patron Pub/Sub, donde nos suscribimos a ciertos eventos y así mismo ejecutar ciertas acciones en base a nuestra data obtenida.

Sigue leyendo

Plugins Utiles para Gulp

He aqui una lista de plugins que nos podrían brindar mucha ayuda a la hora de comenzar un proyecto web (FrontEnd) o posiblemente cualquier tipo de proyecto, al final del dia es una herramienta muy utilizada por frontend developers pero puede ser adaptada para cualquier otra cosa, solo hay que tener los plugins correctos a mano y saber como utilizarlos claro para sacarles el mayor provecho.

Sigue leyendo

Iniciando con Gulp

El automatizar procesos siempre ha sido una de las tareas de los ingenieros y en el área de software no es la excepción a la regla. Con el auge hoy día de los super sets de JavaScript (CoffeScript y demás) y preprocesadores de Css (Sass, less y demás) se convierte algo tedioso e inhumano estar procesando esos archivos manualmente cada vez que es realizado un cambio en uno de estos, así que para ese tipo de tareas y/o tareas particulares que nuestros proyectos requieran lo podremos lograr con lo que hoy se conocen como “Task runners” ahi es donde Gulp hace su entrada.

En este tutorial estaremos viendo uno de los mas nuevos en esta área y es Gulp Es relativamente nuevo pero una vez llego a la vista de los desarrolladores muchos han entrando en una relación seria con este producto.
Sigue leyendo

Queue Job AMQP (RabbitMQ) y Api web usando Nodejs (Hapi)

En este tutorial estaremos viendo como crear un job worker Cliente y Servidor del mismo, usando HapiJs (Nodejs Framework) y RabbitMQ como nuestra cola de trabajo.

Esto de las colas de trabajos es muy util a la hora de quitarle carga a nuestras aplicaciones y volverlas asíncronas en torno a cuando se realiza se realiza una petición de realizar cierta acción que podría comprometer el rendimiento de nuestra aplicación, se puede decir que es una forma de comunicar sistemas.

Las colas de trabajos suelen usarse mucho cuando nuestros sistemas tienen que interactuar con sistemas de terceros y los cuales no tenemos el control de disponibilidad / rendimiento cosa que si le agregamos la capacidad de trabajar procesos en background con una cola nuestra aplicación no sufrirá ningún inconveniente si estas aplicaciones de terceros esta dando problemas.
Sigue leyendo