Java Glossary

Last updated 1998 June 16 by Roedy Green ©1996-1998 Canadian Mind Products.

Stuck in a frame? Click here to break out.

V

V.17
FAX standard for 14,400 BPS.
V.18
CCITT standard for TDD modems for the deaf.
V.21
CCITT standard for 300 BPS Modems, similar to, but incompatible with, the Bell 103 standard.
V.22
CCITT standard for 1200 BPS modems. It is similar to, but incompatible with, the Bell 212A 1200 BPS standard.
V.22 bis
CCITT standard for 2400 BPS modems. Happily Americans use the same standard.
V.23
CCITT standard for 1200/75 BPS sometimes used in the UK.
V.24
CCITT standard roughly equivalent to RS232-D.
V.25 ter
CCITT proposed standard, likely to be some form of the Hayes AT command set. see also V.at, Hayes command set.
V.27 ter
CCITT standard for 4800 BPS FAX.
V.28
CCITT standard for power levels, line driver/receiver impedances etc. in unbalanced double-current interchange circuits. It covers the electrical characteristics of how two modems talk to each other up to 20,000 BPS.
V.29
CCITT standard for 9600 BPS modems used on 4-wire leased lines. These modem do not work on dial-up lines.
V.32
CCITT standard for 9600 BPS full duplex modems. It allows both modems to talk simultaneously requiring costly echo cancelling circuits. Any two V.32 modems, even if they were made by different manufacturers, can talk to each other. The V.32 standard covers modulation. A V.32 modem will also have V.42 error correction and V.42bis compression.
V.32 bis
CCITT standard for up to 14,400 BPS full duplex modems. It allows both modems to talk simultaneously requiring costly echo cancelling circuits. Any two V.32 bis modems, even if they were made by different manufacturers, can talk to each other. V.32 bis modems can also talk to the older 9600 baud V.32 modems. The V.32 bis standard covers modulation. A V.32 bis modem will also have V.42 error correction and V.42bis compression.
V.32 terbo
promoted by AT&T and adopted as an ad-hoc US standard by a number of companies. Expands V.32 bis by adding 16.8 and 19.2 kbit/s, achieved by expanding the number of points in the two-dimension constellation (roughly speaking it uses more tones in composing its sound chords). ZyXEL did a better job of 19.2 by increasing the symbol rate instead of increasing the constellation size as "terbo" does to the point where small impairments become significant contributors to block errors. (By the way "terbo" was coined to suggest "turbo" and "ter", the latter being French for "third").
V.34
CCITT standard for 28K BPS Modem announced on 1994 June 9. Some older products can be upgraded to V.34 compatibility. Upwardly compatible with V.32 bis, V.42 and V.42bis. Provides speeds in 2400 BPS increments from 4.8K to 28.8K BPS. Originally promoted by a joint contribution of about 30 modem companies. Heritage can be traced to Motorola Codex for many of the basic features.
V.35
CCITT standard for 48K BPS modems in Europe and 56K BPS modems in the USA. It uses a rectangular 35 pin connector with electrically balanced signals. It most commonly used for connecting to digital leased lines.
V.42
CCITT standard that makes it possible for modems to detect, but not correct, errors caused by static. It handles MNP-1 through MNP-4 as well as LAPM.
V.42 bis
CCITT standard that allows on-the-fly data compression. It also 3.5:1 compression which is quite a bit better than MNP-5's 2:1. Since the Lepel-Ziv-Welch compression is complex, transmission speed is usually limited by the speed of the compression circuitry.
V.58
CCITT standard for Modem Information Blocks for network management. This is not of concern to ordinary users.
V.8
CCITT standard for Calling-tone menu (part of the V.34 startup sequence). Not something to concern the average user.
V.90
ITU standard for 56K BPS modems. Replaces K56flex.
V.at
CCITT "Question" It is a topic of debate during the next "Study Period" with the goal of accepting a form of the Hayes AT command set as V.25 ter sometime in the future. In a related item, Hayes has formally announced that they would license the Heatherington "+++" patent in a non-discriminatory manner. The formal announcement isn't anything new -- Hayes has been issuing licenses in that manner ever since the Bytecom decision -- but it crosses the official "t" on the subject. Hayes managed to patent the idea of a pause before and after the string +++ to gain the modem's attention. The required pause helps avoid inadvertently attracting the modem's attention when you send files (such as this one) containing the string +++.
V.FAST
CCITT preliminary work on the V.34 standard for modems to run at 28.8K uncompressed. Supplanted by the official V.34 standard.
V.FC
V.Fast Class promoted by Rockwell as a proprietary implementation of "V.Fast" now officially called V.34. US Robotics has developed an independent implementation of V.FC.
valid
A component is valid if its size and position relative to its enclosing container have been calculated. A container is valid if it is valid with respect to its container, and all its enclosed children are valid. A container might be marked invalid because a subcomponent had been added/removed or shown/hidden and the positions of the remaining elements need to be adjusted in position and size. An individual component might be marked invalid because it now contains an image that takes more room to display. Valid does imply the component is currently or even will be displayed on the screen. Standard layout managers ignore hidden components. Custom ones well could well leave room for them. See also validate, invalidate, visible.
validate
check that a container is valid and if not, calls layout() or validateTree() to calculate the exact positions and sizes of all the contained components. validate() was formerly known as pack, (though they are not exactly the same). It redoes the layout if necessary deciding on new sizes and locations of all the components in the container. Most often it gets called directly by application programmers, after a frame or other container been composed, but just before the Frame.setVisible(true). validate() is also called as the second step in processing a COMPONENT_RESIZED event. Invoking validate() by itself will not schedule a repaint. If your recent layout changes (e.g. button adding/removing) are not showing up, make sure you do a validate() prior to any repaint(). Even though validate() does nothing if the layout is already valid, don't call validate() unnecessarily. Wait until just before the setVisible() or repaint() to avoid the overhead of calculating the entire layout just to deal with some tiny change. See valid, invalidate.
value type
In Java a = b makes a copy of b and puts it in a when a is a primitive e.g. int, long, float or double. Otherwise a is a reference value and receives a pointer (reference) to the same object that b points to. In Java there are no equivalent to C++ structs whose entire structure would be copied to a.
vaporware
Software announced before it has even been written. Software mired in extended beta-test would not usually be termed vapourware. A vendor may announce a product only to test if there is any market interest, or to spoil the actual product announcement of a competitor. That might be termed pernicious vapourware.
variable
There are several types of variables. My personal preferred terms for each are show in bold. Variables take on different values at different stages in the execution. You can have variables that are part of the class (static class variables), variables that are part of an object (instance variables). Collectively static variables and instance variables are called member variables, or just members. Variables defined inside a method are called local, temporary or stack variables. Static final variables are called constants by normal humans and values by the Java Language spec. Fields collectively refer to static class variables, instance variables and static final constants defined inside classes, but outside methods. There is one copy of each static variable per class, one copy of each instance variable per instantiated object, and one copy of each local variable for each incarnation of its enclosing method currently executing. Static is a strange word, inherited from C. I use it in preference to class variable because it matches the keyword used in code. There is no corresponding explicit keyword for instance. A variable is declared instance by the lack of the keyword static. There is similarly no keyword local. You create local declarations using identifiers otherwhere declared as types in the middle of a method. There is no obvious visual clue. See field, local variable, constant, literal, instance variable, static variable.
VasJavaToHTML
Converts Java source code to HTML, colouring it.
verifier
A program that clecks JVM byte codes in class files to make sure the stack won't overflow, and that operands will always be the correct type. Applet classes downloaded over the Internet automatically go through a verfication. You can also explicitly test by submitting your classes to the Kimera verifier.
Veronica
Internet speak for a program that provides you with a list of gopher servers. See Archie.
vCard
The Internet Mail Consortium Versit's interchange format for electronic business cards. The format is done using only printable ASCII characters. Have a look at my electronic business card which includes a digitised logo and photo. You can view it properly with the vCard viewer. See Bustel.
VIBE
Visix's visual Java IDE RAD. It runs on Windows 95, Mac and Solaris. See springs and struts.
virtual
"Virtual" in C++ means "overrideable". In Java all methods are assumed overrideable unless marked final (or private which implies final). Virtual has yet another meaning in C++. When you inherit from several classes, which may share a common subclass, in C++ you have to decide how many copies of the base class variables you want -- a shared or separate embedded in this new object. "virtual" refers to using a single shared copy. In Java you can inherit from only one class, so the problem never comes up. See also pure virtual. See JVM.
virtual machine
See JVM.
Visaj
a RAD for developing Java applications. See RAD.
Visblock
A Java obfuscacator. See shroud, obfuscate.
visible
a component is visible if in on any repainting cycle it should be repainted. It might not actually be visible on the screen right now because it is occluded, or because CardLayout is not currently displaying the panel in which the component lives. See Layout, valid, enabled.
visitor
a design pattern where work gets done as a side effect of an object visiting others, e.g. traversing all the nodes in a tree. See design patterns.
Visual Café Database Development Edition
Symantec marketing's new name for the version of Café that comes bundled with Sybase SQLAnywhere SQL engine and dbAnywhere. I have written an essay giving some tips on how to use it and bugs to watch out for. See Symantec.
Visual Café Pro
Symantec's Java development package that includes a compiler, editor, debugger, dbAnywhere, and Sybase SQL. It is the same code as Visual Café Database Development Edition, but with a few things left out. See See Visual Café Database Development Edition, Symantec.
Visual Programming
We are moving away from text based representations of computer programs to more visual forms just as JavaBeans components, Delphi and CPX. Prograph CPX is an entirely visual, iconic, dynamic, object oriented, data-flow, interpreted IDE, compiled executable programming language. It is currently available on the Macintosh platform. They are well into the beta of their Windows 95/NT version. There is no textual syntax. The only text is the name on the icon. Everything else is represented graphically. Icons are linked by lines. The input nodes on top are called terminals. The ouput nodes on the bottom are called roots. You may visit Pictorius Incorporated's home page.
VisualParse++
A parser that parses interactively. You can watch it build the tree visually.
VLIW
Very long Instruction Word. Intel is working on a new type of CPU that uses very long instruction words instead of microcode. The instruction words give it hints on branch prediction etc. The processors are very fast, but need recompilation even for different variants of same processor. Its as if you needed a totally different exe file for 80386, 80486, Pentium, and Pentium Pro processors. The Java JIT solves the code distribution problem neatly, since the common JVM class files can be compiled as the last minute into the required VLIW format.
VoiceType
IBM's $15 add in for Netscape that lets you browse the web using voice commands. Its main use is nicknames for common websites you like to visit, rather than searching long lists of bookmarks.
Volano
a package for creating chat room software applications.
Voyager
A ORB/Agent product, free for commercial use. See ORB.
VRML
Virtual Reality Markup Language. A ASCII-based language for describing simple three dimensional objects and their interactions. The intent of the language is to use as little bandwidth as possible in the descriptions, by have the scenes rendered from mathematical descriptions rather than from bit maps.



HTML Checked! award
Canadian Mind Products The Mining Company's
Focus on Java
Best of the Net Award
You can get an updated copy of this page from http://mindprod.com/jglossv.html