For a developer it's straightforward to develop a solution that generates a new receiving bitcoin address for every transaction. This new address could either be generated on the spot, or it could be taken from a pool of pregenerated addresses. It's true what you say that if a business uses the same address all the time, it would be just like the public having access to their bank account (ie. seeing all their transactions).
There are numerous ways this could be solved, but first one would have to consider how important it would be to hide this information from public view. Perhaps some restaurant owners wouldn't object to anyone knowing how much bitcoin transactions they did, perhaps it's 2% of their overall sales anyway, so there would be no reason to be overly sensitive about the privacy.
In the event that a business simply doesn't want anyone else to see all their transactions, they would need to have a unique address for every payment received. That might seem like a daunting taks, but unless you're amazon.com, it's pretty manageable. For a restaurant this could mean that when it's time to pay the bill, the cashier simply selects bitcon as the payment method, then the customer is presented with a QR-code to scan and make the payment that way, or there could be a very short and easy url-shortener the customer could just type in to get the whole bitcoin address, like 'https://tb.co/3r7
It would also be possible for the restaurant to present the menu, and even make a order system the customer could access available over wifi once the customer enters the restaurant, then payment addresses could be generated based on mac-addresses or ip adresse, depending on whether it's a local network only, or connected to the internet. It would even be possible for a customer to have a btc address permanently assigned to him at that restaturant, so he later could look through his bills to have an overview (but it should be optional), as the standard should be a new bitcoin address for each transaction done.
The restaurant would need to have a well programmed system that made encrypted backups of the store's wallet to multiple remote locations after each purchase, so that in the event of failure of the system, the bitcoins the customers paid would not be lost. I would imagine that most restaurants simply would not have the technical knowledge or expertise to make this themselves, so it would probably have to be outsourced to companies that specialized in merchant solutions for bitcoin.
For everything to work flawlessly, there would need to be good design, redundancy and simplicity of use. For instance a restaurant could offer a app for bitcoin and iphone that could be installed on the phone, from which the visitor could order his meal and pay bitcoins. This way the restaurant could also verify that the funds where received before the customer left, as it would most likely be a few confirmations in that time. Usually eating at a restaurant takes around an hour or more.
It would also solve the problem of a customer running from his bill, as he would always pay up front. If he paid too much, or had a complaint and needed a refund, then the restaurant could just reinstate him the coins. I haven't looked into all the possible merchant systems that exists, but if something like what I described here doesn't exist (doubt it), it's bound to be implemented by someone soon.
So in summary, to have bitcoins accepted at a restaurant, the owner of the restaurant should be aware/educated of every aspect of using bitcoin, and a good merchant solution should be used, that will make it almost as easy or just as easy as using cash to make the payment.
One good argument is that if the restaurant now is accepting debit or credit card, a certain percentage of their earnings will go to the credit card companies and banks. Typicall fees of 3% or less. A negative aspect with bitcoin though is that there often is big fluctuations in it's worth relative to fiat money, so if the restaurant can't accept the price swings, they would need to convert to fiat money immediately, probably on an exchange, and this would mean they would need to pay a trading fee, which could be anything from 0.7% to 0.25%. Then they would also need to get the fiat money out of the exchange to their bank account, unless they paid their staff wages in BTC. Perhaps in the future, this will happen, and the steps for needing to exchange the bitcoins to fiat money will not exist.
But currently, there's so much technicalities that the head of the average restaurant owner would spin around it's own axis trying to comprehend it all, so in short what would be needed to have bitcoin as a popular option at restaurants would be to have companies that does all the integration, and can guarantee for the earnings of the restaurant.
So with a good solution, and good sales tactics, I'm sure a lot of restaurant and other brick and mortar businesses could be talked into accepting bitcoins, but there would need to be some incentive for them to do it. I'm sure the 'no fee'-alternative would be a good selling point, but only if there are good solutions that can be readily adopted.
Also there's another good argument, I'm sure today a lot of restaurants lose revenues over customers that pay with cards they don't own (ie. stolen cards). With bitcoins, once the payment is done, it's done, and there's no chargebacks, ever. This is because of the nature of the irreversibility of bitcoin transactions.
We also have another selling point. It's the coolness of this cryptocurrency. I would think it would be 'posh' and 'cool' to use the smart phone to make the payment, and using a QR-code would by many be considered as high tech and interesting. So for a lot of free advertising, the first restaurant in a town could claim to be the first one in that town to accept bitcoin, and thus I'm sure a lot of people would go there because they became curious, and news papers would write about it, which would mean free PR for the restaurant.
As for the negative points, I already mentioned a some of them, mainly the volatility, and the technical barrier and the simple fact that most people simply have no clue what bitcoin is. For the time being, I'm sure that this would be more of an experiment for most restaurants, than something they would get most of their income from. But in big cities, bitcoin enthusiasts would certainly go to places where they could spend their bitcoins.
I hope this gave some insight, and I'd be happy to answer more about the technical side of things.
It sure is interesting that more and more brick and mortar shops is accepting bitcoin.