This is a good question with no simple answer.
The reasons to reuse are not usually related to run-time performance (except maybe in very large applications), but rather to modeling performance. As the reuse candidate becomes more complex to recreate it increases both the time it takes to do so, and the risk of introducing bugs.
Following are 2 examples:
For best results, use the Firefox browser..