There are reasons to use a credit card - you get purchase protection, for one. You also can build up credit if you want to buy a house. You need one to rent a car.
But really, while there might be other reasons, the only reason to get a good credit rating is to be able to buy a house. Everything else can be paid for in cash (check, online payment from your checking account, etc)
When you use a credit card, you should treat it exactly like cash. You should have cash in the bank before you purchase anything with a credit card, and then pay the entire credit card balance each and every month.
If someone has a problem with this and just can't do it, then they should not get a credit card at all. Credit cards are very dangerous technology if one can't control it. Just like fire - if you are not careful with it, you can set your house on fire.