Ce document présente les principes de base des applications réparties, y compris les modèles de programmation et l'architecture des systèmes distribués. Il aborde également les défis liés à la communication asynchrone et aux défaillances, ainsi que divers design patterns comme le pattern proxy et le pattern factory. Des langages et frameworks comme Java, C# et Spring sont mentionnés pour illustrer l'implémentation de ces concepts.