DDJ,
December 1997 - Object Oriented Programming


FEATURES

OBJECT MODELS AND JAVA

by Jean-Marie Chauvet and Marc Lerman

Although distributed objects are rapidly becoming the foundation for many applications, differences between object models continue to be a problem. Our authors show how you can use Java to glue together Microsoft's ActiveX controls and the OMG's CORBA objects.

IMPLEMENTING ABSTRACT FACTORY AS AN STL CONTAINER

by Jason Shankel

The Abstract Factory design pattern provides an abstract interface for object creation. This allows applications to select object implementation at run time. Jason implements the Abstract Factory pattern using C++ and the Standard Template Library.

C++ AND GARBAGE COLLECTION

by Mike Spertus

Automatic garbage collection is one reason languages such as Java and Smalltalk are so appealing. C++ programmers can also enjoy the benefits of efficient memory management, with tools such as the Great Circle garbage collector.

AUTOMATED METRICS AND OBJECT-ORIENTED DEVELOPMENT

by Jagdish Bansiya and Carl Davis

QMOOD++, the automated tool presented here, supports a suite of over 30 object-oriented metrics. In addition to making it easy to collect metric data, QMOOD++ has a repository in which metric data can be stored and retrieved for later comparison.

JAVA AND THE ZIP FILE FORMAT

by Mark R. Nelson

By compressing data and reducing the number of download transactions, Sun's java.util.zip package speeds the loading of applet components across the Internet. Data-compression guru Mark Nelson examines this package.

WRITING PORTABLE WIN32 SCSI APPLICATIONS

by Thomas Tewell

The native SCSI APIs for Windows 95 and Windows NT are very different from one another, making portable Win32 SCSI programming difficult. ASPIEMU, the WinASPI
32-bit DLL emulator module presented here, can make the job easier.

IMPROVE YOUR PROGRAMMING WITH ASSERTS

by Bruce D. Rosenblum

Asserts help you track and fix bugs faster, provided you understand how to use them effectively. Bruce offers ten easy rules for creating more reliable software with asserts.


EMBEDDED SYSTEMS

REAL-TIME OBJECT-ORIENTED MODELING

by Kevin W. Smith

ObjecTime is a CASE tool that supplies a graphical modeling environment for the object-oriented design and simulation of event-driven real-time systems. Using a formal object-oriented design methodology, graphical models are entered into the ObjecTime toolset, and efficient real-time C++ source code is generated.


INTERNET PROGRAMMING

BUILDING A SMART ONLINE VIDEO APPLICATION

by Robin Rowe

Many of today's applications involve Internet protocols, MPEG-1 video, JPEG images, ActiveX components, Netscape plug-ins, and other hard-to-master programming paradigms. Robin describes an application that integrates these disparate technologies.


PROGRAMMER'S TOOLCHEST

GNAT: THE GNU NEW YORK UNIVERSITY ADA TRANSLATOR

by Gavin Smyth

Gavin examines the GNU New York University Ada Translator, a high-quality, low-cost Ada 95 (and Ada 83) compiler that supports DOS, Windows, and various flavors of UNIX.

CODESTORE AND INCREMENTAL C++

by Lee R. Nackman

IBM's CodeStore technology promises fast builds by taking the source code, the previous build's target files, and any other state the system chooses to save to produce the desired target files. For "incremental" builds such as these, build time is proportional to the impact of the source code changed since the last build.


COLUMNS

PROGRAMMING PARADIGMS

by Michael Swaine

In this month's column, Michael takes a look back at the events of 1997 and challenges you with an End of Year Trivia Quiz.

C PROGRAMMING

by Al Stevens

Al cleans out his 1997 mailbox in this month's column and provides a forum for your comments on everything from constitutional law and the C++ Standard to Optima++ and the Florida Keys.

JAVA Q&A

by Clif Berg

Cliff demonstrates Java's dynamic class-loading features by creating a remote object browser that uses RMI.

ALGORITHM ALLEY

by Rod Stephens

Decision trees let you model a variety of complicated problems in a simple way. Rod shares some generic techniques that can accelerate a range of complex decision problems.

UNDOCUMENTED CORNER

by George Shepherd and Scot Wingo

Microsoft's Active Template Library provides template implementations of many of the most common COM idioms. However, to work with the more advanced COMisms in ATL, you'll want to understand what ATL is doing behind the façade of wizardry.

PROGRAMMER'S BOOKSHELF

by Robert Bernecky and Michael Fitzpatrick

This month, Robert examines Rick Booth's Inner Loops: A Sourcebook for Fast 32-bit Software Development, while Michael looks at Jeffrey Friedl's Mastering Regular Expressions.


Forum

EDITORIAL

by Jonathan Erickson

LETTERS

by you

NEWS & VIEWS

by the DDJ staff

OF INTEREST

by Eugene Eric Kim

SWAINE'S FLAMES

by Michael Swaine


Copyright © 1997, Dr. Dobb's Journal