曾经有位前端技术专家表示,“前端十八个月难度翻一番”,此言道出了前端领域更新换代之快背后的前端开发血泪史。也因此,“别更新了,学不动了”这句话成为了不少前端开发玩梗的口头禅。
    月影表示他个人属于技术发展的越多越快越兴奋的类型。他喜欢研究技术,尝试新东西,不怕学习,更没有学不动这种感觉。

    我一直觉得,如果一个行业的新东西层出不穷,说明这个行业一直在高速发展,这本身对于从业者来说是一个非常好的事情,因为这说明这个行业中有更多的机会和成长空间。

    对于一些前端开发的担忧,他也能够理解。他认为,如果你 不盲目 地去追求所谓的“时髦”技术,不去刻意担心自己是否落伍,而是去多观察这个行业,找到技术发展内在的规律和脉络,那么你就知道该如何前进,不会有任何恐慌。
    在任何一个领域或方向,知识体系都可以大体上分为基础知识和领域知识,而领域知识又可以分为通用领域知识和专用领域知识。二者的变化是不一样的,基础知识的变化最慢,其次是通用领域知识,然后是专用领域知识。
    用可视化这个方向来举例,基础知识是数学和图形学知识,比如向量、矩阵运算、三角剖分这些知识属于基础知识,它们基本上不会随着时间发生很大变化。JavaScript、WebGL 这种属于通用领域知识,它们会改变,会慢慢发展,比如从 WebGL1.0 发展到 WebGL2.0,从 ES2019 发展到 ES2020,但不会变化、发展得那么快。而类似 ThreeJS、BabylonJS、SpriteJS、d3.js,这些属于专用领域知识,很有可能一个大版本升级,就会有很大的变化。
    学习这些知识,也是有不同的方法的。一般来说,如果是基础知识,随便什么时候都可以学,而且越早学习越好。基础知识就像是你的内功,学好它们,融会贯通之后,学习其他的知识都是事半功倍的。如果是通用的领域知识,一旦你下决心从事这个领域,也是能够尽早学习它比较好,不过由于这些知识是领域相关的,如果能一边学习,一边通过实践来打磨,就会掌握得更快。专用领域知识,不一定要很早去学,有一个技巧是,当你用到的时候再去学习它们。如果你没有用到,你可以知道有这门技术,能做什么就行了,不用花大量时间和精力去钻研它们。
    有些同学觉得技术更新太快,学不过来,通常是被这些专用领域知识给“迷惑”了。比如大家都说前端工程化里的代码打包很重要,于是今天学习了 webpack,明天又去学习 rollup,而实际上这种专用领域知识,只需要知道它们能做什么,在用到的时候再去详细学习就好了。

    给前端开发的一些真诚建议
    月影作为前端领域的多年从业者,技术管理者,也为前端之巅的读者朋友给出了自己的经验总结和真诚建议。
    首先,确定你自己真正喜欢和热爱前端开发这门职业。大多数同学成为前端工程师,内心是真正喜欢这个职业的。但是,之前也听到过有同学,因为觉得在程序员中前端比较“简单”,或者觉得自己数学或算法基础不好,做前端对这些要求不高,再或者就是觉得前端工程师算是份体面的职业,所以选择它,内心中并没有真正热爱这个职业。如果你心中没有真正热爱前端,仅仅把它当做一份谋生的工作的话,那么你可能在这个职业道路上走不了多远,也无法达到很高的高度。所以如果有这种情况,你需要反思一下自己是否真的适合前端开发这个职业。
    如果你确实热爱这份职业,考虑长远的发展,最好选择一个好的平台,一个技术氛围好的团队,一份节奏合适的工作,这里的节奏合适指的是忙闲交替,既不会长时间持续特别忙,又不会特别闲。在这样的节奏下,项目积累再加上自己的学习沉淀,可以比较快速地成长,而技术氛围好的团队,可以让自己的学习沉淀速度更快。
    要在专业上达到一定的高度,每个人的情况是不一样的,要根据自己的情况来规划。不过有一些共通点,一般来说,自我的成长需要能够找到并突破前端领域的“边界”,这个边界可以是某个有深度的领域,深入到其中的技术前沿,也可以是某个交叉领域比如与服务端的交界,与移动客户端的交界等等,在这些边界上做出突破,就可以步入前端专家的行列。
    前端专家除了技术能力,也需要打造自己的个人影响力,锻炼自己的领导力,要让自己心态开放、眼界开阔,不排斥新技术,拥抱开源,多参与社区,这样的话,在职业之路上就可以到达一个比较高的高度。
    最后,希望各位都能成为优秀的前端专家,让我们一起将前端行业变得更好。

    https://mp.weixin.qq.com/s/mt3eKTCCi7i69XPphCfMug