Java Glossary : portability
Last updated 2004-06-28 by Roedy
Green ©1996-2004 Canadian Mind Products
Java definitions: 0-9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
You are here : home : Java
Glossary : P words : portability.
- portability
- The main point of Java is that your code should run on any platform without
changes, without even recompiling. Portability is a Good Thing TM
even if you don't plan to run the program on more that one platform. Why?
Portability leaves open the option to upgrade hardware, or to jump ship to some
other operating system if your current vendor misbehaves. It makes it easier to
upgrade to future versions of the current operating system. It leaves open the
option to reuse or sell your software to some other user with different hardware
or operating system. It makes it easier to get help. No matter what platform
your expert uses, he can still run or debug your code for you. Unfortunately,
manufacturers of hardware and operating systems historically have done their
darndest to discourage portability. It is to their economic advantage to lock
you in to their hardware or OS. We programmers and users need to fight back by
avoiding Java tools that lock you in to one platform. Ease of switching
platforms encourages vigorous competition between vendors. Peter Linden
recommended having a look at this
essay
on the issue. The flip side of this issue is that Sun has made some major boo-boos
which then are forced on the entire industry. These include a Date/Calender set
of classes only their mother could love, lack of consistency in the naming of
conversion functions and i/o methods, and a serialisation technique that is slow
and incapable of handling even a 1000-element list.