I’m currently developing a complex Theme (or framework, if it can be called that) for my own personal use.
However, in the event that it becomes appreciated to the public – does it necessarily HAVE to be inheritable (the ability to have Child Themes derive from it)?
Am I right in guessing that there is some publicly available Themes that are filed under some sort of “non-extendable” category?
While you can certainly make life difficult on users who try to use your Theme as a template for a Child Theme, it is all but impossible to prevent your Theme from being used as such.
What do you mean by “filed under”? Who’s file system? Who’s categorization? WordPress itself makes no such categorization. It simply uses Themes if they exist, and are valid – whether stand-alone Themes, or Child Themes using a template.
Is there any particular reason that you would want your Theme to be unable to be used as a Child Theme template?
Every good and solid piece of advice you will get about making wordpress themes or frameworks will likely come with a suggestion to make it “child theme ready”.
This is because many developers understand the massive inherent value in customizing a theme/base using a child theme, and they will want it.
The primary reason IMHO is that it makes future updates a lot easier as the changes you make are in a way “layered” on top of the base without changing the base.
You certainly don’t have to. But if you don’t, you will no doubt have people bugging you about it and suggesting it anyway. Not only that, but it will probably benefit you in the long run as it does make things more structured. In particular if you are leaning towards a framework.
Developing a theme so it is child theme ready does not add a lot more work or complexity, its just there are certain conversions you should follow. Most of which you should anyway when building wp themes.