Write once, run anywhere (WORA)
Write once, run anywhere (WORA) est un terme qui fait référence à la capacité supposée d'un programme particulier à fonctionner sur tous les OS (systèmes d'exploitation) courants. Le terme, parfois aussi exprimé par write once, run everywhere (WORE), a été inventé à l'origine par Sun Microsystems en référence à Java.
Quand un programme a la capacité WORA, alors il devrait fonctionner sur des appareils qui utilisent toutes les versions populaires de Windows, du Mac OS, de Linux, d'Android, de Solaris, de NetWare, de HP-UX, ou de tout autre OS ou plateforme, que la machine physique se trouve être un gros ordinateur, un ordinateur de bureau, un ordinateur portable, une tablette ou un smartphone. La capacité de WORA exige que le système d'exploitation de chaque machine contienne des modifications permettant d'interpréter le bytecode du programme WORA compilé afin que le processeur de la machine puisse exécuter les instructions du programme WORA. Dans le cas de Java, par exemple, le système d'exploitation de chaque appareil doit intégrer sa propre version de la JVM (machine virtuelle Java).
Bien que Java se soit rapproché de l'idéal WORA, son succès a déraillé début 2013 lorsque des failles de sécurité sont apparues. Le problème s'est aggravé au point que le gouvernement américain a recommandé aux utilisateurs d'ordinateurs de désactiver Java jusqu'à ce que des correctifs appropriés puissent être développés et mis à la disposition de tous.
Sun Microsystems n'est pas la seule entreprise à avoir poursuivi l'objectif de WORA. Microsoft, en particulier, a entamé une campagne agressive dans le but d'améliorer ses API (interfaces de programme d'application) pour fournir une capacité WORA.