From the above we can see there are two chief considerations, both having to do with optimization, but mutually independent and skewing the meaning of "optimize" from one way to another in the process.
SEO seeks to place the best terms within the appropriate text fields and have a document rank in the first page of the SERPs for those terms.
Hardware and network constraints dictate that pages (the aggregate of source, css, js, gif, jpg, png, etc.) need to be kept as small as possible, usually in the range of 32 to 64 KB, to be network and user friendly in slow connection speed scenarios.
The general consideration is overall size of the download, followed by the number of objects in the download for a first time user. Repeat visitors will often have a lot of 'permanent' items cached when they return. Only those objects that have changed since their last visit would need to download. But let's stick to the first time visitor for the sake of this discussion so we see the whole bundle.
Say your document consists of an html page, skin graphics and header graphic, a couple of css files, a couple of scripts, and a dozen images that may be photos or badges as apply. That makes roughly 20-25 items that will need to be requested after the initial html page is parsed into the array.
Each request has to go through the same motions, and usually involves some talk back and forth between the client and server. All of this takes time, which is commonly referred to as LATENCY. It expands quickly over a congested network or a busy web server. Then there is the actual time needed to transmit the individual files.
Now let's say on the page in question, 6 of the pictures are in the 48 KB range. On a 56 kbps connection, they would need at least six seconds each to download, plus the latency factor putting the whole download in the 40-45 ball park. And that's just those pictures.
Latency is not a factor that can be given a number as it can range from a couple of milliseconds per packet to several hundred. If it runs to 30 seconds the connection is usually timed out as it has been lost. Allowing roughly 1 second for every 5 items, gives us about 5 seconds in this example.
Adding about 24 K for the skin, 20 K for the html, 20 K for css and script, and say 12 K worth of badges gives us a nice round page of about 350 KB. Whoa! Did I say 350? Yup, that's how fast it can add up. Some poor soul is sitting in the back country with poor phone lines and 48k worth of bandwidth potential waiting a minute for the page to complete downloading. Then it has to run the scripts.
It's easy to see from an example like this how things can get way out of hand if we don't consider slow connections when we're composing our pages. Fortunately,
SEO plays a big hand in smoothing this out: Short, succinct pages with few if any unrelated objects, and that put the emphasis on text, not images. In other words, split it between three pages, rather than place it all in one.
The first page to come in will be lighter weight, even with skin graphics, css and scripts. The second and subsequent pages will only need their html and unique images so they will stream in quickly. Your visitor gets to all the content in way less time overall.
And what images are used are 'optimized for the web' by being kept as small as possible. A photo can be reduced to 12-16 KB if it is kept under 300 pixels to a side. Skin graphics need to be screwed right down so they take up no space at all. With CSS, your job is easier because of borders, and such.