解答关于学习前端的一些问题

3,023 阅读8分钟

关于

前言

最近在公众号和文章中经常会收到一些读者的留言和评论,本文是我挑选的一些在关于学习前端方面比较有价值的提问,希望能够帮助那些有类似前端问题的读者们,同时也为自己的回答做一个统一的整理。

问答

1. 我是朋友介绍才接触了前端,并且去了培训机构,培训了4个多月,目前就职一家公司,半道接手他们的项目,看了近一个月还不是很懂,想放弃,但是前端高额的工资很诱人,自己也不想放弃, 所以想找一个很有效的学习办法。

答:既然坚持了这么久我觉得不要轻易放弃,万事开头难,不光是前端这样,挺过去了自然会觉得轻松很多。

做前端不要因为工资高而去做,这样很容易疲倦和乏味,你应该从学习中发掘自己感兴趣的地方并为之奋斗,这样才能学的轻松自如。另外前端目前之所以工资高是因为其也不是很好学的,各种新技术层出不穷,真正优秀的前端还很稀缺,我们必须保持一颗善于学习的心才能不被淘汰。

至于学习方法,根据你的情况我觉得一开始你应该找一家愿意培养你的公司,并且必须要有一定经验的前端带你,这样会有一定的学习和解决问题的方向,不然会很迷茫。

如果没有一个前端团队,除非你有很强的学习能力,否则对自身的发展是很不利的,可以考虑换一家公司,一开始对工资要求不要太高,哪怕工资很低,有有利于自己成长的环境那也是值得去的。

另外学前端一定要多看书,自己觉得哪方面薄弱就去买哪方面的书,书籍会非常系统性的从易到难的帮你提升自我。同时在学习的过程中也要多多记笔记,把不懂或者有价值的知识点记下来,有空的时候多看看之前的笔记,推荐使用在线的有道云笔记和印象笔记。

最后就是一定要多敲代码多实践了,理论的东西终究是无形的,你需要将自己学到的东西敲出来,最好能自己总结后敲出一个demo来,或者根据人家的demo照着敲,不然会很容易忘记。

2. 我是一名在校生,马上就要去公司实习了,目前对于别人写的JavaScript代码我基本都能看懂,但是自己就是写不出来,感到很难过,请问如何才能学好JS?

答:首先一般学习前端或者其他语言都会经历看懂代码到会敲代码的过程,你现在能看懂代码但不知道如何应用说明你还没有到达会敲代码的那一层,这一点每个初学者都会经历,不是你独有的问题,没必要气馁和难过。

至于如何学习JS,如果你现在已经对JS的语法都有了一定的了解,那么除了多看代码外,更重要的是多敲代码,哪怕照着别人的例子敲也不要一直盯着看。另外初学JS可以从网上找一些简单的实例进行模仿,比如“按钮倒计时”、“回到顶部”效果等,先不要一开始就看人家给出的代码,建议先自己思考一下实现的步骤和逻辑,然后自己尝试着实现,等遇到问题了再分析人家的代码是怎么解决的,这样有助于你JS思维层面的提升。

同时好好把握你实习期间的时间,实习本身就是一个学习的过程,因为实习的时候可以接触一些公司的项目,可以有很多实践的机会,对新手来说很有帮助。

最后建议多看看JS相关的实战书籍,书籍很系统性的帮助你学习JS,另外记得多记笔记、多总结、多思考。

3. 很纳闷vue为何这么火,很多招聘职位都写着要求熟悉vue,想问下楼主,像vue这种个人的东西就不怕哪天它突然不维护了么?很多大公司的东西都不敢保证一直更新维护,更别说这种个人作品了,况且前端开发日新月异,说不定过几个月又流行其它什么MVXX框架了。

答:我个人认为其实vue发展到现在已经不是一个个人项目了,其背后有很多开发者和用户一起维护着,包括阿里巴巴这样的大公司,即使哪天Vue作者不维护了也停止不了其生态圈的继续发展,比如阿里基于Vue的Weex项目,也会有人站出来接力的。

另外不维护的还有一种可能就是不符合时代潮流了,也就是说有其他新技术出现取代了Vue的位置,就好比之前的seaJs一样,其作者玉伯也说过“随着ES6的落地,seaJs已经没有存在的必要了。”如果是这种情况的话那么也无可非议,因为一种技术最终都会被新技术取代,但是至少其为新技术的出现奠定了基础,铺平了道路。

其实学一个框架并不是学技术本身,而是学它的思想,在学Vue的同时你也会接触并巩固前端其他领域的知识点,所以为什么很多人学了Angular后学Vue会很轻松,其实它们的思想是融会贯通的,我们不能始终抱残守缺。

4. 今年毕业找了份国企,呆了两个月安逸的生活觉得不适合我,我就跑出来学习前端了,零基础在培训机构,每天的知识量很多,学得不扎实,目前刚学完bootstrap。因为学得不扎实,我留了一级,也就是说多学了一个月。我上一个班级目前正面临就业,现在工作不好找,不是内推就是要求有工作经验,我现在担心找不到工作,你能否给我指条路,现在着手做得除了学习还有什么?

答:个人感觉培训机构学的东西可能还是比较基础或者与实际工作有一定差距的,所以还是得自己看清当下前端的技术趋势,自学是很重要的。至于除了学习,毕业后应该尽快找一份实习的工作锻炼,一开始工资多少其实不重要,只要有机会锻炼就行,努力干个几个月有点经验了就可以跳槽了,之后工作会好找很多。没毕业前,可以利用这段时间自己用学到的技术做点demo出来,不要太简单的那种,放在简历里对面试很有帮助。

很多企业很看中面试者的学习能力,如果你在面试中表现出一种很强的学习知识解决问题的能力,即使基础差也不要紧,因为他们相信招你进来实践一下一个月左右也能上手,所以平时多看看书,书能够系统的介绍一种技术,不建议看网上的教学视频什么的,个人感觉太杂太泛了。

5. 想知道下怎么才算JS学的比较好了,因为一直也在弄JS总感觉还是比较传统的写法,像工程化这方面做得不好,现在的JS普遍都模块化,越来越像后端语言的面向对象了,还有各种打包工具的使用,那些新冒出来的框架React、Angular都是围绕JS这个核心不动摇,所以想很好的掌握他们JS还是得到一定境界才好吧,那么原生JS和ES6掌握程度如何界定?

答:掌握Vue、React等MVVM框架前首先要打好基础,原生JS和目前的ES6是一定要掌握的,这是前置条件,不然会学的很累。前端工程化主要是为了提高前端性能、开发效率和维护效率的产物,也是目前和未来的趋势,只要思想上跟上了就没有太大问题,也可以延伸到前端架构层面。

而至于原生JS和ES6掌握程度如何界定,我个人觉得能够利用原生JS独立开发项目,不依懒于jQuery等框架库的可以算掌握了,当然我这里只是做一个判断标准,实际项目中基本不会全部用原生的写。而能够在基于ES6的项目中使用ES6的语法、属性、方法等减少代码量,提高开发效率的也可以认为很好的掌握了ES6。除了上述标准还可以根据是否熟悉jQuery、Zepto等库或框架源码来对是否掌握原生JS进行一定程度的判断,也有人把《JavaScript高级程序设计》和《JavaScript权威指南》详细看3遍以上并吃透的看做掌握。

结语

正所谓“地基不打好,难以建高楼”,学习前端也是一样,基础不打好的话很容易遇到技术瓶颈,最后附上几个不错的前端学习网址: