I find myself frequently accessing some aspect of a layer that requires that the layer be open. Something as simple as getting the extent of a layer requires this. And, inevitably, I fail to do this. I'm working only with custom layers and feature sources at this point. Do the standard layers like shapefiles, etc, have this requirement, or is there intelligence within those objects to detect that the layer or feature source is closed and automatically open it.
I started to add this intelligence to my layer implementations, but then I wondered if that was a mistake. At a minimum, it would be inconsistent with your implementation. But I wondered what the architectural reasons were for not having auto-open functionality built into the layer objects.