Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
A new survey about VFP product naming
Message
General information
Forum:
Visual FoxPro
Category:
Other
Miscellaneous
Thread ID:
00729776
Message ID:
00730760
Views:
31
>>>> VFP only supports part of the OOP specification. <<
>>
>>Which part doesn't it support? It may call some things by different names -- parent class instead of superclass, for instance -- but AFAIK VFP meets all the requirements of OOP. What am I missing?
>>
>>Mike
>

Let me play devils advocate :)

>A lot, apparently. Operator overloading, multiple inheritance, the ability to raise custom events,

>pointers.

Pointers aren't a OOP requirement. Custom events are in VFP 8 (although, they still don't let you raise COM events). A lot of OOP purists would argue that multiple inheritance is a bad idea (I'm not one of them, for some things, it's way cool). .NET doesn't really allow you to do this either, at least in it's managed mode. Now someone can jump in here and tell me Eiffel.NET supports it. Yeah, I know...

>using a fully OOP language is necessary. This is especially true in ultra-high transaction environments where memory mangagement is >critical. I want to know exactly how much memory each of my objects are using.
>of control is not possible in VFP--build it light and hope for the best. I have made a good living with VFP, but I have seen it's

Nope. You're right, VFP doesn't give you this level of control and I'd argue that it was never designed to. Most business applications don't require that level of control - if they did, we would have all been using C++ all this time. And, an OOP language isn't even required to achieve it. I'd also venture a guess and say most developers aren't even working in a "ultra-high transaction environment".

>Most of them don't know anything about OOP, and every last one of them is a dreadful hack in VFP. They all know it--most of them come >from Fortran and C backgrounds. They still build applications that can run in VFP because VFP is very forgiving. Try doing the same >thing in C++ and compile! We just ditched VFP in favor of .NET. Most of them are doing really well with the object oriented portions of

>the requirements call for it. Nice! I'm sure I ruffled plenty of VFP diehards. I used to be one of them. I sat in this very forum and cried about VFP being the Microsoft Step Child from hell. Then I had to build an application in C++, and I realized what I had been missing all this time...The world is a beautiful place...

C++ wasn't designed as a purely OOP language either; it's integrated on top of C. Some of the ugliest code I've ever seen has been written in C++, so I don't think it's fair to target VFP for being to forgiving to "hacks". It's not just limited to VFP ;-)

Having said that, I >like< C# and .NET (and I agree, use the right tool for the job). However, it still feels like a 1.0 product. Well, maybe version 1.4. There are still way too many things that are a major pain to do in .NET for me to consider it anything but a version 1 product. Maybe the next major rev. will help.

BTW - glad to hear things are going well for you. Hey, are you running Kevin's MM.NET beta?
-Paul

RCS Solutions, Inc.
Blog
Twitter
Previous
Reply
Map
View

Click here to load this message in the networking platform