[有 0.01 点点基础的人]自学前端的正确路线是?

2022-05-09 11:33:49 +08:00
 SilencerL

早上起来刷了下 B 站直播,看到一位QA 裸辞自学前端的朋友在直播学习前端,学习的路线是找了个五六七八年前的 XX 机构前端教学视频,从最基础的 HTML/CSS 开始学习,还没有涉及到 JS 区块。

看了一会儿感觉他这么学真的好累(或者说好慢),在现在框架横行的情况下,以就业为目的的前端自学路线还应该是这样吗?我问了一下我自己:如果让我辅导一位曾经从事测试工作并且对一些程序逻辑等有一点概念的人自学前端,我会怎么为他指定指导方案?

想了一下,我大概会让他直接快进到从 React 或者 Vue 入手,也许会用一天甚至更短的时间稍微讲解一下 HTML 的标签和其原生 attribute 的写法和含义;然后再用一两天讲一下 js 的基本操作;最后直接给他一个框架的脚手架,用框架开始一个项目的实训(如果假定以 React 为开始的话,大概在 JSX 的使用中就能理解和复习大部分的 HTML 标签,同时在实训的过程中一步步巩固 js 的知识以及学习基础的 CSS 知识)。

我不知道我这种想法是不是正确的,只是感觉如果和 jQuery 时代一样开始干学 HTML/CSS/JS 的话实在是追不上时代的步伐(……),如果是以爱好为目的的学习也许没什么不妥,但是如果是已就业为目的,那的确应该用一种『赶鸭子上架』甚至说是『拔苗助长』的操作路线更好,吧?

各位怎么看 :doge

6076 次点击
所在节点    程序员
30 条回复
l4ever
2022-05-09 18:51:54 +08:00
html->css->js->http->jQuery?->ts?->webpack->框架(react or vue)->
wonderfulcxm
2022-05-09 18:58:47 +08:00
不敢苟同,基础很重要,尤其是 js ,坑巨多,框架没那么重要。
vision1900
2022-05-09 20:03:25 +08:00
真就 Fake it to make it ?纯 JS 至少学一个月(不包括高级特性比如迭代器|原型链| Proxy | ES2017+)吧
irisdev
2022-05-09 23:54:58 +08:00
一两天能把 JS 的数据类型和函数看完就不错了
aleen42
2022-05-09 23:59:20 +08:00
路漫漫其修遠兮
GeruzoniAnsasu
2022-05-10 10:57:11 +08:00
@dcsuibian

#11 hhh 有点惨, 这么一说发现确实有相当多的基础知识其实刚接触还挺抽象难懂的。

我想很多人说前端简单的原因是——大部分人学编程都不是从 js 开始的,他们会先接触各种数据类型、数据结构、对象模型、库 API 、IDE 和调试器,等注意力转到 js 上时,他们会发现 js 的范式和设计模式都是熟悉的,复杂度也不会很高,运行环境也相对标准化(只说 js runtime 不谈适配 IE 这种「 hacking technique 」),程序的主要目标也仅仅只是「拼一拼字符串」,所以看起来确实比较简单。毕竟对于 native developer 来说,画一个图背后已经需要整整一坨图形 API 相关的基础知识储备了,与前端根本不能比。

附个图:




速成是有条件的,但很多东西也真的都是相通的,同一个概念在不同语言和环境下的不同实践而已,一定程度后「学习」内容其实只有新环境(指新语言、生态等)的约定、规范、特有实现而已,实际上绝大部分已经学过了。

比如我写过 mfc winform wpf qt(c++)甚至 qml ,来摸前端我只会问你们前端框架实现数据绑定是浏览器做的还是什么事件触发的,vue 和 react 的区别在我看来只是「把 markup language 编译成 script 」 vs 「用 script 动态生成 markup language tag 」选择方向不同而已,而这两种方向以前都早干过各式各样类似的事了。



------

学习前端我的看法是,他必须已经明白「用 html 控制元素,用 CSS 控制样式」的意义。

if not, 那么从 html+css+js(jquery)开始
if so, 那么可以直接快进到响应式框架,中途带过 DOM

如果他已经明白响应式是怎么回事,能想象模板代码是怎么编译的、ViewModel 层是用什么机制实现的,那他只需要文档参考,「学习」仅相当于熟悉语法、浏览器 API 、框架组成而已,说是「学习知识」不如说是「获得实践经验」
DiamondYuan
2022-05-10 12:17:51 +08:00
自学前端的路过,分享一下我的经验。 (成功:拿到了头条 offer

分享一下我的看法

1. 不需要系统性的学 css 、90% 的工作都可以用狂欢解决。
2. 建议直接上手 vue 和 react 。按照以下流程
DiamondYuan
2022-05-10 12:25:00 +08:00
不下心回复了,接上文。

学习流程(有编程基础的,如果没有编程基础,建议先学会 js )
2.1. 先通过 vue-cli 直接开发,在脚手架的基础上写自己的项目。
2.2. 项目开发中不断解决遇到的问题,学习 状态管理、前端路由、前端组建、接口请求等概念呢
2.3. 碰到脚手架无法解决的问题,学习 webpack 、vite ,定制自己的脚手架。 学习 js 的打包机制。
2.4. 写项目过程中找一本 javascript 的书籍,完整的读一遍。 了解 js 语言的各种细节。
Q65f257Thf3o2cyZ
2022-05-10 12:52:17 +08:00
自学三个月,就找到工作了。目前全职远程 React

1. https://www.freecodecamp.org 的前端课程刷完 (老旧的不看,比如 JQuery ,重点是你能完成项目)
2. 写简历,快速准备面试,你学它是为了找工作,不是为了成为专家。
3. 完善领英和 Github ,把你的项目都放上去
4. 学好英语,准备面向全球市场求职
foam
2022-05-12 00:00:00 +08:00
几乎没有基础的同学,如果为了速成入职,我一般建议他去报班。
如果不报班,我建议找最近 2 年的前端培训班(例如黑马)视频去看,去摸索。
培训班的学习路线,不是面向学习最佳的路线,但大概率最好的面向就业的路线。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/851703

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX