That's fine and dandy, if you know how to implement these things. If you're still learning, the worst thing you can do is worry about speed when you don't know the concepts. Everybody that I know of working on large successful projects follows the code first optimize later scheme. What happens when you try writing a large project while trying to 'optimize' first? This:
Originally Posted by Bubba
Me, on the other hand, the last project I abandoned was huge (as in I haven't been coding in the last year), at over 20,000 lines of code (C-Metrics) but it was modular, easy to follow and edit by others, and I was satisfied with its layout (it took care of a plethor of things including 3D rendering based on binary and quad spatial partitioning, culling, sphere and box physics, basic realtime lighting, basic static lighting, and hooks for vertex buffer objects and fragment/vertex shaders), and I wrote it entirely on the 'code first, optimize later' mechanism. I guess I don't need to mention the doom3 alpha basically wouldn't run on even the fastest computers, suggesting they also followed the code first optimize later scheme.
But, we all ultimately find what works best for our individual needs.