真正学好前端,其实并不是只会前端

之前看过一个架构师写的文章,写的很好,从中把它摘取下来给大家分享分享,原话是这样说的:


这里的前端指的是移动换联网领域中面对用户体验度的那个领域。看到很多所谓的过来人大谈阔论的描述前端如何容易或者难,如何如何的火,如何如何的有前途之类的评价,然后得出秒死有道理的学习前端的一堆学习方法。最后让许多初学者激情澎拜,酷似怀抱什么秘籍一样。。其实很多实在犯一叶障目不见泰山的错。

整天沉迷于前端的知识海洋最终深感速度跟不上,心有余而力不足,甚至无力自拔。就好像把你放入一个巨大的虚数空间的黑洞中,任凭你怎么乱打乱抓,用尽所有力气也难以看到希望和轻松何在,心里一直不会踏实起来。

其实这就是根本原因:真正要学好前端,并不是只会前端。真正的精通前端应该是功力深厚,打通任督二脉,从而荣前端顺带学会。这种功力深厚是真正的编程功底,是要牵涉到从硬件开始、汇编、C语言、c++、Linux、到数据结构和算法、甚至高等数学、线性代数、概率论这些。

并不是动不动就被几个枯燥而繁琐的算法去炫耀而沾沾自喜就认为是精通了编程的本质。没有学过硬件(比如花PCB电路图,数字电子,模拟电子,单片机,ARM),没学过汇编,没深入Linux操作系统的编译原理,而大谈阔论的讨论数据结构和算法是没有任何意义的(我以前就是做软硬件一体化的智能系统,从画PCB板开始,到嵌入式Linux内核,写驱动。。)

一个高等数学很差、线性代数摸风、概率论不知所云就去深入数据结构也没什么意义。你顶多就是懂得数据结构的形,而不懂数据结构的神。这也就是想要做编程领域的大家必须要精通数据结构和算法,而精通数据结构的短发则必须要数学功底好的原因。学编程其实就是在修行,修身养性,需要悟道。。。

这样看来,前端只是一个后来根据应用需求而变得很火的一个方向,这种突如其来的需求爆发就像泡沫经济一样,随时都可能爆破。所以如果把自己的命压在这样一个定时炸弹上,怎能安心?难道真的要等到你50岁的时候被迫下岗才重新考虑思考自己的职业选择吗?

现在来看看前端的核心是什么?

前端的核心其实就是以后能修改DOM的这个东西,而JS承载了这个角色,因此JS是核心。具体说的是JS操作DOM,附带了操作BOM。然后为了更友好的使用,更少的去处理那些繁琐的兼容性问题(这个本来不应该有,只是更大浏览器厂商为了抢占市场而雄踞一方,就像秦始皇在同一六国之前的那种情况,所以这不是一件好事,应该去统一,才能真正的为用户体验所服务。 ),才衍生出很多很多JS库,如jQuery,angular等等。但是只要还是JS的范畴,就是在做那些事情,就是在编程领域,虽然他们各自的库可以长得千奇百怪,但本质并没有改变。

由此得出,你并不需要把前端所有的库都学会,也不需要只懂某个库本身的样子就算完事,而要慢慢探索它的发展深渊,是一种“修身养性”的心态去探索。
比如:jQuery的使用,谁都知道这个基本操作:

$(function(){
$("#id").click(function(){
//逻辑代码
//return false;
});
});

但是有个人在思考为什么能实现这个?也许他们会觉得没有意义,只要会使用就行了,那就下来就是这样:如果其他的使用不能理解,也就是顺理成章的事情了,也不要抱怨了。不懂就只能背诵,自然感到苦闷、无奈、烦躁、没兴趣就成了司空见惯的事情了。不去思考它是怎么来的,就难以认识到编程是在刻画和反映世界,这其实就是个恶性循环,最后导致职业生涯缩短或者自我感觉前途渺茫。

现在回到主题:真正学好前端,让前端学的轻松,其实并不是只会前端;当你看到别人写的代码库,使用起来很不错,但是有没有思考过如果让你写,会怎样呢?能写出那些库是因为只会前端吗?显然不是,里面至少用到了编程思想、数据结构和算法、用到怎么更有效的分配内存和任务分配队列栈这些合理使用等等。这些就不只是前端的东西了,而是变成领域内都会见到的东西。

所以一个真正懂前端的人,有前途的人,不是一个只拘泥于前端本身,而是要用更多的时间去看非前端的东西,前端的内容只是那些深入知识的应用罢了。顺带学习而已。就像乾坤大挪移是在九阳神功练成之后顺带学习的,从而学得更快,更深入,更应用自如。

这就是为什么学汇编的人更容易学C语言,学C语言的人更懂得c++的韵味,学c++的人更轻松学Java和PHP。同理,学PHP的人更能懂得前端。因为都是顺带···上述编程语言我读亲身体验过,深刻感悟到其中的缘由。当然这是条主线,你可以找借口说时间少,只是客观就是客观,你少这个,它就给你砍那个,就是这个道理。

这样看来,面对编程领域,其实你的时间已经很少,你根本无心去和谁比这个,比那样,那些都已经没有什么意义了,而有意义的是你找到有内功的得道高僧一起去把酒言欢,进一步提升你的编程修养。。。

峰回路转,导致学前端的人只学前端原因是项目变得越来越大,很多人认为不能也不应该一个人去“搞定”而引起的。其实这是个误区,“搞定”一个完整的项目,并不是让你一个人去开发所有。诸葛亮能“搞定”每次战斗,但是他亲自去杀敌了吗?

另外,公司的发展也加速催化了你的误区,公司里为了赶进度,要求每个人首先都关注好自己门前的雪,而忽略了他人瓦上的霜。导致很多开发者认为只要做好自己本分的是就行,哪怕“幸灾乐祸”的看别人在忙碌也应该。你赢了一个,却输了一辈子。

你牺牲的是未来,未来的巨大潜能的发挥。这会反噬你的,你以后就未必能偶做一个合格的好员工了(即使你一开始是个合格的好员工),因为你适应不了未来飞速发展的需求了,你没有了快速的学习力。。。。

这是公司发展和个人发展脚步不一致而导致的,值得每个编程业内认识的思索。。。。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值