javascript 框架_克服JavaScript框架疲劳

javascript 框架

by Tero Parviainen

通过Tero Parviainen

克服JavaScript框架疲劳 (Overcoming JavaScript Framework Fatigue)

The JavaScript community is suffering from a wave of framework fatigue. It’s caused by the massive outpouring of new frameworks, techniques, and ideas that has been going on for some time now. Even though it’s all very exciting, it’s just impossible to keep up with it all.

JavaScript社区正遭受框架疲劳的浪潮。 这是由于持续了一段时间的大量新框架,新技术和新想法而引起的。 即使这一切都非常令人兴奋,也无法跟上这一切。

Since you can’t keep up with it, you have to choose what to focus on. And having to make that choice is a cause of anxiety in itself. Are you focusing on the right things? Is the framework you’re learning the best one for you or is there something even better out there? Will something happen next month that’ll make your choices seem obsolete?

由于您无法跟上它,因此您必须选择要重点关注的内容。 而做出这样的选择本身就是引起焦虑的原因。 您是否专注于正确的事情 ? 您正在学习的框架是最适合您的框架,还是有更好的框架? 下个月发生什么事情 ,使您的选择显得过时吗?

There are ways to resist these feelings of fatigue and anxiety. Here’s what works for me.

有一些方法可以抵抗这些疲劳和焦虑感。 这是对我有用的东西。

学习欣赏未知的事物 (Learn To Appreciate Your Known Unknowns)

The fact that you even have this problem means you know a lot about what’s going on in JavaScript. All the things that you feel you should be learning are things that you know about. They are your known unknowns.

您甚至有这个问题,这意味着您对JavaScript发生了很多了解。 所有你觉得你应该学习的东西是东西,你知道 。 他们是你所知道的未知数

The key is to understand that this set of known unknowns is only ever going to expand. You’re never going to feel like you know enough. In fact, it’s quite the opposite: Not only is new stuff coming out all the time, but also every time you learn something, you’ll learn about related things — things that you don’t know yet.

关键是要了解,这组已知的未知数只会不断扩大。 您永远不会觉得自己足够了解。 实际上,情况恰恰相反:不仅新事物总是在不断涌现,而且每次您学到一些东西时,您都将学到相关的东西-尚不了解的东西。

For example, when I read about Cycle.js, I understand just how little I know about reactive programming in general. Learning about React opens up avenues to React Native (and on to iOS and Cocoa), and GraphQL, and redux, and so ad infinitum. One thing always leads to the next.

例如,当我阅读关于Cycle.js的内容时 ,我通常对React式编程一无所知。 了解React可以为React Native (以及iOS和Cocoa), GraphQLredux等无限打开途径。 一件事总会导致下一件事。

Instead of letting this ever expanding set of known unknowns drag you down, it’s better to learn to appreciate it.

与其让这组不断扩大的已知未知数拖累您,不如让您学会欣赏它。

When you know that you don’t know something, you have an option to learn it later. You know that it exists and roughly what it’s for. That means you can decide when, if ever, it becomes worth your time to learn it.

当您知道自己一无所知时,可以选择稍后学习。 您知道它的存在以及它的用途。 这意味着您可以决定何时值得(如果有的话)学习它。

We do this kind of weighing of options all the time. It’s just that we tend to not appreciate these kinds of options, but instead get a vague feeling of guilt for not having learned everything yet. It doesn’t make any sense. It’s so much better to have those options than to be ignorant of all the things you could learn.

我们一直在进行这种选择权衡。 只是我们倾向于不喜欢这些选项,而是因为还没有学到所有东西而感到内。 这没有任何意义。 有这些选择总比不了解您可以学到的所有东西要好得多。

This kind of unknowledge — knowledge of things you don’t know — is no substitute for actual knowledge and skills, but it is by no means useless either.

这种无知-对您不了解的事物的知识 -不能替代实际的知识和技能,但也绝非毫无用处。

接受事情会不断变化 (Accept That Things Will Keep Changing)

If there’s one thing you can be sure about when it comes to web development, it’s that it’s going to keep changing. Things change as we collectively figure out better ways of doing things, but also as device capabilities and form factors evolve.

如果可以确定Web开发的一件事,那就是它会不断变化。 随着我们共同找出更好的做事方式,而且随着设备功能和外形的发展,事情也会发生变化。

Whatever is the cutting edge of JavaScript right now, you can bet that it won’t be cutting edge three years from now. Most of it will be long forgotten. Some of it will be around, but the innovation will likely be happening around something we can’t even imagine yet.

不管现在JavaScript的最前沿是什么,您都可以打赌三年后它将不再前沿。 大多数将被长期遗忘。 其中一些会出现,但创新可能会围绕我们甚至无法想象的事情发生。

For example, Angular 1.x is still going strong and will be around for years to come. But it’s not where the innovation is. The same will eventually happen to React and everything else that’s new today.

例如,Angular 1.x仍然很强大,并将持续数年。 但这不是创新所在。 最终,React和今天所有其他新事物都将发生同样的情况。

This state of affairs may not be desireable, but it is the reality. Your options are to either accept that things are going to keep changing, or to stay a couple of generations behind the cutting edge, below the turbulence. Either option is perfectly valid, though both come at a cost. In any case, change will be constant, and trying to fight it doesn’t make much sense.

