首页 >> 大全

程序员如何快速学习新的框架

2023-12-11 大全 23 作者:考证青年

今天很流行的 Web 框架,半年以后,可能就会在市场上被『淘汰』——技术选型的时候,不被开发人员推荐;又或者它已经推出了全新的版本,使用了全新的 API,我们便需要更新现有应用

前端框架丰富多彩的今天,快速学习新的框架是每个前端程序员的必备技能。

快速学习是基本能力

后端程序员,开始一个新的 Web 项目时:

而只使用 的前端程序员,开始一个前端项目时。你有几成的把握,能判断他/她出会使用哪个框架?

后端程序员在有限的时间内,只会使用固定的技术栈,固定的框架。对于大部分的公司来说,使用相同的后台语言,是一个更好的选择——即可以减少带成本,又可以沉淀下技术积累。

而前端则不一样,不同的项目都有各自的需求,因此采用使用不同的技术栈。简单的,可以直接使用原生的 完成,又或者是使用 完成开发。稍微复杂一点的项目,采用容易上手的 Vue.js 是一个不错的选择。更复杂的项目,便可以使用 ,可以方便后台程序员转到前端。

因此,工作一定年限的程序员,都使用过不同的框架。可是,不同的程序员上手新框架的速度,总会存在一定的差异。

那么,怎样才能快速上手一个新的框架呢?

学习新的前端框架,要么该框架很火——即热闹驱动开发(Hype ,HDD),要么你们将采用该框架。在采用新框架的动机里,有一种是:技术演进。使用新的技术、框架,来替换现有的框架。旧的框架在某些地方上,存在着明显的缺陷。

这种情形下,业务知识本身是不变的,只是要由框架本身来应对业务的变化。因此,使用新的技术来替换旧有的框架,就相当的容易——重写,我们甚至可以直接复制、粘贴,大量原有的代码。只是,仅仅做到重写业务逻辑是不够的。我们还要掌握新的框架的核心,并探索更多的可能性。

框架流程_框架技巧_

如何学习新框架:守-破-离

我在学校的时候,看到一个关于编程语言的学习建议:学习三种以上的编程语言,并且它们最好是三种不同类型的语言。如面向过程的编程语言 C 、脚本语言 、,面向对象的编程语言 Java、再加上个近年来火热的函数式编程语言,到底也就差不多了。当我们学习了一门语言,再上手一门相似风格的语言,也是相当轻松地一件事。当我们学习了不同类型的几种语言,未来就可以轻松地绝大多数的语言。

相似的,学习使用 Web 框架也是如此的。现在,对于我而来,使用一个『新框架的姿势』是:

它与我在公司接受培训的时候,学习到的『守破离』观点相似。在保留原来业务的情况下,一步步向前演进。

守:应用业务知识

在现有的业务上,使用新的框架是一件容易的事。拿上一份框架的说明书、一份需求文档、一个搜索引擎,就可以很容易地复制出一个产品。唯一的门槛是,你需要会读懂这些内容。这有点像新的知识阶级,只是门槛不再是识字与否,而在于是否能懂编程的知识。

正如维基百科上,对于『守』的介绍一样:

最初阶段须遵从老师教诲,认真练习基础,达到熟练的境界。

新手期的我们,拿到一个新的框架,要一下子对它了运用自如,是一件很难的事。我们只能在一个又一个的练习中,尝试去掌握框架的知识。如,原先我们使用的是 + 完成的前端应用,现在要切换到 Vue.js。我们要做的便是尝试使用 Vue.js,并不断地练习一些相关的用法。而在熟练之后,我们也会练习我们的基本套路,如在上文中说到的『新框架的姿势』。

而如果不考虑练习本身的时间因素,便只剩下的一个问题是:如何找到一个合适的练习项目。然而,这样的项目在 上有很多。可是即使它能满足我们的需求,我们有时候也不知道怎么练习?

框架流程_框架技巧_

我想问题的关键在于:我们手上没有一个已经成型的业务系统。因此,我建议大家可以从创建一个博客开始做起,先使用现有的技术,再使用新的技术,慢慢的一点点往上添加内容。如我的博客,最早是基于 + ,慢慢的我添加了一些新的东西:

尽管越来越多的功能,有一些已经不再维护、关闭了。可是,它让我有机会去练习一些新的技术,掌握一些技术背后的思想,得到一些框架相关的结论。而不是每次与别人讨论时,说:xx 说 xx 框架有这样的问题,而是我试过这个框架,它有这样的问题。

破:学习框架核心

基础熟练后,试着突破原有规范让自己得到更高层次的进化。

转换技术栈,本身没有什么技术含量,但是能帮助稳固知识。当我们已经熟悉使用这个框架完成业务时,便可以细入相关思想。

了解这个框架的能力,生成一份与框架有关的索引,也可以用脑图的形势来整理这些内容。

如:

嵌入式系统工程师图谱

举例,如 + ,还有其他更多的可能性

同时,我们还应该理解框架背后的原理。不一定深入,但是觉得去探究。如:

这些都在我的知乎专栏上《我的职业是前端工程师》有深入的介绍,有时候的读者建议多阅读相关的内容。

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了