I'm developing a site using SharePoint Server 2010 in Visual Studio 2010. I'm having trouble determining which Feature Scopes are right for my features.
I have a feature which includes a custom Master Page, custom CSS for this master page and modifications to the ribbon. The entire site will use this master page and this CSS. Is the Site scope right for this? Or should I use the Web Application scope?
I have a feature which includes custom Page Layouts. Most pages on the site will use one of these page layouts. Is the Site scope right for this? Or should I use the Web Application scope?
I have a feature which includes custom Visual Web Parts. Most pages on the page will contain one or more of these web parts. Is the Site scope right for this? Or should I use the Web Application scope?
Currently I'm going for the Site scope for all of them, since I have no real instances of anything in my features - just definitions. But since either scope works fine when developing and deploying from within Visual Studio 2010, I find it hard to determine which scope is right - and to perceive the implications of the differences between the scopes. And perhaps the Web Application scope - or even the Farm scope - would be more right for one or more of these features?
(I have no idea what the deployment scenario looks like in terms of farms, servers, sites and so on. I would like for my features to work regardless.)