Tecnologías que aprenderás

En un mundo moderno, aprender una sola tecnologia no es suficiente para
desarrollar aplicaciones web modernas

React
React

La librería para desarrollo de interface gráfica más popular

Redux
Redux

Contenedor de estados consistente para aplicaciones JavaScript

NodeJS
NodeJS

Entorno de ejecución JavaScript multiplataforma del lado del servidor

MongoDB
MongoDB

La base de datos NO SQL más popular del mercado

Webpack
Webpack

El sistema de empaquetado más avanzado para el desarrollo web

Pug
Pug

El motor de plantillas de alto rendimiento más popular para NodeJS

API REST
API REST

Desarrolla y documenta desde cero un API REST

Express
Express

El framework para el desarrollo web más avanzado de NodeJS

Javascript se está comiendo el mundo

Descubre porque deberías de aprender React, NodeJS & MongoDB

Acerca de este libro

Una breve reseña por parte del autor acerca de este libro

Cada día, nacen nuevas tecnologías que ayudan a construir aplicaciones web más complejas y elaboradas con relativamente menos esfuerzo, ayudando a que casi cualquiera persona con conocimientos básicos de computación pueda desarrollar una página web. Sin embargo, no todo es felicidad, pues realizar un trabajo profesional, requiere de combinar muchas tecnologías.

Puede que aprender React o NodeJS no sea un reto para las personas que ya tiene un tiempo en la industria, pues ya están familiarizados con HTML, JavaScript, CSS y JSON, por lo que solo deberá complementar sus conocimientos con una o dos tecnologías adicionales, sin embargo, para las nuevas generaciones de programadores o futuros programadores, aprender React o NodeJS puede implicar un reto a un mayor , pues se necesita aprender primero las bases, antes de poder programar en una capa más arriba.

Cuando yo empecé a estudiar el Stack completo de React + NodeJS + MongoDB fue necesario tener que leer 3 libros completos, pues cada uno enseñaba de forma separada una parte de la historia. Cada libro me enseñó a utilizar las tecnologías de forma individual, lo cual era fantástico, sin embargo, cuando llego el momento de trabajar con todas las tecnologías juntas, empezó el problema, pues nadie te enseñaba como unir todo en un solo proyecto, optimizar y pasar a producción como una aplicación completa. Todo esto, sin mencionar los cientos o quizás miles de foros y blogs que tuve que analizar para aprender los trucos más avanzados.

Este libro pretende evitarte ese gran dolor de cabeza que yo tuve por mucho tiempo, pues a lo largo de este libro aprenderemos a utilizar React + NodeJS con Express + MongoDB y aderezaremos todo esto con Redux, uno de los módulos más populares y avanzados para el desarrollo de aplicaciones Web profesionales. Finalmente aprenderemos a crear un API REST completo con NodeJS y utilizando el Estándar de Autenticación JSON Web Tokens.

El objetivo final de este libro es que aprendas a crear aplicaciones Reactivas con React, apoyado de las mejores tecnologías disponibles. Es por este motivo que, durante la lectura de este libro, trabajaremos en un único proyecto que irá evolucionando hasta terminarlo por completo. Este proyecto será, una réplica de la red social Twitter, en la cual podremos crear usuarios, autenticarnos, publicar Tweets, seguir a otros usuarios y ver las publicaciones de los demás en nuestro feed.

¿POR QUE COMPRAR ESTE LIBRO?

Construir aplicaciones reactivas con React puede ser una tarea complicada si no se sigue una guía simple, enfocada y dirigida que lo lleve de la mano en todo momento


Económico

Programación reactive con React, NodeJS & MongoDB es el libro más completo y económico del mercado, muy por debajo de las publicaciones de editoriales tradicionales


Totalmente actualizado

Compra el libro una vez y tenlo actualizado para siempre, todas las actualizaciones que realicemos al libro, será publicadas sin ningún costo adicional


Enfoque práctico

Todo el libro ha sido diseñado para que te conviertas en un FullStack, desarrollando a lo largo de todo el libro, un único proyecto que contemple todas las fases del desarrollo


Proyecto final

A lo largo del libro, desarrollaremos un proyecto totalmente funcional, el cual es una réplica de la red social Twitter, que llevaremos hasta producción


Enfoque dirigido

Este libro esta diseñado para aprender a crear aplicaciones Reactivas con React, por lo que aprenderemos todo lo necesario para llevar una aplicación desde desarrollo a producción


