JavaScript no es un lenguaje que sea estrictamente tipado y muchos proyectos han escalado bastante bien sin usar tipado, pero la realidad es que a medida que crece un proyecto su complejidad aumenta y simplemente existen muchos detalles que ya no podemos tener en mente.
React en su versión 17 va a tener cambios importantes agregando dos nuevas características React Suspense y Time Slicing, hoy hablaremos sobre la primera de ellas, veamos todo lo que debes saber sobre React Suspense.
Algo que tal vez todos los programadores hacemos todos los días es cometer errores (romper cosas) y esto es mucho más frecuente mientras la complejidad de nuestras aplicaciones crece, la forma que tenemos de evitar que esto suceda y pueda afectar al negocio es escribir pruebas
Lo primero que necesitamos para comenzar a implementar pruebas en cualquier proyecto es instalar la herramienta adecuada, en mi caso he elegido Jest y hoy vamos a ver como instalarlo y configurarlo.
Algo en lo que tal vez estemos de acuerdo es que una parte fundamental de construir software son los tests, un producto que no tenga pruebas es riesgoso que vaya producción, pero ¿cómo saber que los tests que escribimos son buenos tests?
Este fin de semana se ha lanzado Webpack 4 (nombre clave, Legato), esta es una versión bastante importante, ya que se ha trabajado bastante en el performance y en seguir el concepto de cero configuración #0CJS
Una parte fundamental de programar es la manera en que documentamos el código que escribimos, hoy veremos una manera de documentar funciones en JavaScript.
Para crear aplicaciones que resuelvan problemas complejos, debemos dividir estos en problemas pequeños que podamos resolver e implementar, luego componemos estas soluciones
Si quieres aprender a programar o aprender un nuevo lenguaje de programación, este es un buen momento para aprender JavaScript, déjame contarte por qué.
Una de las características más importantes de los lenguajes funcionales es que sus estructuras de datos son inmutables, las cuales muestran reducir la complejidad del software.
Uno de los principios más útiles para programar es KISS (Keep It Simple, Stupid), pero mantener las cosas simples no siempre es fácil, por eso hoy veremos como crear funciones que sigan esta filosofía.
Uno de los principios que todo programador busca cumplir es DRY (Don't Repeat YourSelf ), con Currying vamos a ver como hacer esto con nuestras funciones es bastante simple y útil.
Si JavaScript no tiene clases, ¿como se implementa la herencia? es tal vez una de las preguntas que todo desarrollador se ha planteado, en este post intentaremos terminar de dar respuesta esto.
En muchas ocasiones vemos que el sistema de objetos de JavaScript es nombrado como basado ejemplos o prototipos, pero no siempre vemos qué significa esto.
Uno de los procesos que todos realizamos mientras programamos cada día es comparar valores, si estos son iguales, diferentes, mayores, menores, etc, para poder realizar acciones con estos.
Cuando la mayoría de programadores piensa en programación orientada a objetos (POO), generalmente recuerdan lenguajes como Java o C++ donde una clase es una plantilla estática para crear objetos, heredando estos atributos y métodos dentro del objeto creado.
La forma como objetos se relacionan entre ellos y se extienden para representar cosas en una aplicación se llama herencia y esta es necesaria para crear aplicaciones grandes y complejas.
Los objetos son, una de las características menos entendidas en JavaScript, dado que su implementación tiene algunas diferencias importantes con muchos lenguajes de programación más tradicionales.
Las especificación del EcmaScript establece propiedades internas a todo objeto, estas indican su comportamiento estándar, las cuales en gran medida definen a JavaScript.
Una de las características más particulares de JavaScript, es el comportamiento de los tipos de datos, pero conociendo su comportamiento nos permite entender como se comportan nuestros datos durante la ejecución.
Un closure es cuando una función es capaz de recordar y acceder a un lexical scope, incluso cuando la función es ejecutada por fuera del lexical scope.
El scope de una variable hace referencia al lugar donde va a vivir esta, o podrá ser accesible, en JavaScript tenemos varias opciones: global, local y bloque.
Hoy he querido escribir de un tema bastante interesante, que hace gran parte de la computación moderna y al entender un poco de él, será de gran ayuda para entender algunos conceptos avanzados en JavaScript.
Este tema me hace especial ilusión, porque me costó entender el concepto, ya que venía de otros lenguajes de programación donde no se veía. Por eso, si puedo ayudarte a entenderlo sera genial.
Destructuring es una de las más poderosas características añadidas al lenguaje en ES2015, una característica que nos facilita las cosas y hace nuestro código más legible.
This es un keyword de JavaScript que tiene un comportamiento muy diferente a otros lenguajes de programación, así para algunos es considerado uno de los grandes errores de diseño del lenguaje.