by Fred Wild
Interfaces provide a convenient means of resolving the tension between what a class is and what it can do. Keeping interface and implementation separate in C++ programs keeps designs clean and fosters reuse.
by Dave Pomerantz
Notifiers, also called "events" or "messages," are used to pass information anonymously between objects. Dave shows how notifiers can work in C++, using a multithreaded application as an example.
by Kevin Haverlock
Kevin presents a technique for exchanging data between Java and C++ using object serialization over a TCP/IP sockets connection.
by Jim Beveridge
The "specialty store" Jim presents lets new classes be registered at run time, even if they live in a shared library or DLL. Once registered, these new classes are treated exactly like built-in classes.
by Nathan Myers
Nathan discusses how the Standard C++ Library supports internationalization and offers tips on using the C++ locale library.
by Jonathan S. Arney
CPDQ is a utility that uses Tcl for more-sophisticated preprocessing than CPP. CPDQ's C API makes it easy both to extend the language and embed the interpreter into other applications.
by Aspi Havewala
When you create a unique hardware platform and use Windows CE, you can pick and choose from among available components to build a "custom" version of Windows CE.
by Don Hair and Cesar Quiroz
Don and Cesar examine the differences between native and embedded development systems, and discuss the features of embedded development compilers that make them different from native compilers.
by Stefan Nilsson and Gunnar Karlsson
One of the bottlenecks of the Internet is the address lookup operations performed by routers. Stefan and Gunnar show how to perform the lookups efficiently with a simple data structure--a level-compressed trie.
by Mauricio de Simone and Gregory V. Wilson
The Active Expressions library combines the conciseness and checkability of language extensions with the portability and extensibility of a library.
by Stefan Hoenig
MFC is limited when it comes to encapsulating different window functionality into separate objects. Stefan presents a technique for encapsulating user actions into separate objects that support MFC message maps.
by Michael Swaine
"And the winner is...," says David Patterson, "...David A. Patterson." Michael also looks at Bob Bemer's newest Y2K trick, and reports on Apple's Worldwide Developers' Conference.
by Al Stevens
When it rains anniversaries, it pours. Al looks back at his past ten years at the helm of the "C Programming" column.
by Cliff Berg
Cliff shows how you can use encryption to protect data at its point of origin or destination.
by Sergei Savchenko
Efficiently resolving database queries requires you to reconcile the structure of the databases with the structure of queries. Mathematical algorithms known as "automated theorem provers" excel at this type of problem.
by Dennis E. Shasha
Ecco and Liane lace up their L.L. Bean boots and venture into the great outdoors to solve the problem of how many angels can fit on the head of a tent--and still survive.
by William Stallings
William looks at a pair of recently released IPv6 books--Christina Huitema's IPv6: The New Internet Protocol, Second Edition, and Stewart Miller's IPv6: The Next Generation Internet Protocol.
by Jonathan Erickson
by you
by the DDJ staff
by Eugene Eric Kim
by Michael Swaine