Código disponible

Todos los ejemplos y el proyecto final están acompañados del código fuente, el cual podrás descargar en su totalidad.

Aprende con proyectos reales

Durante todo el libro desarrollaremos una réplica de la red social Twitter, la cual nos ayudará a aplicar todos los conceptos aprendidos.

step-2
01

Todo el código


La aplicación se va construyendo capitulo a capitulo, y puedes descargar el código desde GitHub para analizar cómo se va construyendo.

02

Mini Twitter


Es el proyecto que desarrollaremos a lo largo del libro, el cual es una réplica de la red social Twitter 100% funcional.

03

Experimenta


Crear usuario, editar el perfil de usuario, seguir a otros usuarios, mandar y contestar Tweet, son algunas de las funcionalidades que estudiaremos.

Características de React

Algunas de las características más importantes de React

featured

Componentes

Los componentes son widgets de interfaz gráfica reusables que son creados usando tecnología Web abierta. Un Web Component puede ser usado sin escribir código, simplemente añadiendo una sentencia para importarlo.

Propiedades

Los componentes pueden recibir propiedades, que no son más que parámetros de entrada que ayudan a transmitir información de un componente padre a sus hijos.

Validación de propiedades

React permite validar la estructura de las propiedades, así como el tipo de dato, asegurándonos de recibir siempre la información esperada para un componente.

Ciclo de vida

React cuenta con una serie de métodos que conforman el ciclo de vida de un componente, los cuales nos sirven para controlar la forma en que se montan, actualizan y se destruyen.

JavaScript XML (JSX)

JSX es un lenguaje inspirado en XML y muy parecido a HTML, el cual permite construir interfaces gráficas de una forma muy simple y natural, el cual se adapta a la forma de trabajar de HTML.

Etiquetas personalizadas

Mediante React, es posible crear tus propias <etiquetas> personalizadas, las cuales pueden ser fácil mente utilizadas dentro de los componentes.

Carácterísticas de NodeJS

Mediante NodeJS es posible ejecutar JavaScript del lado del servidor, como un API REST

Servidor web

Con NodeJS es posible levantar un servidor Web en segundas, el cual pueda atender cualquier tipo de peticiones de una forma súper eficiente.

Pug (Motor de plantillas)

Pug es motor de plantillas por excelencia de NodeJS, el cual permite crear páginas web dinámicas y parametrizadas.

API REST

Express es el framework por excelencia para el desarrollo web en NodeJS, pero al mismo tiempo, es excelente para la construcción de API's REST.

JSON Web Tokens (JWT)

La autenticación por Tokens es una de las más seguras de la actualidad, pues evita tener que enviar el password en cada invocación, JWT es la librería por excelencia para esta terea.

Middleware

Los middlewares son como interceptores que se ejecutan primero que nada, mediante los cuales es posible realizar tareas previas a la ejecución de un servicio, como es validar la autenticación.

Subdominios

Crear un subdominio es realmente fácil con ayuda de Express y el módulo vhost, con el cual podemos separar las llamadas al API de la aplicación.

featured

Características de MongoDB

MongoDB es la base de datos NoSQL más popular y potente del mercado

featured

Mongoose

Mongoose es el módulo más popular para integrar NodeJS con MongoDB.

Schemas

Mediante los Schemas es posible definir las estructuras de los documentos, aunque es posible tener estructuras dinámicas.

Plugins

Mongoose permite instalar plugins propios o de la comunidad, que agregan nuevas funcionalidades que no vienen por defecto.

Estructura libre

MongoDB permite guardar cualquier tipo cualquier documento sin importar su estructura y tipos de datos, incluso, combinar diferentes tipos de documentos.

Operaciones básicas

MongoDB permite realizar las mismas operaciones que una base de datos tradicional, como consultar, guardar, eliminar, uniones, etc.

Propuestas de actualizaciones

Las siguientes tecnologías se proponen para futuras actualizaciones y su adición dependerá de los comentarios recibidos por parte de los lectores.

GraphQL

GraphQL

GraphQL es considerado por muchos, el remplazo del API REST, pues es un lenguaje de consulta de datos que permite definir la estructura en la que deseamos los datos, en lugar de adaptarnos a la estructura que nos proporciona el API.

UI

UI Library's

En esta propuesta de actualización, se propone agregar nuevas liberarías que ayuden a crear interfaces gráficas más avanzadas, incluyendo nuevos componentes, técnicas o estilos para mejorar la interface gráfica.

