Asynchronous module definition
AMD, siglas en inglés de Asynchronous module definition ('Definición asíncrona de módulos'), es una API de JavaScript para definir módulos cuyas dependencias son cargadas asincrónicamente. Es útil para mejorar el tiempo de carga de los sitios web, cargando de forma asíncrona las dependencias de cada módulo antes de ejecutarlo.
Además de cargar múltiples archivos JavaScripts en tiempo de ejecución, AMD puede usarse para organizar mejor el código separándolo en archivos independientes que encapsulan su lógica. Esto es similar a otros lenguajes, por ejemplo Java, donde se utilizan términos como import
, package
, y class
para ese propósito. Finalmente, después del desarrollo es posible concatenar y minimizar todo el código fuente en un pequeño archivo para usarlo en producción.