transferFrom already checks the allowance, so does it make sense?
If you call it from an externally-owned account:
It is better to check the allowance in advance, because doing so can save you a bit of gas if it is insufficient and the transaction would subsequently revert.
If you call it from a smart-contract account:
Depending on how you want your contract function to behave - for example - you may want it to do something special if the allowance is insufficient.