Producing an application is one thing. Producing an application that runs (or at the very least, appears to run) quickly and doesn't hog the whole of your computer's memory is quite another - but this is what will make or break your application. Users are impatient beings, and to them there is nothing worse than an inefficient program.
This chapter has covered several tips and tricks for improving the general speed of your code. Before you start to put your application together, you should decide what your coding priorities are, and then follow the guidelines drawn up here to achieve them. Remember that optimizing for one priority, such as maintainability, may adversely affect a secondary aim, such as the speed of your code - it is up to you to decide which is more important.
Remember, also, that you can spend forever tweaking your application to go a fraction faster, but will it be worth the amount of time you're putting in? Do you have a deadline to meet? Is it worth it?
So, in this chapter we have covered:
How to reduce memory overhead by choosing the right data types, reclaiming memory and grouping procedures strategically
Which coding techniques to employ to increase execution speed
Tricks such as using a startup screen and progress gauges to distract the user and make it appear that an application is running quicker
How to make a networked application more efficient