零基础学前端真的能学会吗(零基础学习前端)

很多小伙伴们经历过这样的学习阶段:

1.看网上的视频教程2.照着敲3.学完了一个觉得自己还没学会4.在学另外一个教程5.感觉自己学会了6.找个项目一做,做不出来,再找教程7.重复1-7

到最后发现,自己什么都知道一点,好像什么都会了,又好像什么都不会。你说不会吧,你问他各种知识都能说出一个所以然来,教学案例也能敲得熟练,你说会吧,一个全新的项目一点都写不出来。

那么问题在哪呢?

零基础学前端真的能学会吗(零基础学习前端)(1)

你说他练得少?并不是!

因为他硬盘里和自己敲过的项目已经很多了,再重复一个类似的项目已经没多大意义,除了消耗掉自己仅存的学习动力,然后放弃前端这个行业,没什么好处。

那么问题出在哪呢?

真正原因是他没有掌握成为一个合格前端的正确姿势。

首先我们先搞清一个问题,学会的标准是什么?

我认为编程是一项技能,而不是知识。所以学会的标准就是给你对应的标准,能够产出合规的产品。

但是这就涉及到了第一个层次的学习,虽然编程是一项技能,不是知识,也就是说光掌握知识成不了一个合格的程序员,但是没有必要的知识储备,一定成不了好的程序员。

这里就涉及到如何进行知识储备的问题。说到知识储备,有不可避免的要说到什么样的知识需要储备。

第一类知识,基础。

很多人可能第一反应是,公司要什么,我学什么呗,然后一搜,出现如下的岗位需求:

1.本科(含)以上学历,计算机相关专业,1年左右相关经验;2.有较强的技术能力与视野,对技术有强烈的好奇心和求知欲;3.Javascript 基础扎实,熟悉 ES6、 模块化开发、前端组件化;3.深入了解 HTML/CSS, 能够高效还原视觉交互细节;4.熟悉 webpack/gulp 等打包工具的使用,对新技术框架(ES6, Babel, Vue)等有一定的见解和实践;5.有一定的后端开发经验,熟练使用Git;6.有良好的工作态度及沟通表达能力;7.有良好的学习能力、独立解决问题的能力;

看到这么一个岗位要求之后,很多前端人员会这么想,

1.本科(含)以上学历,计算机相关专业,1年左右相关经验;

关于学历这个有就是有没有就是没有,没什么纠结和感慨的。至于因为这条考虑考个证书,不在本文讲述之内。

2.有较强的技术能力与视野,对技术有强烈的好奇心和求知欲;

这条我符合,我没事就看看新的技术啊,像vue,react和angular,或者是node 我都接触过,安装个脚手架,用一个模块没啥问题,这个我符合。

3.Javascript 基础扎实,熟悉 ES6、 模块化开发、前端组件化;

js我用好几年了,各种特效666,ES6 let 、箭头函数都没问题,组件化不就是import吗,我会。

4.熟悉 webpack/gulp 等打包工具的使用,对新技术框架(ES6, Babel, Vue)等有一定的见解和实践;

哎呀,我没用vue工作流写过项目,这个我没项目经验啊,我要不找个视频,写个项目吧,这个我欠缺,我得学学vue。

有一定的后端开发经验,熟练使用Git

要不我学学php?node是用js写的,这个我应该学起来容易些。要不学学Python也挺好,这个现在很火。然后陷入了无限的纠结和尝试之中。

5.有一定的后端开发经验,熟练使用Git;6.有良好的工作态度及沟通表达能力;7.有良好的学习能力、独立解决问题的能力;

我缺少git,看来我得注册一个gitHub,7,8我应该没问题。

综合起来一看,哎呀看来我现在确实应该学vue啊!

这样乍看起来分析得没错,但是仔细想想就会发现有很大的问题。

那就是忽略了基础!

如果你认为js只是写写特效,ES6 只有let和箭头函数,组件化就是import,那么你的js哪怕工作了10年也只是个初级水平。你的工作经验不是时间,是你掌握的知识深度和解决问题能力。

