Fundamentos y claves de TypeScript

¿Por qué usar TypeScript?

Alma Bolaños
Nowports Tech and Product
6 min readFeb 6, 2023

--

TypeScript Expert

TypeScript puede prevenir hasta un 15% de fallas en los proyectos. TypeScript cuenta con un analizador de código estáticos que constantemente nos está indicando posibles fallas o maneras para mejorar tu código.

Según Octoverse 2021, una encuesta que realiza Github a sus desarrolladores en la que mide la percepción de varios lenguajes, TypeScript ha tenido una aceptación creciente desde el 2017 hasta la actualidad.

También NPM trends nos dice que TypeScript está siendo demasiado usado por muchas librerías y proyectos en todo el ecosistema JavaScript. Pero, ¿entonces TypeScript es diferente a JavaScript? ¿Un desarrollador en TypeScript es diferente a uno en JavaScript?

La respuesta a ambas es sí, sin embargo, no hay una diferencia notable. Uno (TypeScript) se basa en el otro (JavaScript) añadiendo elementos para mejorar la detección de bugs y experiencia de desarrollo.

En JavaScript solo te das cuenta de que tienes un error hasta el momento en que lo ejecutas, sea en el navegador o en un entorno de ejecución como NodeJS, más no antes. Lo que queremos como desarrolladores es obtener retroalimentación lo antes posible para tener la menor cantidad de errores en producción.

JavaScript — ESNext — TypeScript

En el libro de Software Engineering At Google se muestra ciertas capas para detectar fallas en el desarrollo de software:

  1. El análisis de código estático: es una herramienta que escanea el código en busca de errores y vulnerabilidades comunes.
  2. Pruebas Unitarias: se elaboran pruebas para verificar el comportamiento de las unidades pequeñas de una parte del código.
  3. Pruebas de Integración: se realiza una análisis de los procesos relacionados con el ensamblaje o unión de los componentes.
  4. Revisión de código: se verifica si se ha seguido con las normas, estándares y mejores prácticas establecidas por el equipo.

¿Cómo instalamos TypeScript?

Normalmente TypeScript se instala por cada proyecto o dependiendo de como lo quieras usar, (Lo recomendable es que se instale por proyecto).

  1. Creamos una carpeta para nuestro proyecto.
mkdir ts-project cd tsc --version

2. Abrimos nuestro editor de preferencia. Si usas Visual Studio Code:

code.

3. Ahora crearemos nuestro archivo package.json de manera simple desde la terminal y dentro de la ruta de nuestro proyecto:

npm init -y

4. Finalmente, instalamos TypeScript.

npm install typescript — — save-dev

Compilador de Typescript

Lo que realmente hace el compilador es transpilar, ni el navegador ni Node.js pueden leer nativamente archivos de TypeScript, por lo que se realiza un proceso de traducción en la que el código lo convierte a JavaScript.

Compilador de TypeScript

Compilación de archivos TypeScript

Para realizar el proceso de transpilación en Nodejs, ejecutamos lo siguiente en terminal:

proceso de transpilación en Nodejs: npx tsc

Compilación a una versión específica

Podemos hacer que un archivo de TypeScript sea transpilado a JavaScript en un estándar específico como ECMAScript 6.

npx tsc file_typescript.ts — — target es 6 |

Enviar compilación a una carpeta en especifico

Si deseas que los archivos ya transpilados se generen en otra carpeta, puedes hacer agregar esta configuración al compilador:

npx tsc file_typescript.ts — — target es6 — — outDir destiny_folder

¿Qué es el tipado en TypeScript?

Gracias a TypeScript podemos manejar el tipado de las variables para evitar anomalías en el código.

En JavaScript, para declarar una variable constante lo realizamos de esta manera, para proyectos de software que tienen una gran escalabilidad, esto podría ser una fuente de bugs en el programa:

const title =’Hello World’

En TypeScript es similar al caso anterior, excepto que agregamos : y el tipo de datos de la variable, que será número. Estas últimas se denominan anotaciones de tipo o anotaciones de tipo:

const number: Number = 12;

Inferencia de tipos

A partir de la inicialización de una variable TypeScript, infiere el tipo que se utilizará en todo el código y no se puede cambiar. Por ejemplo:

let myName = “Alma”;

Aunque no indicamos el tipo de dato, qué pasaría en este caso:

let myName:string = “Alma”;

En Visual Studio Code, puede obtener el autocompletado proporcionando sugerencias basadas en el tipo de datos de una variable:

Autocompletado Visual Code

Aunque en archivos diferentes, TypeScript indicará aquellas variables con el mismo nombre como errores. Esto no sucede en entornos preconfigurados como Angular o React porque funcionan de manera modular o cada variable tiene un alcance. Si desea utilizar el mismo nombre de variable en diferentes archivos, puede crear una función anónima autoejecutable:

Función anónima autoejecutable

Tipos de datos

  • Numbers: El tipo de dato number se usa para variables que contendrán números positivos, negativos o decimales.
let myNumber: number = 28;
  • Booleanos: Este tipo de dato puede tomar dos valores: true o false.
let isExist: boolean = false;
  • String: El tipo de dato string nos permite almacenar una cadena de texto.
String: cadena de texto
  • Array: TypeScript, de no indicarle explícitamente, va a inferir que este solo contendrá valores del tipo number, si se quiere agregar un valor string nos va a marcar error. Lo puedes definir de esta manera:
let prices = [1,2,3,4,5];

Indicar explícitamente el tipo o tipos de datos que va almacenar el array:

Datos que va a almacenar el Array

Tipos de datos especiales

  • Any

Este tipo de datos es exclusivo de TypeScript. Literalmente nos permite almacenar cualquier tipo de dato en una variable(no se recomienda usar este tipo de datos ya que se considera como mala práctica):

Any

Es importante mencionar que la utilidad de Any es cuando se requiere migrar poco a poco de TypeScript desde JavaScript, ya que se implementaria el tipo de dato donde sea necesario sin romper nuestra programa de golpe.

  • Union Types

En este tipo de dato nos brinda definir más de un tipo de dato, igual en los argumentos de nuestra funciones.

Union Types

¡Atrévete a probar TypeScript!

TypeScript es el mejor amigo en la hora de hacer proyectos con gran escalabilidad ya que es un lenguajes de programación libre y fuertemente tipado, que nos ayuda bastante con su análisis de código estático que nos libra de los dolores de cabeza a la hora de compilar, si no que en lo que vamos escribiendo código nos va corrigiendo los errores y dándonos sugerencias de cómo mejorarlo.

¿Quieres leer más temas similares? 👉Visita el blog de Nowports Tech👈

--

--