[Home] [By Thread] [By Date] [Recent Entries]


Someone wrote:
>the accepted wisdom that premature optimization is evil?

Here's what that accepted wisdom means: A well-structured program is an 
important prerequisite for optimizing dynamic evaluation, because it leaves 
you the flexibility to optimize precisely the things that a profiler tells 
you are the bottlenecks, and the resulting code is still maintainable.

But optimizing dynamic evaluation is also a kind of design, and it is is 
not the only kind of optimization.

All design is optimization. In the early phases, it is best to optimize the 
understandability of a model and its applicability to a variety of usage 
scenarios. The most important bottleneck is often the human being who needs 
to deal with markup. Is the markup hand-edited? What tools are used for 
this editing - is it harder to work with attributes using these tools? Will 
a human being need to look at instances and write programs or formulate 
queries? If so, hiding the real action in the PSVI or Information Set may 
be a problem. In some few environments, it may also be important to 
optimize for certain desired mathematical properties.

Human beings, editing tools, and mathematical properties are rather 
inflexible. It's good to plan for them early on.

Jonathan 


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member