I don't believe a child should ever be smacked. Its hypocritical for a parent to say we dont hit, ok now I do. Yes I believe there are many children who have learned unacceptable behaviours but society has changed and children these days are under immense pressure. Many spend up to 60 hours a week in preschools learning behaviours in a dog eat dog world. The kind child who shares isnt going to get the best toys. Both parents are busy at home and have little time to reinforce positive behaviours. You can see a child screaming on the floor in the supermarket and hear the parent saying, "no you can not have it.....ok you can" Lesson learned...screaming gets me what I want. You dont need to smack them, just dont give in to them and next time there will not be the screaming.
I think in many ways children are over protected in the way they no longer play with sticks in the mud and do things children need to do. But on the other hand children have been left at the park all day alone so mum can go to work because child care is too expensive. So it swings both ways. Children need to be children, they need to run, jump, get muddy but they also need love and to be heard and they need a parents time and attention. Which sadly in this busy world is often lacking.