Java Glossary : portability

CMP home Java glossary home Menu no menu 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.


CMP logo
CMP_home
home
Canadian Mind Products CSS
HTML Checked!
ICRA ratings logo
mindprod.com IP:[24.87.56.253]
Your IP:[80.134.30.163]
You are visitor number 657.
Please send errors, omissions and suggestions
to improve this page to Roedy Green.
You can get a fresh copy of this page from: or possibly from your local J: drive mirror:
http://mindprod.com/jgloss/portability.html J:\mindprod\jgloss\portability.html