Firing is always messy business. It's a good idea to avoid it unless it is absolutely necessary.
If I have a few bad apples (the lazy, self-entitled employees of a previous post) and they're not responding to being held accountable, the whole staff needs to know I will use all tools available.
Frankly, if you manage properly, there's very little firing you have to do. Most bad employees, when they see you hold people accountable, will find another job. The only ones who stick around are the one's who are holding out for unemployment.