Zlatin,
>Properties are good as long as you do not change their value very frequently.
I don't really understand why you are saying this. Property values might take a microsecond longer to change than a simple memvar, but it's insignificant in most cases.
>If all should be done with properties, no standard events or methods of base classes would have parameters.
I didn't say
use NO parameters I'd say though that using more than 4 parameters in a method call is
overly complex and makes the method
harder to use. This is especially true When some of the parameters are used to cause conditional execution of code in the method. The Wiki article talks about those sort of parameters should be object properties.
I'd
guess that you'd see some sort of distribution of number of parameters in the VFP baseclasses and functions:
#parms %
0 24
1 30
2 20
3 10
4 10
5 5
>5 1
perhaps a query of the intellisense table is in order to get a more accurate distribution, but I don't have the time right now.
I only have two functions at all that take that many arguments and they are both instances of utilities that the arguments all have the same meaning. 1) InsertVal(...) inserts a set of values into a single column cursor ie to make long lists of values to use in place of an IN clause. 2) DebStr(...) which converts all of the parameters to a string suitable to use with DEBUGOUT.
16 parameters to a method/function is too obtuse to use in production code IMHO. It might also be an indication that the method should be broken down into several more cohesive methods.