The way blender handles hidden objects is problematic in multiple areas.
* Default setting:
At default, Blender shows only the "Eye" (Hide in viewport) Icon, for beginners I consider this as problematic because they don't even know that there is the possibility to hide objects only for rendering.
It should be default to see at least the (disable in renders) button also.
* Render visibility:
When multiple objects are hidden in the viewport, but not in render, it is almost impossible to keep track of what is rendered. "Show render only" toggle is super important and should be considered as high priority.
We often have the case that we render over the weekend and everything is for the trash because we forgot one cube we used for measurement for example.
Rendering whit cycles in the viewport is one of the biggest strengths of blender IMO.
In almost every situation we use f12 only for final rendering. So I see it as logical and absolutely necessary that there is at least the option to see the absolute 100% exact same result in the viewport as I expect it to be with f12. (Particlecount, modifiers, textures, should be at max settings with one click if needed)
T57063
* Outliner and keyframes:
When parenting in the outlier is used, this get's even more problematic.
-Deleting hierarchy's with hidden objects.
-Duplicating hierarchy's with hidden objects.
-Keyframing object's or copy keyframes to objects.
-Copying objects or collections to other scenes.
-Changing parameters of multiple objects with "alt".
In all five cases, it's almost impossible to know if everything worked how the user expected it, especially for beginners, who have no clue that blender behaves this "unnaturally". I think there are even more cases where it get's tricky. But who knows, maybe we don't even notice.
When I want to duplicate a collection or hierarchy correctly, I have to make sure that everything is unhidden. No beginner would know that.
I understand that it was maybe intended to be for protection, that objects can't be deleted existentially for example, but I think that it brings even more problems with it.
At least the option to change this system could help a lot of people that are confused with this behavior like I am.
I know this is more a task rather than a bugreport, but maybe someone sees these arguments as valid and makes them to a task. Thank you guys.