Rogue Wave banner
Previous fileTop of DocumentContentsIndexNext file

1.4 Conventions

All Rogue Wave C++ class names start with the uppercase letters RW, as in RWRunnable. In some cases, an instance of a class is referred to by an English name; for example, "the runnable" instead of "the RWRunnable." We do this to make it easier to read when the meaning should be clear from context, but we use the longer form to avoid possible ambiguity.

All function names begin with a lower case letter, with the first letter of subsequent words capitalized, as in getAttribute(). Function names attempt to accurately describe what a function does. For example, newsGroup(void) returns the specified news group portion of the URL, if applicable. Underline characters and abbreviations are not generally used in function names.

Function names, examples, operating system commands, mathematical symbols, and code fragments are shown in a Courier font. Ellipses are used in code examples to indicate that some part of the code is missing.

Throughout the documentation, there are frequent references to "self," which should be understood to mean *this.

1.4.1 Notation Showing Class Relationships

Each class that inherits from another class, or from other classes, includes an illustration that shows the inheritance hierarchy. For example, the following illustration indicates that class A inherits from class B:

A B

When a class inherits from more than one class, or there are multiple levels of inheritance, all of the inheritance relationships are shown. For example, the following illustration indicates that class A inherits from class B which inherits from class C, and from class D:

B

A

C D

The notation system used in the inheritance hierarchies is based on the Object Modeling Technique (OMT) developed by Rumbaugh and others.1 The notation is similar to the notation used in Design Patterns by Gamma, Helm, Johnson, and Vlissides.

The class hierarchy diagrams in Chapter 2 use UML notation.

1.4.2 Documentation of Exceptions in Function Descriptions

We document exceptions thrown for each function, as described in Table 1.

Table 1 -- Documentation of exceptions in function descriptions

 
Exception possibilitiesFunction description includes...
Function throws an exception.
Explicit documentation of exception. Example:
"Throws exception RWTHRThreadNotActive."
Function guaranteed not to throw an exception.
Explicit documentation. Example:
"Throws no exceptions."
Function throws an exception and propagates exceptions thrown by other objects.
Explicit documentation. Example:
"Throws exception RWTHRThreadNotActive and propagates any other exception thrown."
Function may propagate an exception thrown by another function.
Description says nothing about exceptions. You should assume that the function propagates an exception thrown by another function.



Previous fileTop of DocumentContentsIndexNext file

©Copyright 2000, Rogue Wave Software, Inc.
Contact Rogue Wave about documentation or support issues.