While designing my jsf pages I realized that some of the components are being re-used at least twice or thrice in my application's different layouts. For example, as a hypothetical situation consider the vote-up button on SO which is included numerous times in a topic questions page(this is not in actual case) and (in a different layout) on each post on a specific question page.
So my concern is that, since a few of my components are being re-used twice (in different layouts), (like voteup buttons or options bar on posts) should I go with putting up my markup in custom components and use those components instead of writing same code at more than one place. Is there a performance issue to consider while chosing custom components for frequently rendered components?
And also is the markup for JSF components converted into html, during the build time or during the render time ?