Asynchrone Programmierung ist eine Strategie zum Verschieben von Vorgängen mit hoher Latenz oder niedriger Priorität, normalerweise um die Leistung, Reaktionsfähigkeit und / oder Kompositionsfähigkeit von Software zu verbessern. Solche Strategien werden normalerweise unter Verwendung einer Kombination aus ereignisgesteuerter Programmierung und Rückrufen und optional unter Verwendung der Parallelität über Coroutinen und / oder Threads angewendet.