Die Idee hinter einer Plattform ist die Abstraktion von komplizierten Details für eine Anwendungssoftware bzw. deren Entwickler.
Einerseits können diese Details unbekannte Eigenschaften der Ausführungsumgebung sein, in der eine Anwendungssoftware zukünftig verwendet wird, die zum Entwicklungszeitpunkt der Anwendung nicht bekannt sind oder sein können. Diese Eigenschaften der Ausführungsumgebung können beispielsweise der genaue Typ und Leistungsfähigkeit der Hardwarekomponenten sein oder mit welchem unterliegendem Betriebssystem die Anwendung irgendwann einmal vom Anwender betrieben wird.