React Native

React Native

React Native es la versión de React creada especialmente para dispositivos móviles, la cual permite programar aplicaciones tal cual lo estuviéramos haciendo para la web, mediante JavaScript, componentes y JSX, para finalmente compilar las aplicaciones a una versión nativa.

NOTA: Las propuestas mencionadas en esta sección, no están incluida en la versión actual del libro, sino que son propuesta para ser agregadas en las siguientes versiones, las cuales se agregarán según los comentarios de nuestros lectores y las tendencias tecnológicas. Recuerda que puedes contactarnos para darnos tu opinión sobre qué temas deberíamos de agregar primero, incluso, proponer otros.

Contenido del libro

A continuación, el índice completo del libro:

índice completo del libro

  • Por dónde empezar

    • Introducción a React

    • Introducción a NodeJS

    • Introducción a MongoDB

    • La relación entre React, NodeJs & MongoDB

  • Preparando el ambiente de desarrollo

    • Instalando Atom y algunos plugIn interesantes

    • Instalando NodeJS & npm

    • Instalando MongoDB

    • Creando mi primer proyecto de React

    • Introducción a WebPack

    • React Developer Tools

  • Introducción al desarrollo con React

    • Programación con JavaScript XML (JSX)

    • Programación con JavaScript puro

  • Introducción a los Componentes

    • La relación entre Components y Web Component

    • Componentes con estado y sin estado

    • Jerarquía de componentes

    • Propiedades (Props)

    • PropTypes

    • DefaultProps

    • Refs

    • Keys

    • Las 4 formas de crear un Componente

  • Introducción al proyecto Mini Twitter

    • Un vistazo rápido al proyecto

    • Análisis al prototipo del proyecto

    • Jerarquía de los componentes del proyecto

    • El enfoque Top-down & Bottom-up

    • Preparando el entorno del proyecto

    • Invocando el API REST desde React

    • El componente TweetsContainer

    • El componente Tweet

  • Introducción al Shadow DOM y los Estados

    • Introducción a los Estados

    • Establecer el estado a un Componente

    • Actualizando el estado de un Componente

    • El Shadow DOM de React

  • Trabajando con Formularios

    • Controlled Components

    • Uncontrolled Components

    • Enviar el formulario

    • Mini Twitter (Continuación 1)

  • Ciclo de vida de los componentes

    • Function componentWillMount

    • Function render

    • Function componentDidMount

    • Function componentWillReceiveProps

    • Function shouldComponentUpdate

    • Function componentWillUpdate

    • Function componentDidUpdate

    • Function componentWillUnmount

    • Flujos de montado de un componente

    • Flujos de actualización del estado

    • Flujos de actualización de las propiedades

    • Flujos de desmontaje de un componente

    • Mini Twitter (Continuación 2)

  • React Routing

    • Single page App

    • Router & Route

    • IndexRoute

    • History

    • Link

    • Props

    • URL params

    • Mini Twitter (Continuación 3)

  • Interfaces interactivas

    • Qué son las transiciones

    • Qué son las animaciones

    • Introducción a CSSTranstionGroup

    • Mini Twitter (Continuación 4)

  • Componentes modales

    • Algunas librerías existentes

    • Implementando modal de forma nativa

    • Mini Twitter (Continuación 5)

  • Redux

    • Introducción a Redux

    • Implementando Redux Middleware

    • Debugin Redux

    • Implementando Redux con React

    • Migrando el proyecto Mini Twitter a Redux

  • Introducción a NodeJS

    • Porque es importante aprender NodeJS

    • El Rol de NodeJS en una aplicación

    • NodeJS es un mundo

    • Introducción a Express

    • Express Verbs

    • Trabajando con parámetros

    • Middleware

    • Error Handler

  • Introducción a MongoDB

    • Porque es importante aprender MongoDB

    • El rol de MongoDB en una aplicación

    • Como funciona MongoDB

    • Aprender a realizar consultas

    • NodeJS y MongoDB

    • Schemas del proyecto Mini Twitter

  • Desarrollo de API REST con NodeJS

    15.0
    • ¿Qué es REST y RESTful?

    • REST vs SOA

    • Preparar nuestro servidor REST

    • Desarrollo del API REST

    • Implementar los servicios REST

    • Documentando el API REST

    • Algunas observaciones o mejoras al API

  • Producción

    • Producción vs desarrollo

    • Habilitar el modo producción

    • Puertos

    • Comunicación segura

    • Alta disponibilidad

    • Hosting y dominios

