干货 | 一份我的前端技术进阶指南

news/2024/7/10 21:07:34 标签: 前端, 开源, 设计模式, 算法

近十年来,前端的发展势头迅猛,每年都会出现不少新的技术和标准。「If you are not growing,then you are dying.」这句名言对于前端工程师同样适用。维持现状就是落后的开始,不断地学习才是必修课。

话说回来,在时间和精力有限的情况下,那么多技术到底该怎么学?其实,技术的本质都是基础的设计模式和编程思想。只有把基础打好,学习新技术才不会吃力,达到「磨刀不误砍柴工」。

快速进阶的方法

首先,开源项目」「造轮子」 是我个人推荐的做法。

参与开源项目贡献的前提是你必须是项目的用户,并且在使用过程中遇到了问题。这样,你才有机会参与开源项目贡献。在遇到 bug 时不只提出 issue ,同时修改代码并且提交 pr,当 pr 被接受时,这个贡献才算完整。

为了达成这个目标,你不得不阅读这些项目的代码,作为此项目的用户,读清楚代码并且和业务相结合是最容易的,在这个过程中,吸收先进的写法和理念,提升会很快。在 pr 提交以后,会有项目成员 review 你的代码并给出修改意见,这是一个非常有意义的过程。那么问题来了,如何在现有的开源项目中找到一个 Bug ,又或者创建合理的特性呢?这还是需要一定功底的。所以说,参与开源项目贡献并不适合初学者提高技术能力。

下面说说造轮子。这也是不错的选择,但是,造出来的轮子很少会被使用在生产环境中,除非你的轮子真的独一无二 —— 因为对于一个项目来说,“稳”是排在第一位的。除了你的技术 Leader, 或许没有人会去关注项目中使用了哪些先进的技术和思想。

如果你的公司有基础建设部门,毫不犹豫的去那里吧,那就是造轮子的地方 —— 并且基本上都在使用原生技术,这里的每一个轮子都有可能变成开源项目。在这里,技术会得到大幅度提升。但是,如果本身技术一般,如何才能进入基础部门也是一个问题。那么就有了下面的内容。

初学者怎么办?

对于 Web 前端工程师来说,前端包含两点,即 「呈现」「业务」

对于呈现,那主要是 HTML CSS 的事情,现在大家的浏览器在解析文档方面基本上已经没有太大区别了,所以现在的原生前端开发者很少去关注浏览器兼容的事情,在这里所要做的就是记忆,不要求记住所有,但起码要知道它们都有什么特性,在有需求的时候就不会太过于慌乱。

对于业务,这里主要使用的是 Javascript (ECMAScript) 。既然是编程,在掌握基本语法的基础上还需要了解数据结构、算法设计模式以及常见的编程范式,这些都是「起高楼」的基本功。

我的建议是,能够简单使用原生语言实现业务后,再考虑使用框架和类库。因为我们知道了基础原理后,使用框架和类库的过程中你就会知道到底发生了什么,只有这样,在更换同类型框架或者类库时才能触类旁通。这一切的一切都源于基本功。所以,沉下心来修炼基础才是重中之重。

方法论

其实对于任何一门「技术」,不论是编程还是修理挖掘机,初学和进阶的模式都是一样的。

1. 先了解行业,掌握基础知识

了解编程是做什么的,数据结构,算法设计模式,常见的编程范式,这些都是需要掌握的。虽然是老生常谈,但打好基础的确是进阶之路的重中之重

2. 小试牛刀

自己虚拟一个项目试一试,亲自玩一玩,从中必定会有所收获。

3. 上手实践

进入正式的项目,并且经历真正的项目磨练。

4. 总结经验

步骤3 和 步骤4 是循环的过程,当经验足够多时,就可以进行下一步骤了。

5. 传道、授业、解惑

当经验积攒到一定数量,别忘了进行「输出」,方式不设限,可以讲给别人听,也可以和同行进行交流。输出是巩固知识最有效的方式。写程序就是带徒弟做Leader,没事做做开源贡献,弄个开源项目玩玩。

6. 巨大的质疑和迷惑

了解了行业一切运转的规律,思考其原理和内核,提出问题。

「为什么要这样?」「怎么样才会更好?」

7. 创造者

到了这个阶段,所有的技术都要听你的了,当然,也是比较高的阶段。

对于编程者来说也许是制定新版本的语言标准?

与君共勉。

一个彩蛋

“道生一, 一生二, 二生三, 三生万物”

下面这个网站就是“一”

MDN Web Docs


http://www.niftyadmin.cn/n/1732205.html

相关文章

JavaScript 一团乱,这是好事

译者按: JavaScript从简单变复杂了,作者从另一个角度看待这个问题。 原文: JavaScript’s a mess – and that’s a good thing译者: Fundebug 为了保证可读性,本文采用意译而非直译。另外,本文版权归原作者所有,翻译…

logisim 快速加法器设计实验报告_实验室设计!高校智能实验室建设与实施方案。...

如今随着信息化浪潮席卷全球,以互联网和智能设备为代表的信息技术已经渗透到社会的各个行业。作为教育领域的排头兵,现代信息技术引发了高校在教学、管理、科研等方面的变革,甚至成为信息社会高校生存和发展的新动力。利用信息手段和网络技术…

看图学HTTPS

前言 之前说到HTTPS,在我的概念中就是更安全,需要服务器配置证书,但是到底什么是HTTPS,为什么会更安全,整套流程又是如何实现的,在脑子里没有具体的概念。所以,我花了几天的时间,通…

autosar详细介绍(vector的文档_【精通AUTOSAR】第一章:AUTOSAR的未来: AP是否会取代CP?...

从今天开始,我将为大家带来专题连载《精通AUTOSAR》。请各位耐心看这篇文章,原作者是从一个比较高的视角去为大家解读AUTOSAR,而不是上来就直接讲技术实操。我个人认为原作者的观点非常值得大家去深思,不妨跟着老师提出的问题一起…

安利几个好用的chrome插件

给大家安利几个我觉得比较好用的chrome插件 Toby 安装的地址在 这里 官方描述如下: Toby is better than bookmarks, it levels up your Chrome browser. Toby is a visual workspace that lives on every new tab. Add new tabs by dragging and dropping your browser tab…

怎么改字段名称_“地球之耳”罗布泊真有这么神奇吗?双鱼玉佩事件究竟怎么回事?...

“地球之耳”罗布泊真有这么神奇吗?双鱼玉佩事件究竟怎么回事?当考古专家失踪,大家最先联想到的是“是不是在探索的时候,遇到了灵异事件”。我国著名考古学家在探寻罗布泊的时候,不幸失踪,之后国家多次组织…

Google I/O 2018 : Web 现状综述

无论是在桌面端还是在移动端 ,Web 都处于高速发展中。每个人都能轻松地构建快速且身临其境的页面。同时,开发者工具也越来越强大、越来越多样。 Google I/O 2018, chrome 团队 leader Ben Galbraith 和 amp 项目 leader Martha 携手从 Google 的角度描绘…

参观云栖小镇体会_杭州云栖小镇之旅

这周头几天和同事一起去了趟杭州出差,回来也有好几天了,心情还是难以平复,觉得还是应该记录下来当时的一些感受。我们是个周日早上从武汉出发的,赶上浙江那边起了点台风,我们原订的那趟列车停运,被迫改签了…