解决JavaScript疲劳的旅程
直到几个月前,我什至没有焦虑就不能看JavaScript。
在所谓的JavaScript疲劳中,我100%处于困境,我无法摆脱它。
这持续了几年。
今天,我喜欢JavaScript及其生态系统。
这怎么发生的?
从90年代开始,我就一直在以某种形式使用JavaScript,而且我的书架上有些书今天看起来很有趣,到处都是document.write
陈述。
大概是2012年至2013年,ES6带给我们的巨大变化无处不在。
起初,我无法收拾所有正在发生的事情。我不能一次接受这么多更改。 JavaScript发生了变化,但我忍受了。我花了很多时间才能正确地学习它,而它却在我的脚下发生了变化。
我发现一个真的发现一篇博客文章中的评论“如果您从一开始就没有去过那里,那么学习现代JavaScript将会很困难“:
我会争辩说从一开始就在那儿(是的,我是那旧)使操作更困难-蒂姆·泰特(Tim Tate)
我在2012年认真研究了JavaScript和Node.js,但从未经历过像ES6那样巨大的语言更改。先前的重大变化发生在2009年的ES5中。 ES6确实改变了一切。这是对JavaScript的巨大改进,以至于每天都有很多东西可以纳入该规范,但您实际上并不知道它们是否成功,而且您必须赶上Twitter上的每个人都在谈论那些事情,也许是下一件大事。
var
被留在尘土中。
function
不再存在。
基于原型的继承花费了很长时间才能正确学习,但它却消失了,隐藏在课堂的地毯下。
这只是表面。过去几年中,整个JavaScript生态系统发生了巨大变化。
建立所有的东西
发生的一大变化是建筑。
我们从一个非常简单的事情开始,包括使用带有脚本标签的JavaScript,到建立将我们的语言编译成一些难以理解的大文件的步骤。起初,我奋力抵抗,我站满了大炮,与建军作战。
但是当巴别塔部队来时,我最初更加努力,但最终我举起了白旗,加入了敌人。
我意识到Babel并不是一个引入未来,边缘功能的奇特库,当这些功能出现在浏览器中时,我们会忘记Babel。不,在可预见的未来,Babel会在这里留下来。
当ES2017完全进入浏览器时,Babel将允许使用ES2018,ES2019等。没有逃脱。拥抱未来,Babel是您的朋友。
使用最简单的选择
该工具是当今JavaScript最困难的部分之一。是的,您可以了解有关Webpack的全部知识,但是当您开始时,请忽略所有内容,并使用现成的解决方案,例如创建反应应用,React Boilerplate将为您隐藏微小的细节,并让您专注于代码。
不要从建立环境开始,而是要学习使用毛刺。没有简单的方法可以开始涉足现代JavaScript。
没有更多的发行版
ES6是如此之大,以至于ECMAScript委员会决定下一次发布较小的版本。这就是为什么ES6也称为ES2015的原因,并且是该年度的第一个版本-从现在开始我们将每年发布一次。赶上它更容易,因为添加它们的时间有限,所以更改较少,而且可以预见(尽管请记住,会有更改)。
忽略嗡嗡声
如果您像我一样,您可能会在Twitter上关注很多永远处于边缘的人。也许某些思想领袖决定了下一件大事。他们说使用X,其他所有人都使用X。
也许他们喜欢使用最新的API显示片段,这些API甚至不接近于标准,但可以与浏览器中的标志一起使用。
他们可能有充分的理由。你不。不要落入闪亮的新玩具的陷阱,专注于您的工作。
每周没有新的框架
有个笑话说“这个月的JavaScript框架是什么”或“每周都有一个新的库”。没错,有不计其数的人在研究JavaScript,这很棒,它带来了创新和发展,这是最近几年经历的那种JavaScript,这对于语言生态系统而言是巨大的。
但是要注意的是,大的事情不会经常改变。
React是6岁。
Vue是5岁。
5年对于科技行业来说是很长的时间。这些是稳定的技术。现在学习,他们也将在这里停留很长时间-他们不会消失。
您有足够的时间成为这些框架中的任何一个的专家,它们不会很快消失。
接受事物的来去去去
也就是说,任何事物都有生命周期。
几年前,jQuery随处可见,但现在很少有新项目开始使用它。
在2013年,Backbone.js规模巨大。现在它已经从地图上消失了。 CoffeeScript,从地球表面移除。
Ember.js,Angular.js和Meteor摇摆不定,并保持了几年的流行状态,现在谈论最多的似乎是React,Vue和Angular(与Angular.js不同)。
这些主要框架的每个周期通常持续数年。我仍然有许多运行良好的Ember.js应用程序,如果他们能完成工作就不需要更新它们,并且我也不打算碰它们。
科技不断发展和成熟,然后被使用而不是谈论。
您对使用jQuery并不傻
有些人的皮肤很厚。但是,如果您阅读的内容足够多,就会发现那些鄙视每个人曾经使用过的技术的信息,并告诉您您错了。 😆
使用PHP已有很长时间,我已经习惯了这一点,人们批评流行的东西是很正常的。即使是Go,它的简单性也令人赞叹,但有时也会因此而受到批评。您总会发现有人对某事大吵大闹。
例如,我必须引用Pieter Levels的推文,他用一个PHP文件建立了庞大的独立业务。
但是,作为一个初学者,您可能会发现有人说您选择了一项旧技术,没有人再使用它,而应该使用React。忽略它们,将它们移出您的脑海。
记住:
如果它适合您,那么它是正确的堆栈。
大多数情况下,技术是由与您或您的小型团队的需求完全不同的巨型公司构建的。随心所欲,即使不使用前沿技术也能有所作为。
现在,您可能不需要jQuery。但不能代替框架-普通的JavaScript非常好。
另一部分是过度工程。不要仅仅为了感到聪明而使用技术。更好地了解它。并了解何时使用对您有帮助的框架或库。
您没有义务了解所有内容。找到你的平衡。
阅读您的Twitter feed可能听起来像这样,没有人知道所有的事情。有人无法学习前端开发中发生的所有事情。这是一所终身学校。绝对没有办法毕业。
通过用户友好的文档选择技术
React和Vue拥有出色的文档并不是偶然的。这是他们成功的关键部分。
JavaScript将再次发展
去年,ECMAScript语言引入了await / async,现在该语言的功能得到了广泛使用。基于承诺的代码看起来简直糟透了,您有重写一切的冲动。
不要这样做,而是对您编写的新代码使用新功能。 ES2018也将在今年发生同样的情况。每个人都会谈论它们一段时间,然后我们将恢复工作,并开始谈论ES2019功能。
拥抱变化。这比押注停滞然后消失在几年内无关紧要的技术要好得多:JavaScript将继续存在!
学习基本原理,并选择自己的旅程
在Web平台上进行开发需要做出承诺,要经常学习新知识,甚至只是找出可能的东西。
有时候,在20%的时间里学习所需的80%的东西就足够了,而不必花太多时间在边缘情况下。
旅程才刚刚开始
与其他语言相比,JavaScript仍然很年轻,它非常流行,并且在过去几年中发生了巨大的变化。它每天都吸引着许多有才华的新开发人员,并且令人着迷的是我们将在10或20年后编写JavaScript。
更多实验教程:
- 我用来运行此博客的堆栈
- 成为软件开发人员的8个充分理由
- 针对写博客的开发人员的SEO
- 回顾《 4小时工作周》
- 建立生活方式企业
- 建立自己的平台
- 作为独立制造商,您应该制造哪种产品?
- 创建自己的工作保障
- 开发人员,学习行销
- 产品业务的自由
- 产生价值
- 为您的业务着想
- 这个想法没什么
- 利基市场
- 面向软件开发人员的远程工作
- 产品/市场契合度
- 前端开发人员的最佳播客
- 为什么要创建电子邮件列表?
- 断开时间与金钱的联系
- 稀缺性原则适用于软件产品
- 社会证明原则
- 我如何将暗模式添加到我的网站
- 我在Deep Work上的笔记
- 使用无聊堆栈的优点
- 如何估算编程时间
- 成为独立开发者
- 如何学习如何学习
- 为什么针对编程工作的面试问题如此困难?
- 我需要学位才能成为程序员吗?
- 每个人都可以学习编程
- 如何提高生产力
- 如何获得静态网站的实际浏览量
- 您今天是否填补了开发人员的水桶?
- 我如何录制我的视频
- 我过去所做的所有软件项目
- 教程制作者角度的教程炼狱
- 每个开发人员都应该有一个博客。这就是为什么,以及如何坚持下去
- 具有开发人员的业务思维
- 如何编写不可维护的代码
- 什么是冒名顶替综合症
- 如何在家工作而不发疯
- 我如何不再担心并学会热爱JavaScript生态系统
- 我如何制作网页原型
- 您应该是团队中最糟糕的开发人员
- 如何使用Hugo建立博客
- 写你不知道的东西
- 如何使用uBlock Origin阻止干扰
- 编码是一门艺术
- 我连续两年每天写一篇博客文章。这是我从SEO中学到的5件事
- 扑灭大火
- 关于成为一名通才
- 开发者的困境
- My plan for being hired as a Go developer. In 2017
- 使用Mac和iOS设备提高工作效率
- 如何从教程转到自己的项目
- 这是我的小数码花园
- 如何以开发人员身份开始自由职业
- 分享建立软件产品业务的旅程
- 子文件夹与子域
- 我如何使用文本扩展来节省时间
- 软件是超能力
- 我喜欢书
- 我如何决定创建一个新的项目管理应用程序