I believe Tony is a bad person, but he does have his limits. This makes the viewer not completely hate him. For example, he shoots Alberto and inevitably signs his own demise to save some children and a mom. He drew his limit at women and children, which means he at least has some limits. He's still an evil Gangster who kills innocent men, but at least he isn't completely heartless! He realized his mistakes in life in the final scene however, when he realized he lost his family and his best friend - thanks to his evil ways.


Rocky: I said button yer lip.
Mugsy: Oh, okay, boss.