6

The LA Fox Developer Newsletter
October 1997.
Why Visual MaxFrame
Professional?
by Michael Meer, MESLLC

Microcomputer Engineering Services, LLC (MES, LLC) recently switched from using it own in-house framework to using G.E. Consulting’s Visual MaxFrame Professional (VMP). Over the last two years, we have developed a complete development environment including RAD tools, built-in functionality and consistent user interface. We are able to create basic, full functioning screens in mere minutes. All of our forms are consistent and easy to use. Why would we switch?

There are many reasons to switch including new features, extensibility and client/server technology. VMP 3.0 has many features of its interface that help our applications to appear more commercial and professional. These features include allowing the user to select their own font & color scheme, remembering positions of each screen, grid column orders. The base framework also allows the user to resize the window and thus resize all of the controls, as well as the basic window cascade and arrangement functions. VMP has built-in rightclick menus that are sensitive to the object they are over. You can “zoom” an editbox to view more of the data or you can cut and paste in a textbox. All of these functionalities are built right into the framework!

With the framework so rich in functions, you might wonderwby you would even worry about extensibility. A perfect example of where you might want to extend the framework shows up in the rightclick menus. We like to give the user an ability to paste in the date & time into memo field. This functionality is not built into VMP, however, since you are given all of the source code to VMP, you can add the code very easily. Also, suppose you want every screen to have a green background. You can subclass the classes included in VMP, change the base background color and your ready to go!

Finally, the piece-de-resistance. Client/Server. VMP supports dbf’s, local views and remote views harmoniously. In fact, you can develop your application with local views and then “upsize” it without much rewrite. The sample application included with VMP shows many different approaches to both local data and remote data forms. Our framework was designed with dbfs in mind. Modifying itto handle local and remove views would have been difficult. Transactions control is built into the classes as well as several “hooks” to allow presave and postsave operations from within the transaction. VMP is client/server ready!

If you are looking for a framework with an easy learning curve, we recommend VMP. The manual has many examples and you’ll get a fully functioning sample application that gives many approaches to the same problem. Each screen in the sample application is well documented in functionality as well as procedurely.
Codebook (Con't from page 5)

The documentation provided by the book provides a reasonable basis to learn the Codebook foundation, but the software implementation is a couple degrees of magnitude more complex and not heavily commented. There is no direct support available but a strong community of developers using Codebook helps fill this gap with peer support. Try Compuserve Fox Users Forum, and Ed Leaf’s new CB3 Web Support Forum at http:II www.leafe.com/cb3/forum/default.html I also recommend downloading Codebook for Mere Mortals by Kevin and Nicole McNeish.

Selecting Function or Visual conversion is the most important decision you must make.

The Functional conversion makes it easier for the d2veloper in the short run, but can require more work in the long run when you want to begin to take advantage of the new features of Visual FoxPro 5.0. The Converter makes the form a “backward compatible” form, which has attributes unique to this type of form.

In the Visual Conversion, none of your existing snippet code (Open, Valid, etc.) is mapped to the corresponding methods and events. You will have to cut and paste your procedural code. But you won’t have to modify the converted form to take advantage of the new event model.

Total rewrite - Hold your breath and jump in

Well, not exactly total. You can, of course, keep the data structures and business rules you have already developed. But you will want to take the time to re-architect your application to take advantage of 00 analysis and design techniques. This is the most costly (and time consuming) approach, but it is also the most powerful, flexible and the one that will allow you to take advantage of all the new features of Visual FoxPro 5.0.

In addition, you will find that you can eliminate hundreds (thousands?) of lines of code because Visual FoxPro 5.0 has built-in functionality that you used to have to code yourself.

VFP 5.0 offers a wealth of new capabilities and a great object oriented programming environment, but there is a learning curve. With a reasonable understanding of object oriented programming as it is implemented in Visual FoxPro, I believe one can minimize the transition by utilizing one of the development foundation environments available such as “The Visual FoxPro 3 Codebook” or “Visual MaxFrame.

Foundations are not necessarily rapid development tools, but a good framework that will save you lots of time. With a good foundation, you will have many of the tools necessary for building a solid application available to you.
Page 6

6