DDJ Client/Server Programming


FEATURES

MIDDLEWARE AND THREE-TIER CLIENT/SERVER DEVELOPMENT

by Timothy E. Carone

Transaction managers-server-based software that enable the development and management of application programs-are key to the success of distributed processing. Timothy develops a typical three-tier, client/server system, using Tuxedo as the transaction manager and the Oracle Database Server as a resource manager.

OPTIMIZING CLIENT/SERVER DATABASE APPLICATIONS

by Gary Bist

Gary examines two coding methods-the Compound SQL statement and stored procedures-to reduce and reuse embedded SQL code to increase performance and productivity.

THE DBPERL RELATIONAL DATABASE API

by Perry Scherer

DBperl is a Perl 5 package that implements a relational database API for a variety of database engines, including Oracle, Informix, Ingres, Interbase, Postgres, Sybase, and Unify 5.0.

JAVA AND WEB-EXECUTABLE OBJECT SECURITY

by Michael Shoffner and Merlin Hughes

Our authors examine the general problems with Web-embedded executable objects and how Java's security model attempts to resolve them.

SPEECH RESEARCH WITH WAVE-GL

by Petra Lutter, Michael Muller-Wernhart, Jurgen Ramharter, Frank Rattay, and Peter Slowik

WAVE-GL, short for "Wave Generation Language," is a system designed for generating new sounds from mathematical descriptions. Our authors describe the tools they developed to create and manipulate WAV-format sound files.

EMBEDDED SYSTEMS

RESTARTING EMBEDDED SYSTEMS

by Fredrik Bredberg, Ola Liljedahl, and Bengt Eliasson

"Hot" starts allow a computer system to pick up at exactly the spot where it was before a system crash occurred. Operating systems such as the OSE RTOS from Enea Data make these hot starts possible.

NETWORKED SYSTEMS

UNDOCUMENTED WINDOWS NT AND THE NETWARE CORE PROTOCOL

by Sven B. Schreiber

NT's NetWare client API support leaves a lot to be desired. Sven shows you how to overcome this limitation by exploiting undocumented features of the NT NetWare redirector to send and receive NetWare Core Protocol (NCP) packets.

PROGRAMMER'S TOOLCHEST

EXAMINING THE SYSTEMS<TOOLKIT> LIBRARY

by Michael J. Vilot

Systems<ToolKit> is a library that builds on the expressive foundation of the C++ Standard Library. It also adds iostream support to distributed C++ applications using sockets (and pipes, in the UNIX version) for IPC connections. Mike uses Systems<ToolKit> to develop a pair of distributed client/server applications for environments such as the Internet.

EXAMINING FORTE EXPRESS

by Nabil Hijazi

Forte Express is a visual tool for client/server application development that generates the UI and database-access components of object-oriented, multi-tier applications.

COLUMNS

PROGRAMMING PARADIGMS

by Michael Swaine

While examining multimedia-authoring tools, Michael realizes that if you give your users four ways to solve a problem, you don't really know what the problem is.

C PROGRAMMING

by Al Stevens

Years of piano playing and programming finally pay off, as Al breaks into the exciting world of late-night TV. Not quite ready to give up his day gig, however, Al also shows how he converted a dialog-based MFC application to use the Property Sheet/Property Page idiom.

JAVA Q&A

by Cliff Berg

How threads work and how you can create a general-purpose event scheduler are Cliff's focus this month.

ALGORITHM ALLEY

by John Swartz

The main idea behind LISP is that any data structure can be constructed from lists. Consequently, John turns to this language when in need of a simple solution to complex combination problems.

UNDOCUMENTED CORNER

by Robert R. Collins

Robert presents a processor-detection algorithm that doesn't use Intel's CPUID instruction.

PROGRAMMER'S BOOKSHELF

by Eric McRae

Eric examines The Benchmark Book, by Richard Grace, and C Algorithms for Real-Time DSP, by Paul M. Embree.

FORUM

EDITORIAL

by Jonathan Erickson

LETTERS

by you

NEWS & VIEWS

by the DDJ staff

SWAINE'S FLAMES

by Michael Swaine

PROGRAMMER'S SERVICES

OF INTEREST

by Eugene Eric Kim