1997 23.01 1999

Vol.23 n°1 (#281) january 1998

(ddj_1998_01.jpg)

p.6 EDITORIAL

[author : Jonathan Erickson] #Edito

TABLE OF CONTENTS

FEATURES

p.20 JAVA: GETTING DOWN TO BUSINESS

[author : Arthur van Hoff]

A Java pioneer looks at the state of the art, Java-wise, and wonders if it is ready for prime-time business applications.

p.28 JAVA AND COM AUTOMATION

[author : Kenneth Bandes]

Ken examines the ActiveX technology called Automation (formerly "OLE Automation"), and shows how you can implement it in Java.

p.36 JAVA REFLECTION

[author : Paul Tremblett]

With the JDK 1.1 Reflection API, you can not only discover the fields, methods and constructors of loaded classes, but also dynamically manipulate them within the basic security framework. Chris Howard adds a note on the relationship between reflection and JavaBeans.

p.40 IMPLEMENTING ASSERTIONS FOR JAVA

[author : Jeffery E. Payne, Michael A. Schatz, and Matthew N. Schmid]

Assertions act like watchdogs that assist you in finding bugs earlier in the development process. Our authors show how you implement assertions for Java.

p.46 INSIDE JAVA CLASS FILES

[author : Matt T. Yourst]

Matt explores the class file format — the key to Java's binary portability. He then presents JavaDump, a program that documents structures in class files, and StripDebug, which removes extra debug information from classes.

p.54 THE JAVA INTERNATIONALIZATION API

[author : Carol A. Jones]

"Internationalization" is the process of preparing programs to run in other languages. Carol examines Java's Internationalization API and shows how you can use it to design global software.

EMBEDDED SYSTEMS

p.62 MUTUAL EXCLUSION AND SYNCHRONIZATION IN JAVA

[author : Dan Ford]

Dan discusses Java's concurrency features, presenting classes for mutual exclusion and synchronization that mimic the behavior and interfaces of the synchronization mechanisms available in the Win32 API.

INTERNET PROGRAMMING

p.76 DEVELOPING PEER-TO-PEER APPLICATIONS FOR THE INTERNET

[author : Louis Thomas, Sean Suchter, Adam Rifkin]

SimulEdit, the text editor presented here, lets groups of people edit the same file at the same time. Enabling this application are generic network data objects (NDOs) which are shared among multiple processes communicating over a network.

PROGRAMMER'S TOOLCHEST

p.82 EXAMINING JDBC DRIVERS

[author : Mukul Sood]

JDBC, short for "Java Database Connectivity," provides a programming-level interface for communicating with databases in a uniform way. Mukul discusses the different categories of JDBC drivers, then compares them in terms of performance.

p.90 EXAMINING MICROSOFT'S J/DIRECT

[author : Andrew Wilson]

Microsoft's J/Direct, which ships as part of Internet Explorer 4.0 (and with future versions of Windows 95/NT and Internet Information Server) simplifies the Java native code calling process almost to the point where a DLL function can be directly called from within a Java applet or application.

COLUMNS

p.107 PROGRAMMING PARADIGMS

[author : Michael Swaine]

Will the next killer app really be a "FUDchecker"? And, if so, will it be written in Java?

p.111 C PROGRAMMING

[author : Al Stevens]

Conferences, committees, and CodeWizard are the three Cs that Al sails this month.

p.115 ALGORITHM ALLEY

[author : John Boyer]

Resizable data structures are flexible, but array-based structures are fast. John shows you how to get the best of both worlds.

p.121 JAVA Q&A

[author : Cliff Berg]

This month, Cliff addresses centralized systems administration using Marimba's Castanet 2.0 channel (and JavaSoft's HotJavaBean) for distributing secure, signed content to users.

p.126 UNDOCUMENTED CORNER

[author : Robert R. Collins]

The 80386 introduced microprocessor support for emulating multiple 8086s. Robert looks under the hood of these Virtual Mode Extensions, which are mostly used by memory managers and DOS boxes in Windows.

p.133 PROGRAMMER'S BOOKSHELF

[author : Gregory V. Wilson]

Greg looks at Visual Basic 5 from the Ground Up, by Gary Cornell; UML Distilled, by Martin Fowler (with Kendall Scott); The CRC Card Book, by David Bellin and Susan Suchman Simone; and GUI Design Essentials, by Susan Weinschenk, Pamela Jamar, and Sarah C. Yeo.

FORUM

p.10 LETTERS

[author : you]

p.18 NEWS & VIEWS

[author : the DDJ staff]

p.137 OF INTEREST

[author : Eugene Eric Kim]

p.144 SWAINE'S FLAMES

[author : Michael Swaine]