谈谈我理解的前端:
这是我个人对前端的一些理解及看法,可能理解得不太到位,前端主要包括三门技术html、css及javascript(下称js),其中以js为主为难。js很早就有了,开始的时候,还伴随着vbscript,死敌有applet(java的一种小程序),那时候,玩js的人会被其它编程的人看得很轻,觉得那不过是一种不完善的脚本语言,所以开始的时候用的并不多,特效什么的一般都applet来完成。
1998年,js的旁肢ajax延生,开始几年知道的人还不多,过了几年后,人们发现ajax的无刷新交互效果很不错,当时还有相当一部份人觉得ajax是一门新的技术,做一网站,用ajax的和不用ajax的是截然的两种价位。用ajax,就必须涉及到js,这就引起了学js的热潮,个人觉得国内应该比较晚一点,估摸是在2004、2005年左右才掀起的热潮,到2008年,一个新的时尚职位名诞生:web前端!
下面说说我对学js的一点看法:
现在js框架很多,比如jquery、extjs等等,应该有尽有。但我觉得,学技术,最好从底层学起。
一是底层技术学好了,扩展的技术自然容易学到手。比如,你js很好,学jquery自然快,甚至不用学,看手册就大概明其理,用起来也不在话下。
二是,如先学框架,因为框架将底层的东西都封装好了,用起来会觉得好用,也不怎么用动脑子去理解什么原理,拿来就用,容易形成一种依赖性,到后面,发明自己有些东西不太能理解,又想看底层的东西,觉得自己忽然就很弱,心情波动太多,就不易再专心学底层的东西了,可能也学不进去了。
还有,学框架的东西,也就是学用人家设计好的方法,比如jquery的bind()方法,开始的版本都是这个,用来绑定事件,本人没深入了解过从哪个版本开始,建议用新的方法on()——还其它方法类似这改动,说这个是想说明,人家写的方法,你是永远学不完的,人家一改版一改动,你就得从头再学了,也就是被人家牵着走,还是底层的东西,基本上千百年都不会变。还有,jquery的fn(原型)扩展看上去是很好用,但是,fn太多,jquery就很臃肿,每个html元素也同样变得臃肿,效率不言而预了。
再有,当你用了jquery多年后,IE7已经灭绝了,到时就可以用Element对象扩展了,新的框架可能就占先机取代了jquery,就算没取代,那jquery就得重整,不整跟不上时代的脚步,那很多方法可能就得改了,改了又得重学了(好不容易用熟练了),等这个用熟练了,可能那时的浏览器都支持HTMLElement扩展了,又更精确了,jquery又。。。
所以,我还是建议学底层得好,当然,最后的选择是你自己决定的。
最后,html5也如火如荼了,其中很多东西是跟后台相关的,比如localStorage啊,WebSocket,还有其它的很多(包括非html5的ajax),所以,学一门后台技术,是前端走得更好的垫脚石。
既然提到html5了,大伙就很容易想到绘图canavs了,在些给大伙讲几个可能大家有点模糊的方法(以下方法是用本人自己的口头语阐述,可能跟书本说的不太一样,只是方便大家理解,所以,看了不太适应的同学,不要用语言来打击我)。
前端,是一门说难不难,说容易也不容易的技术。就是多看多练多动脑!