La portabilité désigne pour un programme informatique sa capacité à pouvoir être adapté plus ou moins facilement en vue de fonctionner dans différents environnements d'exécution. Les différences peuvent porter sur l'environnement matériel (processeur) comme sur l'environnement logiciel (système d'exploitation). La différence d'environnement peut également porter sur une combinaison des deux éléments. C'est le cas par exemple dans les domaines de l'informatique embarquée, des super calculateurs ou des machines virtuelles.