Glossary O

object

  1. Generally, an instance of an entity that embodies both specific data and the functions that manipulate it.

  2. Specifically in object-oriented programming, an object is an entity that has state, behavior and identity. An object's state consists of its attributes and the attributes' current values. An object's behavior consists of the operations that can be performed on it and the accompanying state changes. An object's identity is what you use to distinguish it from other objects. In contrast, COM objects' behavior is defined by the interfaces it supports. A COM object's state is not explicitly specified, but is implied by its interfaces. A COM object's identity is defined by the ability to use IUnknown::QueryInterface to move between interfaces.

object code

Executable code generated by a compiler or an assembler from the source code of a program. See also object file.

object description language file

In OLE Automation, text files containing a description of an application's interface. Object description language scripts are compiled into type libraries using the MkTypLib tool included with the OLE Software Development Kit.

object file

A file containing object code and/or data generated by a compiler or an assembler from the source code of a program. Object files generated by the Visual C++ compiler have a .OBJ filename extension. See also Common Object File Format (COFF).

object handler

A DLL loaded into an OLE container’s process space that acts on behalf of a local server. The object handler responds to container requests that do not require the attention of the server, such as requests for drawing.

object library file

A dynamic-link library with a type library resource. An object library file typically has a .OLB filename extension.

Object Linking and Embedding

Pronounced "o-LAY." A way to transfer and share information between applications. Linking and embedding are two methods in OLE for storing items inside a compound document when those items were created in another application. An embedded item is stored as part of the compound document that contains it. A linked item stores its data in a separate file.

Object Module Format

A specification for the structure of object (.OBJ) files. The Microsoft Visual C++ version 4.0 linker accepts object files that are either COFF or 32-bit OMF. See also Common Object File Format (COFF), EDITBIN.

object state

  1. Generally, a snapshot of the instance data of an object.

  2. More specifically, the relationship, either active, passive, loaded, or running, between an object in its container and the application responsible for the object's creation. Passive objects are stored on disk or in a database, and the object is not selected or active. In the loaded state, the object's data structures have been loaded into memory, but they are not available for operations such as editing. Running objects are both loaded and available for all operations. Active objects are running objects that have a visible user interface.

object-oriented design

Or object-oriented programming. In traditional procedural languages (such as C, Fortran, and Cobol) code and data are separate. In the object-oriented approach, code and data that belong together can be combined into objects. Object-oriented design is further characterized by the use of inheritance (derived classes), polymorphism, encapsulation, and virtual functions (C++) in programming.

ODBC

An open, vendor-neutral interface for database connectivity that provides access to a variety of personal computer, minicomputer, and mainframe systems, including Windows-based systems and the Apple Macintosh. The ODBC interface permits an application developer to develop, compile, and ship an application without targeting a specific database management system (DBMS). Users can add modules called database drivers that link the application to their choice of database management systems.

ODBC cursor library

A dynamic-link library that resides between the ODBC Driver Manager and the drivers and handles scrolling through data.

ODBC driver

A dynamic-link library file that implements ODBC function calls and interacts with a data source. A driver processes ODBC function calls, submits SQL requests to a specific data source, and returns results to the application. If necessary, the driver modifies an application's request so that the request conforms to syntax supported by the associated database management system.

OEM character set

Printable characters used in full-screen MS-DOS sessions for screen display. Characters 32 through 127 are usually the same in the OEM, U.S. ASCII, and Windows character sets. The other characters in the OEM character set (0 through 31 and 128 through 255) correspond to the characters that can be displayed in a full-screen MS-DOS session. These characters are generally different from the Windows characters and may vary from one original equipment manufacturer (OEM) to another.

offset

In relative addressing methods, a number that tells how far from a starting point a particular item is located. For example, in the search for a specific data item stored within a known area (segment) of memory, an offset is used to tell the microprocessor how many bytes past the beginning of the segment the item is located.

OLE

Pronounced "o-LAY." A way to transfer and share information between applications. Linking and embedding are two methods in OLE for storing items inside a compound document when those items were created in another application. An embedded item is stored as part of the compound document that contains it. A linked item stores its data in a separate file.

OLE Automation

A way to manipulate an application's objects from outside the application. OLE Automation is typically used to create applications that expose objects to programming tools and macro languages, to create and manipulate one application's objects from another application, or to create tools for accessing and manipulating objects.

OLE Automation object

