There are several reasons to deploy a routed approach to Fibre Channel:
- You have separate, disconnected islands you want to connect but the effort to ensure that no conflicts exist in the zoning databases is extreme.
- You have separate islands of connectivity, such as a Brocade-based FC fabric and a Cisco-based FCIP fabric that you need to connect and don't trust the fabric to converge correctly if they're united.
- Your fabric is extremely large and you regularly run into uniqueness-constraints when you make changes.
- Your fabric is so large that any changes to the fabric configuration take too long to propagate everywhere.
In each of these a router would help merge two fabrics that otherwise would require a lot of effort to merge, or reduce administrative complexity due to scale.
In many ways, you use an FC router when the pain of not using one exceeds the pain of using one.
As for your question about best-practice, I don't believe there is much industry-wide accepted practices here. The closest we come is when you have to merge two fabrics based on different vendor's solutions (such as the Brocade-FC/Cisco-FCIP I used above), though that's an 'excess of paranoia' thing rather than a demonstrable fact.
You add a router when not having one would be more painful. If you have two large datacenters, spend four years building them out independently, and then finally get some fiber connectivity between them. The two FC fabrics in the may be very complex critters. Combining both into a single fabric would require renaming hundreds/thousands of aliases and zones, the chances of a typo somewhere disrupting connectivity is not small. In that case, using a router to get the fabrics connected would be faster and cause less potential disruption than attempting to merge the fabrics.