此文章针对我一个朋友而整理,鉴于我朋友有一些技术功底,所以有很多地方一笔带过,如果其它读者也喜欢这篇文章,且有不明之处时,可以私信留言给我,在下定然知无不言言无不尽。
总纲:
计算机技术领域就像武侠世界的江湖。每一个不同领域的程序员就是一个身怀武功的少侠,每个人技术的提升和修炼武功一样,需要循序渐进和勤加练习,容不得半点投机取巧。如果我们在学习技术时抱着一种修炼武功的心态,那么很多概念就可以很好的理解了,例如心法、招式等武学概念可以让我们能更清晰的了解武学(编程)的内在联系。
本秘籍主修“前端功力”,共有四篇:分为心法篇、招式篇,武器篇、必杀技篇。
心法:是指编程思想和算法,例如模拟面向对象等
招式:是指编程语言,例如js、c3、h5等
武器:是指封装好的库,例如jQuery、Bootstrap等
必杀技:是指框架,例如Angula.js等
一个人的功力高低,是由心法体悟、招式运用和武器驾驭这三种能力的综合数值来决定的。按照重要性的先后顺序来排列,分别是:心法>招式>武器。而必杀技通常比较特殊,因为它是一帮武学宗师把(心法+招式+武器)封装成一个类似于傻瓜相机一样的东西给小白们使用,如果你能参悟必杀技背后的奥义,那么就可以自创出属于自己的必杀技。这些概念的区别,请各位少侠一定要搞清楚!
心法篇:
心法可是重中之重的东西啊!好多人招式练习的炉火纯青,武器使用的超凡入圣,可是就是不怎么重视心法。虽然最后也能对外表现出一种功力很高的样子,但是在面对特殊的挑战时,却总是发现自己对功力的驾驭难以随心所欲,甚至有时候会出现事倍功半的情况,这便是因为心法跟不上的结果了。就像武侠世界里的描述一样,心法修炼的是内力,再强大的招式,再锋利的神兵,若是没有浑厚的内力支撑,总是难以发挥它们真正的力量。
心法最强大的地方在于它的通用性。事实上我们所掌握的心法可以在多个语言中发挥强大的威力,例如“面相对象”这门心法,java能用、php能用、c++能用、就连js都能模拟着用,由此可见心法的重要性了。可是这个时候有些少侠就会问了,ajax技术不怎么通用啊,貌似只有前端用的多一些啊,你是不是说错了。在这里我就要告诉大家,ajax确实是属于心法范畴的,因为它的实现并不拘泥于某一门语言,现在是依赖于js没错,如果未来出现一门ts语言,又或者是hs语言,在特定的情况下ajax说不准也能使用,因为它是一种异步刷新的思维,并不是一个很僵化的产物。
心法怎么提高?坦白说我不知道,除了去阅读生涩难懂的心法宝典之外,我使用的方式是去模仿大神们的作品,在一遍又一遍的模仿体悟中慢慢的摸到一些感觉,然后沉淀了很久之后某一刻忽然顿悟,然后很多东西就慢慢的融会贯通了。高级的心法无法言传,只能靠不断的模仿和体悟,懂了就是懂了,不懂就是不懂,这种事情没办法自欺也骗不了别人。所以如果其它少侠若是有好办法了,希望可以分享一下!
招式篇:
招式是什么?我觉得招式就是用来表达心法的,心法是无形无质的,如果心法不能对物理世界产生作用力,那就像一个人掌握了特别牛的心法,但是却打不出一点伤害,然后被一头猪拱了一下就挂掉了,这个时候你说招式重要不重要。
在我们的世界招式有很多种,前端常见的招式有HTML、CSS、JavaScript这三种。每一种招式又自成体系,三种招式组合在一起又千变万化,真可谓是让人眼花缭乱,如果修炼到大圆满境界再配合心法使用出去,即使不依靠神兵利器也可以横着走天下了,所以请大家一定要重视这三种招式的练习。
招式怎么提高?如果喜欢武侠的朋友可能会知道了,武学招式的威力要想达至化境,除了不停的练没别的办法了。它不像心法一样不能言传,它是有规规矩矩的套路在里头的,除了练还是练,在这里我推荐大家去网络上找一些js500实例练习什么的,然后开始抄吧。一天抄50个,10天就抄过来一遍了,一遍抄完了之后再开始抄第二遍,如果近期工作学习比较忙,那就先暂停暂停,等什么时候有空了再接着抄。而且由于js是招式,所以也就有了熟练度这么一说,我们在评估自己是不是修炼到大圆满境界时只要参考一个标准就行了:那就是能不能在要使用某些招式的时候随手的就用出来,如果需要想半天还用不出来,就说明还修炼的不圆满,那么就需要抽空多多练习了。js修炼到大圆满境界的唯一标准就是:脑子里相当于背下来了一整本《js使用手册》,如果此时再配合高级心法(例如:大圆满境界的面向对象)来使用js的招式,那么威力在同领域的对手中堪称无敌,如果一个人同时将前端心法、招式、武器全部修炼到大圆满境界,我觉得他的技术水平至少可以达到国内排名前十的高度吧,那个时候真的算是走向人生巅峰了。
武器篇:
高级的武器被人称之为神兵利器,而jQuery就是其中很锋利的那一把。武器与心法和招式不同,武者不能没有心法和招式,但是武器却并不是非得要用。可是如果有一把很锋利的武器出现在面前,它不但不会托人后腿,还能让武者功力大增,并且战无不胜,那么你会不会用它呢?
很多人以为武器既然是武器,那么只要会用就好了,不必去探究它内部的原理。可是我却认为恰恰相反,好的神兵利器是有灵魂的,通过长时间的感悟知道它的特性之后,才能配合心法和招式发挥出最大的威力。那么怎么样才能了解一件武器独有的特性呢?答案是除了多使用和接触就没有别的办法了,就像练习招式那样,同样的找到jQuery500实例练习,然后不停的抄写,熟悉它的全部特性,最后在适当的时候发挥它的威力。只要如此的去做,那么要把神兵利器玩成超凡入圣那个级别,就只剩时间问题了。
补充:有些少侠信仰jQuery,认为它应该和js一样归纳为招式的范畴里,不应该被当做可有可无的武器这一类。但是由于在下更多的只是熟悉js,对js的强大深有感触,反观jQuery却对有些js的特性并不具备,所以小编日常都是用原生js来完成大量工作的。这种事情仁者见仁,所以在此时我将jQuery划分为武器范畴,也仅仅是做个举例,以便把一些概念理顺,让大家的修炼之路走的更清晰一些。还请各种信仰不同哲学的小伙伴们理解万岁。
必杀技篇:
我将框架全部归类为武者所掌握的必杀技。首先,它需要较高的使用条件,新手很难直接就上手,可是一旦上手了之后它对个人生产力的贡献是肉眼可见的。甚至于很多框架的原理你都不必搞懂,仅仅只是会用就能显著提高自己的生产力。有时候我就在想要是把框架每一个流程的原理都搞懂,那岂不是可以创造自己的框架了。
小编自己对框架的理解也还停留在初级阶段,所以这一篇暂时留空,等以后有所明悟之后再行补上,还请见谅。
总结:
心法得悟,多模仿
招式得练,多抄写
武器多用,多抄写
框架会用,多参悟
本文章为Tay原创首发,如有转载请标明出处!