Will Angular still be valid in the future?

以下是 Mattias Petter Johansson 在Quora上的回答,转过来的原因是:阅读量和点赞量都最高。


My view of software tooling history is that almost all technical tools get replaced with a pretty fast cadence. It’s not with the speed of the fashion industry, but it’s still pretty fast. We learn. We evolve. We revisit old tools that didn’t work before to see if they work now. We get infatuated.

Tools that are simple, robust and pliable survives a bit longer, but also eventually get replaced too.

Languages and runtimes like JavaScript, Java and C have rather long lifespans for a number of reasons, one of which is that they are low-level and pliable. I.e. they are Lego, not Duplo or Playmobil. As we figure out new and better ways of programming we can do that in these tools. The grow with us over time.

Opinionated tooling like Angular or React are so high level that it cannot grow with developers. In fact, tools like these are expressions of evolution of the field. What I mean by that is that they are a kind of snapshot of how web development worked at one point in time. jQuery is a tool (with an ecosystem so strong it’s essentially a framework) centralized around DOM manipulation, because that was a huge issue at the time. Backbone came from an infatuation with MVC and the need for structure.

If you fall into the trap of building your knowledge on the former rather than the latter, you’ll fall into a kind of constant treadmill of learning new things all the time.

Instead, learn programming languages well, and learn techniques and concepts that they all have in common, and that will stay with us for a long time - for example - data structures, time complexity, version control, modularity, unit testing, composition - that kind of stuff. “Angulars” and “Reacts” come and go, but the fundamentals that they stand on move much, much slower.

Shameless plug: If you like my ramblings about programming on Quora, you might enjoy my YouTube show: Fun Fun Function




Log in to reply

Looks like your connection to Angular开发者 was lost, please wait while we try to reconnect.