La tipificación estática es un sistema de tipos en el que los tipos de las variables se definen durante la fase de desarrollo y se verifican en tiempo de transpilación, incluso antes de ejecutar el código. Esto significa que, cuando declaras una variable o una función, especificas el tipo de dato que puede almacenar o devolver.

Por ejemplo, en TypeScript, puedes declarar una variable del tipo number para almacenar números enteros o de punto flotante:

let edad: number = 30;

En este ejemplo, la variable edad está declarada como del tipo number, lo que significa que solo puede contener valores numéricos. Si intentas asignar una cadena u otro tipo de dato a esta variable, TypeScript generará un error en tiempo de transpilación.

¿Por qué es importante la Tipificación Estática?

1. Detección temprana de errores

La tipificación estática permite que TypeScript verifique tu código en busca de errores de tipo en tiempo de transpilación. Esto significa que puedes detectar y corregir errores incluso antes de ejecutar el código, lo que hace que tu código sea más confiable y evita problemas en tiempo de ejecución.

2. Mejor documentación

La tipificación estática proporciona una forma de documentación incorporada en el código. Cuando declaras el tipo de una variable o parámetro de función, estás comunicando explícitamente la intención de usar esa variable. Esto hace que tu código sea más legible y comprensible tanto para ti como para otros desarrolladores que trabajen en el proyecto.

3. Herramientas de desarrollo avanzadas

La tipificación estática permite que las herramientas de desarrollo, como editores de código e IDEs, ofrezcan características avanzadas, como autocompletado, sugerencias de código y verificación de errores en tiempo real. Esto aumenta la productividad del desarrollador.

4. Refactorización segura

Con los tipos definidos, puedes realizar refactorizaciones con confianza, sabiendo que TypeScript ayudará a garantizar que los cambios no causen errores inesperados en otras partes del código.

Usando la tipificación estática

1. Tipos primitivos

// Tipos primitivos
let age: number = 25;
let name: string = "John";
let isActive: boolean = true;
  1. let age: number = 25;: Declara una variable llamada age que solo puede contener números y le asigna el valor 25.
  2. Declara una variable llamada name que solo puede contener texto (cadena de caracteres) y le asigna el valor "John".
  3. let isActive: boolean = true;: Declara una variable llamada isActive que solo puede contener valores booleanos (verdadero o falso) y le asigna el valor true.

2. Inferencia de tipos