Or exposed object. An instance of a class that is defined within an application, exposed for access by other applications or programming tools by means of OLE Automation interfaces. See also OLE Automation client, OLE Automation server.

OLE Automation server

An application that exposes programmable objects to other applications, which are called "automation clients." Exposing programmable objects enables clients to "automate" certain functions by directly accessing those objects and using the services they make available. For example, a word processor might expose its spell-checking functionality so that other programs can use it. See also automation client.

OLE item

Or OLE (pronounced "o-LAY") object. An object that represents data, created and maintained by a server application, that can be seamlessly incorporated into a document so that the object appears to be a part of the larger document. The result is a compound document made up of the OLE item and a containing document.

OLE system DLLs

Pronounced "o-LAY." The means by which OLE containers and OLE servers communicate. The OLE system dynamic-link libraries (DLLs) provide functions that containers and servers call, and the containers and servers provide callback functions that the DLLs call. Using this means of communication, a container doesn't need to know the implementation details of the server application. A container can accept items created by any server without having to define the types of servers with which it can work

OMF

A specification for the structure of object (.OBJ) files. The Microsoft Visual C++ version 4.0 linker accepts object files that are either COFF or 32-bit OMF. See also Common Object File Format (COFF), EDITBIN.

Open Database Connectivity

An open, vendor-neutral interface for database connectivity that provides access to a variety of personal computer, minicomputer, and mainframe systems, including Windows-based systems and the Apple Macintosh. The ODBC interface permits an application developer to develop, compile, and ship an application without targeting a specific database management system (DBMS). Users can add modules called database drivers that link the application to their choice of database management systems.

Open Software Foundation

A consortium of companies that defines the distributed computing environment.

Open System Interconnection

A model that breaks network management into five functional areas: fault management, configuration management, security management, performance management, and accounting management.

operand

An entity on which an operator acts.

operator

Symbols that specify an evaluation to be performed on one operand (unary operator), two operands (binary operator), or three operands (ternary operator). See also operator precedence.

operator precedence

The relative position of an operator in the hierarchy that determines the order in which expressions are evaluated.

optimistic locking

A recordset locking strategy in which records are left unlocked until explicitly updated. The page containing a record is locked only while the program updates the record, not while a user is editing a record. See also pessimistic locking.

optimization

Compiler fine tuning to increase program performance or reduce program size. Visual C++ provides five optimization options: Default, Disable (Debug), Maximize Speed, Minimize Size, and Customize.

OSF

A consortium of companies that defines the distributed computing environment.

OSI

A model that breaks network management into five functional areas: fault management, configuration management, security management, performance management, and accounting management.

out-of-band data

A logically independent transmission channel associated with each pair of connected stream sockets. Out-of-band data is delivered to the user independently of normal data. The abstraction defines that the out-of-band data facilities must support the reliable delivery of at least one out-of-band message at a time. This message may contain at least 1 byte of data, and at least one message may be pending delivery to the user at any one time.

out-of-memory exception

An error that occurs during the execution of a program when an out-of-memory situation is encountered.

output parameter

In a function, a parameter containing data that the function is initializing for the caller.

output precision

In specifying a font, defines how closely the output must match the requested font's height, width, character orientation, escapement, and pitch.

outside-in

A model for in-place OLE objects that requires the user to double-click or select a verb from the Edit menu to activate the object. Outside-in objects are hidden from the user when inactive. See also inside-out.

overhang

The amount by which the black part of a glyph extends beyond its character cell on either side. See also ABC width, underhang.

overlapped window

A style of window meant to serve as an application's main window. Other windows can overlap the window's space on the screen.

overloaded operator

In C++, an operator that has been given functionality beyond that which is built into the language. For example, the programmer can overload the arithmetic operators to allow them to use objects of a given class as their operands. Overloading is usually done to make the source code more readable.

overloading

Supplying more than one definition for a given function name or operator name in the same scope. For example, the addition (+) operator can be overloaded to add the values contained in two objects of the same class. See also function overloading.

owned window

A window that has an owner. An owned window always appears in front of its owner window, is hidden when its owner window is minimized, and is destroyed when its owner window is destroyed. See also owner window.

owner window

A window that owns another window, thus affecting aspects of the owned window's appearance and behavior. See also owned window.

owner-draw control

In Windows, a control that is customized for a specific application. Owner-draw controls are similar to predefined controls in that Windows will handle the control's functionality and process input from the mouse and keyboard. However, the programmer is responsible for the appearance of the owner-draw control in its various states.