Andy Warren has a saying I love. "Always use the defaults until you have a reason, and know better, why something else should be done."
I think that applies here. Those items listed, along with GOTO and triggers shouldn't be used in code. You should just no reach for these tools.
Until you have a good reason and you understand the implication of doing it that way.
I avoid triggers if I can and look for better ways to handle things, including adding extra code to many sprocs. However I do find places where it doesn't make sense to do that, or it doesn't work and I'll use a trigger. Just sparingly and when I have a reason to do so.