如果你连基础的js 面向对象都搞不明白,你连ES6 除了let 和箭头函数之外都搞不清楚,那么你必然会存在两个问题:

1.自然而然你就会认为node是用js写的,Vue要学的也不过是用脚手架跑几个小例子就算入门了。

2.有这样的认识,你就是想学也不可能深入了。

我说上面话,并不是说所有学vue的人基础都不好,而是说,如果你只会或者只想学vue不会成为一个合格的前端,更不要说优秀的前端了。

所以,第一个知识储备就是基础知识,基础知识是掌握那些“高级”知识的关键。你基础非常扎实的时候,就会对自己有个客观的评价,自然也就知道你需要什么知识了,而不需要满大街的去找各种学习计划了。自然也不用我在这里推荐什么学习知识了。

学会了基础还有当你前端水平发现很难突破的时候,你可以有更宽广的视野,比如学习算法、操作系统、数据结构,网络原理,这些都会让你对前端有更深入的认识,而不是感觉,前端不就那点东西嘛。

说完了储备什么知识,我们说下获取知识的途径:
  1. 找一个大佬带你

很多知识都是通过实践总结而来的,找一个工作很多年的老师来带你,是让你的知识迅速上身最快捷有效的方式。找老师带你其实就是花钱买时间,把你本来几年提升的知识,一年甚至几个月获得。

2.自学

大部分人都没有时间或因为个种原因不去参加培训,那么自学就成了最主要的手段。1.看书,效果慢,另外可能例子很老旧。除了经典之外的书就不要看了,说实话,大部分是用来赚钱的。除了 浪费你一些钱之外,还浪费你的时间。2.查看官网 官网永远是一项技术最权威的知识发布渠道。3.看视频,很多人硬盘里都有一套有一套的视频,不过并没有让大部分的技术和工资涨上去为什么呢?

刚才我说了因为很多人不知道自己学会没学会,就算搞清楚了学会的标准好像对自己也没什么帮助,就像告诉你驾校的考试标准,你也没办法通过考试,程序也是一个需要动手的行业,这里的动手指的是给你一个需求或者一个项目效果,能够完成。而不是停留在问你数组有几种方法,你对答如流一样。纸上谈兵没什么用。

那如何达到获取技能而非知道知识呢?

1.更改学会的标准

如何验证你学会了?

1.看完一个完整的视频,理解思路,尝试着自己敲,卡住了,复习卡住的部分视频。

2.删掉原来敲好的,重新开始,继续敲,卡住了。

3.重复1,2.

4.直到流畅写出为止。

2.模仿

(1)前期模仿一些简单项目,注意只要练习你要重点学习的部分,比如你想练习网易新闻的新闻列表,那么就不用关心他的数据交互或者用户登录逻辑怎么实现的(2)中后期模仿一些通用的项目,如博客,商城,还有你手机上安装的那些APP统统模仿一遍

3.交流

作为一个合格的程序员,要学会问问题和使用git。因为学会问问题才能得到能够解决问题的答案。学会使用git才能够更好的和程序员交流以及分享、讨论贡献代码,而这个是以上三点里面 最重要的一点,如何做到呢?

(1)花一些时间去尝试解决问题,遇到问题的第一个反应不该是求助,也不该是百度,而是分析问题所在,尝试定义问题,解决问题。这个是学习提高最快的部分。​(2)尝试解决无果,拿老师的课件和自己的代码使用对比工具对比,这里提供一个工具:https://www.diffchecker.com/其它也行。​(3)尝试google。​(4)尝试所搜无果,尝试清晰的描述一个问题,是你能够获得有效帮助的第一步,也是最重要的一步。别说我不会这类得不到帮助的话,去垂直的网站、QQ群或者找大牛请教。多说一句你的工作经验不是编出来的,而是每一次解决问题积攒下来的。所以一定要重视。

掌握了正确的学习姿势,配上合适的学习计划,那么成为一个合格的前端,只是时间的问题了。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页