TypeScript
Tutorial TypeScript: Módulos
TypeScript módulos: organización de código. Domina la organización de código en TypeScript utilizando módulos con ejemplos prácticos y detallados.
Aprende TypeScript y certifícateDefinición y Estructura
Los módulos en TypeScript son una forma de organizar y dividir el código en bloques lógicos reutilizables. Cada módulo puede contener cualquier combinación de funciones, clases, interfaces, tipos y otras abstracciones que pueden ser exportadas para su uso en otros módulos.
En TypeScript, un archivo de código es un módulo. No se necesita ninguna declaración explícita para convertir un archivo en un módulo. En vez de eso, cualquier declaración de export
o import
en el archivo lo convierte automáticamente en un módulo.
Aquí hay un ejemplo de un módulo simple en TypeScript:
// modulo.ts
export function suma(a: number, b: number): number {
return a + b;
}
export function resta(a: number, b: number): number {
return a - b;
}
En el ejemplo anterior, el archivo modulo.ts
define dos funciones, suma
y resta
, y luego las exporta para que otros módulos las usen.
Importación y Exportación
La importación y exportación de abstracciones entre módulos es fundamental para aprovechar la modularidad del código. TypeScript utiliza la sintaxis de import
y export
de ES6 para permitir la importación y exportación de abstracciones.
Exportación
Existen dos tipos de exportaciones en TypeScript: exportaciones nombradas y exportaciones predeterminadas.
Exportaciones nombradas
Las exportaciones nombradas son útiles cuando un módulo puede exportar varias abstracciones. Cada exportación se identifica con un nombre.
// modulo.ts
export function suma(a: number, b: number): number {
return a + b;
}
export function resta(a: number, b: number): number {
return a - b;
}
En el ejemplo anterior, suma
y resta
son exportaciones nombradas. También podrían omitirse los 'export' de las declaraciones y exportarse a continuación:
// modulo.ts
function suma(a: number, b: number): number {
return a + b;
}
function resta(a: number, b: number): number {
return a - b;
}
export { suma, resta };
Exportaciones predeterminadas
Cada módulo puede tener una única exportación predeterminada. Es útil cuando un módulo se asocia principalmente con una abstracción en particular.
// modulo.ts
export default function(a: number, b: number): number {
return a + b;
}
En este caso, la función que suma dos números es la exportación predeterminada del módulo.
Importación
El proceso de importación se hace utilizando la palabra clave import
. Para importar abstracciones nombradas, se usan sus nombres exactos. Para importar una exportación predeterminada, puede usarse cualquier nombre.
Importación de exportaciones nombradas
// app.ts
import { suma, resta } from './modulo';
console.log(suma(2, 1)); // Output: 3
console.log(resta(2, 1)); // Output: 1
Importación de exportación predeterminada
// app.ts
import suma from './modulo';
console.log(suma(1, 2)); // Output: 3
En el ejemplo anterior, el nombre suma
se usa para importar la exportación predeterminada del módulo modulo.ts
. Podría haberse usado cualquier nombre, al ser una exportación predeterminada declarada mediante default
. Nótese que para importar una exportación predeterminada, no se deben usar llaves {}
.
Conclusión
Los módulos en TypeScript ofrecen una forma eficaz de organizar y encapsular el código. Facilitan la creación de componentes de código reutilizables, mejorando la legibilidad, el mantenimiento y la reutilización del código. Con el uso de import
y export
, los módulos pueden compartir sus abstracciones de forma controlada, permitiendo una colaboración segura entre diferentes partes del código.
Ejercicios de esta lección Módulos
Evalúa tus conocimientos de esta lección Módulos con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.
Funciones
Funciones de primera clase
Clases
OOP y CRUD en TypeScript
Tipos genéricos
Namespaces
Módulos
Funciones TypeScript
Encapsulación
Tipos de unión e intersección
Interfaces
Tipos de unión e intersección
Funciones puras
Variables y constantes
Funciones flecha
Funciones puras
Control de flujo
Resolución de módulos
Control de flujo
Polimorfismo
Operadores
Funciones flecha
Herencia
Tipos de utilidad
Clases y objetos
Clases
Operadores
Encapsulación
Herencia
Funciones
Funciones de alto orden
Inmutabilidad
Interfaces
Funciones de alto orden
Tipos literales
Tipos de utilidad
Control de flujo
Polimorfismo
Interfaces
Tipos genéricos
Tipos literales
Inmutabilidad
Herencia de clases
Variables y constantes
Variables y constantes
Funciones de primera clase
Introducción a TypeScript
Todas las lecciones de TypeScript
Accede a todas las lecciones de TypeScript y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.
Introducción A Typescript
Introducción Y Entorno
Tipos De Datos, Variables Y Constantes
Sintaxis
Operadores Y Expresiones
Sintaxis
Control De Flujo
Sintaxis
Funciones Y Parámetros Tipados
Sintaxis
Funciones Flecha Y Contexto
Sintaxis
Clases Y Objetos
Programación Orientada A Objetos
Interfaces Y Su Implementación
Programación Orientada A Objetos
Modificadores De Acceso Y Encapsulación
Programación Orientada A Objetos
Herencia Y Clases Abstractas
Programación Orientada A Objetos
Polimorfismo
Programación Orientada A Objetos
Inmutabilidad
Programación Funcional
Funciones Puras
Programación Funcional
Funciones De Primera Clase
Programación Funcional
Funciones De Alto Orden
Programación Funcional
Tipos Literales
Tipos Intermedios Y Avanzados
Tipos Genéricos
Tipos Intermedios Y Avanzados
Tipos De Unión E Intersección
Tipos Intermedios Y Avanzados
Tipos De Utilidad
Tipos Intermedios Y Avanzados
Módulos
Namespaces Y Módulos
Namespaces
Namespaces Y Módulos
Resolución De Módulos
Namespaces Y Módulos
En esta lección
Objetivos de aprendizaje de esta lección
- Comprender el concepto de módulos en TypeScript como bloques lógicos reutilizables.
- Aprender cómo crear un módulo en TypeScript a través de la sintaxis de
export
. - Conocer los dos tipos de exportaciones en TypeScript: exportaciones nombradas y exportaciones predeterminadas.
- Aprender a importar exportaciones nombradas y predeterminadas utilizando la sintaxis de
import
. - Entender la importancia de los módulos para la organización y encapsulación del código, mejorando la legibilidad y el mantenimiento.
- Reconocer cómo los módulos facilitan la colaboración y la reutilización del código en diferentes partes de una aplicación.