Multipiattaforma: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m +senza fonti
m fix link
Riga 8:
Poiché fornire e [[collaudo|collaudare]] versioni compilate di un programma per ogni [[Sistema operativo|OS]] ed ogni CPU è praticamente impossibile, i progetti di [[software libero]] (o [[open source]]), o che altrimenti permettono all'utente di compilare il proprio ''object code'', possono essere considerati ''più'' multipiattaforma. Allo stesso modo, i [[linguaggi interpretati]] o che richiedono una ''virtual machine'' sono più multipiattaforma quando ognuno può compilarsela. [[Hotspot (informatica)|Hotspot]], la virtual machine di [[Java (linguaggio)|Java]] della [[Sun Microsystems]], è fornita solo sotto forma di binari [[precompilati]], con supporto per parecchie piattaforme (''ma non tutte'', nemmeno potenzialmente). Per esempio, Sun supporta [[Linux|GNU/Linux]] solo sull'architettura [[i386]] (e parzialmente [[AMD64]]) così che chiunque ha Linux su un [[PowerPC]] o su computer [[SPARC]] non può utilizzare Java, se non compilando nel linguaggio macchina nativo oppure utilizzando strumenti di terzi.
 
Molte [[Application programming interface|API]] sono specifiche per una singola piattaforma. Si può dire che le [[OpenGL]] siano invece multipiattaforma perché non sono legate a un particolare sistema operativo, architettura CPU o marca di hardware grafico. API legate a una sola piattaforma possono essere ricreate sugli altri sistemi creando un livello di compatibilità, come ad esempio le librerie [[WINE]], che consentono ai programmi che richiedono le librerie di [[Microsoft Windows|Windows]] di poter funzionare su UNIX.
 
Ci sono anche estensioni multipiattaforma e [[middleware]] per molti linguaggi di programmazione che permettono ai programmatori di compilare e fari girare lo stesso [[codice sorgente]] con minimi ritocchi su piattaforme differenti. Alcuni esempi sono le [[Qt]] e le [[wxWidgets]].