The full context was
_preventing_ direct access to them by clients in a way that could expose hidden implementation details or violate state invariance maintained by the methods.
The problem is that your article uses React as an example, and React is _not_ functional in the way you're referring to here. Context lets components reach out and grab whatever they want, at any time, and this is encouraged in the docs (less so than it was when hooks first came out, but it's still very much encouraged). And hooks themselves very quickly become a web of cascading dependencies that are very difficult to reason about. This is exacerbated by the fact that most of the functions used in React hooks are anonymous arrow functions (that obviously have no names). I went into all this in great detail in the link I posted with my first response. I'd encourage you to go read it if you haven't.