> Sometimes I wonder if we are really equipped to navigate it and understand it. Maybe AI/computation is really the only way to try to have a holistic view of the complexities. Perhaps trying to understand biology with our biological brain has inherent limitations like a piece of software trying to understand the hardware it resides in.
I'm unsure what's ironic about it. Hooks feel significantly easier to me than classes in a bunch of dimensions.
Classes come with a whole lot of syntax & concepts like constructors, instance vs class properties, autobinding, that are otherwise not used at all in React. They present barriers to optimizing code with compilers, and property names don't get minified.
Hooks are Just Functions though. They don't even have to deal with the most confusing aspect of functions in JS: "this"/calling context. You could easily consume them in ES3 by just not using array destructures and function keywords and it would barely get less readable.
Contrast this with classes, where new devs are often pushed to learn experimental and often-changing syntax just to avoid the awkwardness of working with the current specification for classes in JS. The following isn't allowed per the spec or any stage 4 proposal, but it's all over intro tutorials so that people don't have to manually bind methods in the constructor.