(1) You can feel pressured sometimes to make really quick decisions because of a line behind you.
(2) It can be pretty confusing ordering multiple items.
(3) It's not actually that efficient. They'd be better off having one person take your order and different people, in a different area, preparing the orders. This would solve all three of these problems.
To make up for the "novelty" (which has died off big time at this point) of watching them prepare the food in front of you, some places just style the building interior in a more lively and fun way. For instance, one of my favorite local Mexican restaurants follows the above model, and the interior is designed to make it look like you're ordering from a taco cart on a Mexican street--even though you're actually in a strip center which is extremely generic looking on the outside.