If you start with correct, well named and well structured, you may have the opportunity to make it fast and efficient.
The opposite is rarely true.
So:
- Write a test - to make it correct
- Write some code - to make it work at all :)
- Refactor - to make it well structured
- Profile and Optimize - every once in a while to make it efficient
/J