Apr 96 Factory Floor
Volume Number: 12 Issue Number: 4$ #Column Tag: From The Factory Floor| From the Factory Floor
By Dave Mark QIn this month’s Factory Floor, we’ll meet Greg Dow. Greg designed and wrote QPowerPlant, the next generation framework from Metrowerks. Before we get to the Yinterview, I wanted to take a sec and thank Jim Trudeau for all his help in putting this‹ ;interview together. Cognac and cigars on me at WWDC, Jim! SDave: Greg, since not all of our readers have a background in object programming, $Slet’s start things off by defining a few terms. What is the difference between a $class library and a framework? PGreg: People often use the terms interchangeably. However, I think of a class $Qlibrary as a collection of utilities and a framework as a structure for building $
programs. $PWith a class library, you are in control. You design the program structure and $Muse library classes where convenient. For example, you can use the ANSI C++ $+streams class library to handle file I/O. $NWith a framework, the framework is in control. You usually start with a “do $Hnothing” program provided by the framework and add your own code. The $3framework calls your code at the appropriate time. $PPowerPlant is a framework, but it also has families of utility classes that you$can use independently.2NDave: Why would a C programmer want to move to C++ and PowerPlant? What are>$the advantages?ePGreg: Using PowerPlant lets you build upon code written by other programmers. q$NIt’s code that you don’t have to write yourself. PowerPlant classes handle}$Kmundane tasks such as menu and window management, as well as more advanced $Qfeatures such as Apple events and threads. By not having to start from scratch, $Jyou have more time to concentrate on the unique features of your program. $MAnother big advantage is Constructor, which lets you graphically lay out the$Mvisual elements of your PowerPlant programs. PowerPlant can create a window $Uand its contents from information edited in Constructor, so it’s possible to create‡$La program that displays items such as scrolling pictures, text, and buttonsÏ$%without ever writing a line of code.QDave: Once someone has learned the basics of C++ and object programming, how do$