There are two reasons to learn about code components (DLL and EXE servers) before learning about ActiveX controls. First, almost everything you learn about code components applies directly to ActiveX controls. Second, thanks to their new ability to support events, many of the tasks that used to be performed using ActiveX controls can now be handled nicely with code components.
The wealth of new features offered by Visual Basic 5.0 is a double-edged sword. With its new support for ActiveX and COM features, VB5 is far more capable than version 4.0, and is suitable for many more tasks that were previously the domain of Visual C++ and other languages. On the other hand, Visual Basic 5.0 is in many ways far more complex than version 4.0. The availability of additional features also imposes the need to make additional choices. And you cannot make good design choices without understanding the technologies and trade-offs involved.
Part I of this book covered the underlying technology on which the ActiveX-related features of Visual Basic 5.0 are based. In Part 2 we'll be taking a look at each of those features specific to code components.