一次编写,到处运行”(Write once, run anywhereWORA,有时也作“write once, run everywhere”、WORE)是Sun微系统用来展示Java编程语言跨平台特性的口号[1][2]。在理想中,这意味着Java可以在任何设备上开发,然后编译成一段标准的字节码,就可以在任何安装有Java虚拟机(JVM)的设备上运行。在芯片设备软件包中安装Java已经成为一种工业实践的标准。

它意味着开发者可以在一台PC上进行Java开发,并能在安装有Java的手机路由器大型计算机上运行其代码而无需经过调整。这将使开发者能更容易地在不同的平台操作系统上部署软件,而不必开发不同的版本来面向不同平台。

该想法可以追溯到20世纪70年代,UCSD Pascal系统在p-code上开发、运行。James Gosling提到UCSD Pascal(以及Smalltalk虚拟机)对Java虚拟机的设计有关键性的影响[来源请求]

美中不足的是,Java虚拟机在各种操作系统(WindowsLinuxSolarisNetWareHP-UX以及Mac OS)上有多种不同的实现,导致Java程序在不同的JVM虚拟机和操作系统上执行时有微妙的差别,所以一种应用可能需要在许多平台上进行测试才能确保正确性和稳定性,这造就了一个程序员间的笑话:“一次编译,到处调试”(“Write Once, Debug Everywhere”)。[3]

引用

参见

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.