当前位置: 首页 > 后端技术 > Node.js

2017前端现状--答题救不了前端新人

时间:2023-04-03 12:57:09 Node.js

众所周知,前端这几年发生了一场革命。前端也掀起了编程领域的学习热潮。至少在中国,从2013年下半年至今,搜索指数出现了爆发式增长。可以看看数据:百度指数,谷歌指数。一方面,日新月异的新知识不断冲击着前端,另一方面,形形色色的新人也在疯狂涌入前端领域。在这两个新流的冲击下,很多技术社区和问答网站开始流行起来,比如:SegmentFault。打开SegmentFault,首页的问答流,前端相关的话题(包括Node),别说十之九,就是一半。即使在老牌问答网站StackOverflow上,javascript相关的问答也是最多的。我是一个喜欢回答各种问题的人,一直在浏览SegmentFault。几个月来,我看到的最频繁的前端问题如下:Vue和React报错在哪里,请看(React相关的少很多,angular的少)。框架相关的一些UI和插件,比如ElementUI,怎么用什么组件,vue-router的问题在哪里。javascriptthis指向的问题,闭包的问题,??数组循环相关的问题等等。webpack,npm等工程相关的配置问题。那么自身存在哪些问题呢?90%的问题都可以通过文档找到。并且大部分不是文档偏边角和长度小,而是Vue的父子组件通信等文档描述过长等问题较多。而this指点、闭包等语法问题等都是基础知识,网上各种博客都讲的最多。如果你想了解它,你可以闭着眼睛搜索它。还有很多问题是重复的。只要上网搜索一下,就能找到答案。这些问题反映了哪些现象?诚然,前端很火,吸引了一批又一批的新人。前端小白们如火如荼地学习现在前端流行的新技术栈。但大多忽略了基础知识的学习。并且不知道提问的正确姿势。甚至有点太多的外展派对。为什么?我猜测原因如下:很多人学习前端并不是因为对前端感兴趣,而是觉得前端的门槛低,市场火爆,所以才去学习前端前端。失去了兴趣,就会失去耐心,失去了耐心,就不想看文档和书了。也有一些新人不是专业出身,所以根本不了解编程学习的过程,认为自己就是靠问。培训班也有锅。标榜自己可以在几周内精通前端,搞定大公司。在教学中,偏重于基础和工具,导致前端学习者急功近利,认为熟练操作Vue就是精通前端。前端新人对于新知识是非常渴望的,因为经过一段时间的培训班或者自学后,发现自己没有掌握的知识太多,在市场上没有竞争力。所以会显得比较着急。如果你恰好符合我上面说的,你要注意了,你误入歧途了。前端门槛低,但学习曲线不短。知道如何使用vue不足以找到一份好工作。曾经听一个同学说他的目标是掌握Vue然后写,我坚决不同意。可能很多新人也是这样想的,但是我知道一般人所说的精通,写的溜溜的,并不是真正的精通。其实就是背文档,熟悉语法糖,理解生命周期过程。学习vue很好,但真正学习它不是学习如何使用,而是学习它的设计理念、实现方法,深入阅读和理解源码。不幸的是,您可能根本不了解它的源代码。为什么?因为基础没有掌握。所以你的目标是偏离目标的。目标应该是首先掌握Javascript本身。最重要的是,你可以说你已经掌握了Vue。那么什么是正确的学习姿势呢?先打基础,html、css、js->es6,这些够一锅了。如何学习看书,看他们的参考文档,掌握基本用法。同时可以使用Vue框架做一些工程项目实践。如果遇到不懂的地方,不要深究,会浪费很多时间。当你把基础掌握到一定阶段,蓦然回首时,你会恍然大悟。掌握了基础知识后,就可以熟练使用工具,甚至可以快速掌握。之后如何深入研究,这里不再赘述。另外,我们在学习一个工具的时候,最基本的应该知道的是它是什么?比如学习Vue,首先会把它作为一个MVVM框架来介绍。如果你连MVVM都不会,你怎么学Vue?偶尔会看到一些问题:如何在vue中获取dom页面的数据。原来是用vue,然后用Jquery操作dom开发的。这是因为我不知道我在用什么。我知道前端知识太多了,比如node,足够大家吃饭了。难免会有解决不了的问题。但确实需要解决才能进行项目实践。问题是不可避免的。那么正确的提问姿势是怎样的呢?遇到错误时,首先想到的应该是查阅文档。很多时候我们遇到问题都是因为我们的姿势不对。如何使用它可能已经在文档中写得很清楚了。比如我想在vue2.x的子组件中修改父组件的传值,一修改就报错,怎么办?该怎么办?查文档要清楚。找不到文档怎么办?确实,有时候,有些问题并没有在文档中暴露出来,或者没有描述清楚。这时候我们应该先上网搜索一下问题。在哪里搜索?谷歌一下,项目本身的问题,虽然大家不喜欢百度,但是真的百度一下也没什么不好。如果没有其他人遇到过怎么办?如果是工具本身的问题,首先想到的应该是看源码。如果源码实在看不懂或者看不懂,那就提问吧。其他一些业务实现的问题,我自己确实实现不了,可以提问。但是提出问题不仅仅是为了解决当前的问题,更重要的是提高自己解决问题的能力。关于第五点,我单独说一下。有时我看到一个问题的最佳答案实际上并不是最佳答案。很多题主只是觉得自己可以直接帮他解决当前的问题。有些回答虽然没有直接给出代码,但是给出了很好的思路或者解释,或者给出了其他更好的设计方案,或者给出了一些相关的文档链接。本来,授人以鱼不如授人以渔,但有些人只想要现成的鱼。写在最后所以,在目睹了一大堆白痴问题后,我终于哭了,答题救不了前端新人。希望这篇文章可以帮助一些真正热爱前端的同学更好的学习前端。带学说不是带别人的代码,而是带别人的知识。