Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
If you code like this.... you might be a crappy coder
Message
From
26/05/2021 23:07:29
Walter Meester
HoogkarspelNetherlands
 
 
To
26/05/2021 18:49:55
Mike Yearwood
Toronto, Ontario, Canada
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
01680754
Message ID:
01680767
Views:
59
WARNING: For the casual reader.

Its very bad advice to use STORE of many variables over the individual initialization of variables.
Individual initialization allows for better readability, especially when values might change over time.

True it has some performance advantage, but it is so tiny that has no practical use except in the utmost extreme cases.





>
select subs_var_select
>set filter to ordnmb=m.ordlin.ordnmb and lnline=m.ordlin.lnline
>go top
>wRepriceStones = .T.
>nStyle_Stone_Price=0
>nOrdLin_Var_Price = 0
>nDiamValu = 0
>nClrValu = 0
>nProtected = 0
>scan
>
>vs
>
>
wRepriceStones = .T.
>store 0 to nStyle_Stone_Price, nOrdLin_Var_Price, nDiamValu, nClrValu, nProtected
>SELECT subs_var_select
>SCAN FOR ordnmb=m.ordlin.ordnmb AND lnline=m.ordlin.lnline
>
>The second batch of code takes less time to execute and less time to step through in the debugger. It's easier to understand. These are facts, not opinion. A set filter, then a go top is wasteful. Go top is not going to respect the filter, even if it is optimized. Scan does a go top by default.
>
>I write it the second way and have done so for many years, while I see things written the first way far too often. It's not my fault there are programmers who can't tell the difference. They keep holding development back and all the boot-camp wannabees are not improving things.
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform