Cómo todos sabeis, TypeScript es mi opción preferida para escribir código para la web, por muchos motivos, pero el fundamental es que impone unas reglas ante la flexibilidad de Javascript.
Curso de TypeScript
Por eso, os voy a recomendar un curso gratuito que podeis encontrar en https://typescriptcourses.com, y que es perfecto para iniciarse en TypeScript. El curso se desarrolla de 0, y va poco a poco descubriendo cuáles son los primeros pasos con Typescript, y cómo trabajar con los tipos, e incrementando progresivamente características más avanzadas, que si hacer desarrollo de SPA (Simple Page Apps), te serán de mucha utilidad.
Mi experiencia con TypeScript. Segunda reflexión
Ya hice tiempo atrás, una primera reflexión sobre TypeScript , lenguaje que me ha terminado enamorando y es el que habitualmente uso en lugar de Javascript. Aquí explico los detalles tras casi dos años desarrollando íntegramente en TypeScript.
Básicamente, lo que más me gusta es la posibilidad de asignar tipos a las variables, de forma que el valor que almacene sea de un tipo concreto, y no que pueda variar (tal y cómo sucede en Javascript). Para pequeños desarrollos, quizás esto no es importante, pero cuando haces desarrollos de miles de líneas, con clases y objetos que son utilizados en varios sitios, la cosa cambia, y mucho, y cualquier error
La segunda característica más utilizada son las interfaces, lo que me permite desarrollar objetos complejos con unas determinadas propiedades, para nuevamente, asignarlos a variables.
El hecho de poder crear clases es lo tercero que más valoro, sobre todo, porque encima puedes controlar la visibilidad de las variables, y los métodos (y propiedades) publicos a exponer, de forma que todo.
Complicarse la vida con librerias Javascript
Desde luego, no hay nada como complicarse la vida al utilizar librerias de Javascript en TypeScript, y es que tiene su truco. Por un lado, será necesario que localices los ficheros de definición (de las librerias), y por otro, integrarlos.
Personalmente, jQuery ha sido una de mis referencias, y de momento, no he cambiado. En esta decisión ha influido que de una versión a la siguiente, no se ha perdido compatibilidad, y el hecho de migrar de una versión a otra no ha supuesto nunca un “desastre”, o un reinicio de conocimientos por problemas de compatibilidad. Este problema de incompatibilidades entre versiones me impidió adentrarme con React, a pesar de que lo intenté. Supongo que en este 2018 tendré que involucrarme en aprender Vue.js, que es de las que más fama está cogiendo.
Por otro lado, tengo mucha aversión a mezclar lenguajes, típico de la web donde CSS, HTML5 y Javascript van en el mismo fichero, y eso ha condicionado también que aprenda React, y veremos a ver cómo me sienta otras librerias front-end.
Happy coding, y a aprender TypeScript!!