Lo que la gente dice

Algunos comentarios por parte de nuestros lectores

team
Próximamente

¿Quieres darnos una recomendación? mándala a tres del formulario de contacto.


team
Próximamente

¿Quieres darnos una recomendación? mándala a tres del formulario de contacto.


team
Próximamente

¿Quieres darnos una recomendación? mándala a tres del formulario de contacto.


team
Próximamente

¿Quieres darnos una recomendación? mándala a tres del formulario de contacto.


ACERCA DEL AUTOR

Conecta con el autor por medio de redes sociales

Oscar Blancarte

Software & FullStack Developer

Oscar Blancarte es originario de Sinaloa, México donde estudió la carrera de Ingeniería en Sistemas Computacionales y rápidamente se mudó a la Ciudad de México donde actualmente radica. Oscar Blancarte es un Arquitecto de software con más de 11 años de experiencia en el desarrollo y arquitectura de software. Certificado como Java Programmer (Sun microsystems), Análisis y Diseño Orientado a Objetos (IBM) y Oracle IT Architect (Oracle). A lo largo de su carrera ha trabajado para diversas empresas del sector de TI, entre las que destacan su participación en diseños de arquitectura de software y consultoría para clientes de los sectores de Retail, Telco y Health Care. Oscar Blancarte es además autor de su propio blog oscarblancarteblog desde el cual está activamente publicando temas interesantes sobre Arquitectura de software y temas relacionados con la Ingeniería de Software en general. Desde su blog ayuda a la comunidad a resolver dudas y es por este medio que se puede tener una interacción más directa con el autor.

Preguntas frecuentes

A continuación, algunas de las preguntas más frecuentes con respecto a libro

¿Qué diferencia tiene este libro con el resto?

Programación reactiva con React, NodeJS & MongoDB, es el único libro que te enseña desde cero a desarrollar aplicaciones completas, pasando desde la fase de desarrollo a producción, combinando todos los conocimientos en un proyecto final.

¿Puedo descargar una muestra gratis?

SI, descarga la muestra aquí.

¿El libro cuenta con alguna garantía?

SI, tienes un plazo de 24 horas para solicitar tu reemisor total en caso de que el libro no alcance tus expectativas.

¿Qué conocimientos requiero?

Se recomienda un conocimiento básico de desarrollo web, como HTML, CSS y JavaScript

¿Qué tan extenso es el libro?

El libro cuenta con cercas de 550 páginas divididas en un total de 16 capítulos y un proyecto final que se desarrolla a lo largo de libro

¿Tengo que pagar por las actualizaciones?

NO, el libro está en constante evolución, y todas las actualizaciones estarán disponibles de forma gratuita.

¿Qué pasa si tengo una duda?

Todas las preguntas y sugerencias son bien recibidas, puedes mandarlas en el formulario de contacto o enviándome un mensaje privado en mis redes sociales.

¿Puedo ver el proyecto final en línea?

SI, el proyecto final está disponible para que lo pruebas, puedes acceder desde aquí.

¿No resolvimos tus dudas?

Pues enviarnos tus dudas en el formulario de contacto o atreves de redes sociales y con gusto te contestaremos.

Comprar

A continuación, el precio y lo beneficios de adquirir este libro

19 USD30 USD
La compra incluye
  • Libro electrónico (PDF)
  • Actualizaciones gratuitas
  • Proyecto final totalmente funcional
  • Descarga inmediata
  • Resolución de dudas.
  • Todo el código de ejemplos
Comprar

Otros de mis libros

Introducción a los patrones de diseño es el libro más completo que hay para aprender patrones de diseño desde un enfoque práctico, y explicado con ejemplos del mundo real. Olvídate de aprender con los clásicos ejemplos de como hacer una pizza, figuras geométricas y clases de animales que ladren o maúllen.

Instroducción a los Patrones de diseño

El único libro que te enseñará los patrones de diseño con ejemplos reales del mundo real totalmente en español.

Ir al libroMuestra grátis
header-img

Contactanos

También nos puedes contactar de las siguientes maneras

Contacto directo

Puedes contactarme directamente con el Autor de las siguientes maneras

Correo electrónico
oblancarte@oscarblancarteblog.com
Redes sociales
Búscame en las siguientes redes sociales:

Envianos tus comentarios