I'm about a year out from applying, but by that time will have over 5000 hours of working in a private practice with two doctors who are business partners, but who each practice entirely differently. I'll also have about 50 hours shadowing at 3-4 other locations by the time apply.
Now, from my experience of working bs shadowing, I would absolutely recommend working at an office over shadowing if you have the opportunity. I learn more from the day-to-day stuff than I have when I've shadowed for a few days. Both of the Drs I work for are very adamant about pulling me into the exam lanes when something fairly unusual/interesting comes in-- failed corneal transplant, iris strand, asteroid hyalosis, many patients with keratoconus, patients who've had cataract and retinal surgeries, etc. Not only have I been able to see it in person and see it through the slit lamp, but I'm able to ask questions the moment it's in front of me.
Another one of the biggest take-always I've gotten from working hands-on in an office is just realizing what kinds of questions patients ask, what their concerns are, what they could care less about, etc. Those are important things you'll only learn by experiencing them. Shadowing is great for specializations like retinal specialists, peds, and shadowing surgeries with ophthalmologists.
Just my two cents--I've talked to others interested in optometry at my university and they don't have near the experience I have and don't think that's shadowing/working/experience is very important. I completely disagree. Shadowing 50 hours at three different locations really doesn't give you an idea of what the career is like. 5 days in an office isn't enough time to really understand what's going on, either.
Experience is important, whatever type it is. I've been told by schools and by doctors that you should get as much exposure as possible. I have a friend who has about 40 hours total and she thinks she done. Don't make that mistake! You can never learn enough. I'm not exaggerating when I say that I learn something new every day at my office. Even simple things like dealing with incorrectly ordered CL's, teaching insertion and removal of CL's, adjusting frames, helping patients understand how progressives work, explaining what you're doing while you're pre-testing them, trying to troubleshoot when they can't adjust to a glasses/CL Rx, dealing with insurance companies, learning how to handle patients who are uncooperative, etc etc... The list goes on.
I'm just saying that the opportunity to work in an office is invaluable. Do whatever you can to get your foot in the door with one! This was not by any means my way of bragging or saying I know what's best, but I have greatly appreciated many peoples' posts on this forum and I wanted to help if I could. I hope this does help!
Good luck!