这种状况可能并不理想,但这是现实。 您的选择是要么接受事情会不断变化,要么在动荡之下保持领先几代人。 这两种选择都是完全有效的,尽管两者都是有代价的。 无论如何,变化是永恒的,而与之抗争并没有多大意义。

了解一切都有价值 (Understand that Everything Has Value)

Whatever framework or technology it is that you choose to spend your time on, it’ll end up helping you somehow. This is true even if it isn’t the Right One™.

无论您选择花时间在什么框架或技术上,它最终都会以某种方式帮助您。 即使它不是Right One™,也是如此。

Everything you learn contributes to the network of neurons you carry around in your head. You’ll make connections that will make it easier for you to pick up other things later. Knowing one thing enables you to compare and contrast it to other things. In this sense, learning is always useful, whatever the subject.

您学到的一切都有助于大脑中携带的神经元网络。 您将建立连接,这将使您以后可以轻松接起其他东西。 知道一件事使您能够将其与其他事物进行比较和对比。 从这个意义上说,无论学习什么学科,学习总是有用的。

This means that getting anxious about finding the one right framework or technology to learn is not as crucial as it sometimes feels. Not only are those things very hard to find, but in many cases they may not exist in the first place. What’s much easier to find are things that are useful. They’re everywhere. You might as well learn something that looks interesting or fun, even if it may not be the absolute correct thing.

这意味着,急于寻找一种合适的框架或技术来学习并不像有时候那样紧迫。 不仅很难找到这些东西,而且在许多情况下它们可能根本就不存在。 有用的东西更容易找到。 他们无处不在。 您可能还学到了看起来有趣或有趣的东西,即使它可能不是绝对正确的东西。

For example, I spent years learning various Ruby technologies as I was building apps in Ruby and Rails. I use exactly none of them today, and I’m not sure if I ever will. Was spending all that time for nothing? I don’t think so. Not only were those skills useful at the time, but I’m also positive that everything I learned during that time has shaped the way I do programming today. I fully expect the same to eventually happen to all the tools I’m using right now.

例如,当我在Ruby和Rails中构建应用程序时,我花了很多年学习各种Ruby技术。 我今天完全不使用它们,也不确定是否会使用。 那所有的时间都花光了吗? 我不这么认为。 那时这些技能不仅有用,而且我很肯定那段时间我学到的一切都影响了我今天的编程方式。 我完全希望我现在正在使用的所有工具最终都会发生同样的情况。

One trick for getting around the anxiety of finding the Right Framework is to go out of your way to find things that won’t be that useful directly. Find an interesting computer science paper and explore the concepts in it. Or spend time with technology that doesn’t directly apply to what you’re doing. The benefits of what you learn from such adventures are not that obvious, but they’re very real, and often surface in unexpected ways. It can also be very refreshing to just get out of the framework rat race for a moment.

避免找到合适的框架的焦虑的一种技巧是,走出自己的路,找到那些不会直接有用的东西。 查找有趣的计算机科学论文并探索其中的概念。 或花一些时间使用与您的工作不直接相关的技术 。 从这种冒险中学到的好处并不是很明显,但是它们是非常真实的,并且常常以意想不到的方式浮出水面。 暂时退出框架竞赛也可能非常令人耳目一新。

学会学习 (Learn to Learn)

Another very useful technique is to go meta, and just spend time learning to learn. Why not practice the process of problem solving itself, or read up on techniques like deliberate practice. Things like that will be useful to know wherever your career takes you.

另一个非常有用的技术是去元,只是花时间学习学习 。 为什么不练习自己解决问题的过程 ,或者继续学习故意练习之类的技术。 这样的事情对于了解您的职业将带给您有用。

Here’s how Rich Hickey puts it:

这是Rich Hickey所说的

“You need to be careful to recognize the actual game involved. Programming mastery has little to do with languages, paradigms, platforms, building blocks, open source, conferences etc. These things change all the time and are not fundamental. Knowledge acquisition skills allow you to grok them as needed. I’d take a developer (or even non-developer!) with deep knowledge acquisition and problem solving skills over a programmer with a smorgasbord of shallow experiences any day.”
“您需要小心识别所涉及的实际游戏。 精通编程与语言,范例,平台,构件,开放源代码,会议等关系不大。这些事情一直在变化,并不是根本。 知识获取技能使您可以根据需要熟练掌握它们。 我会选择一个拥有深厚知识积累和解决问题能力的开发人员(甚至是非开发人员!),而不是每天都有大量浅薄经验的程序员。”

As much as learning new frameworks (and learning about new frameworks) can have value, this is where the bigger returns are more likely to be. Become good at learning and solving problems, and you’ll have much fewer issues picking up whatever new technology skills you may need next.

尽可能学习新框架(和学习新的框架)可以具有价值,这是更大的回报更可能是在那里。 善于学习和解决问题,那么接下您可能需要的新技术技能的问题就会少得多。

Originally published on Tero’s blog.

最初发布在Tero的博客上

翻译自: https://www.freecodecamp.org/news/overcoming-javascript-framework-fatigue-741dac9370ee/

javascript 框架

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值