WEB前端经验之谈:时间一年半、或沉淀、或从零开始
距上次写博客还是有点久了,中间有个写的念头,不过由于不知道写什么也就放弃了。
14年4月份第一份前端工作到现在也有一年半之久了,自己对前端的热爱相对于一年前是有过之而无不及。一年半的时间里自己也成长了少,对前端的看法和理解也在不断的变化,中间抛弃了很多东西,也学了很多东西,一切也都是为了未来做前端更轻松吧。
前段时间有点浮躁了,不知道干什么,学新的东西也学不进去了,感觉整个人都失去了目标一样,这种感觉在之前也有过,就是我做第一份工作的时候, 当时根本不知道自己当时做的事情对以后有什么帮助,这可能是大部分刚进入IT行业的新人来说都有这种感觉吧。话说回来,才入IT行业有这种感觉正常,但是 转入前端以来我一直有自己的目标,自己也感觉成长的比较快,不应该有这种不知道做什么的感觉,但是这种感觉的确存在,不知道做什么,什么也都不想做。不过 后来公司的任务重起来了,加了几天班,浮躁的心情也就没怎么去关心了,可能是转移了目标吧。
这段时间除了做公司的任务,空余的时候也会看看博客、看看前端的基础知识,相对与后端来说,前端的乐趣性比后端更高,但是想深入却需要自己不断的积累才行。我进入前端这个行业可以说完全是自己摸索入门的,贴一段自己以前的html代码吧、
<div class="index-banner"> <button class="index-banner-btn-left"></button> <button class="index-banner-btn-right"></button> <div class="index-banner-image"> <img src="#" /> <img src="#" /> <img src="#" /> <img src="#" /> </div> </div>
这段html代码是一个banner里面的,转前端到的第一家公司写出来的代码,现在回想一下真的写得太烂了,从一开始学前端到现在,最大的改变就是现在学会了看别人的,以前只知道自己写,自己实现功能就ok了,我想基本上写代码最开始的时候就两种人:
1.什么都自己做,做出来的东西基本上自己看懂,别人看半天就一个半懂的造轮子新手;
2.什么都先去网上找,功能实现其它什么的无所谓,上司要修改点细节上的功能各种头痛的找轮子新手。
我属于前者,而且才开始做前端人新人基本上就这两种(有老手用心带的人基本除外吧)。
其实无论做前端你才开始怎么样,只要过了半年时间你就应该在代码美化、html结构等一些方面都会有一定提升,这是我自己经历过的,但是这点提 升却不足以代表你在前端的能力提升,无论是造轮子还是找轮子,在前端这个行业里面这些都只是开头,前端的东西实在是太多太多了,你要做一个什么效果,去网 上找找,总能找到自己需要的。但是,网上找的难免会有一些小问题,功能达到要求了一些效果需要修改、还需要添加一个小小的功能等,这些是在工作中难以避免 的事情,所以无论你造轮子还是找轮子,最终你要提升你自己的能力,至少别人写的代码你能看懂,而且要能去修改。轮子的问题我也就不多说了,其实无论是找轮 子还是造轮子,最后的目的就是完成我们所需要的功能,方法有很多,但是更多的方法却是需要自己在职场上不断积累。
我现在这家公司是我上班的第4家公司,做的大项目不是很多,但是平时做的活动专题、节日专题等东西确实不少,不过前端不止我一个,所有我也有闲 下来的时候,我现在在公司做的也不只是纯前端的东西,偶尔还是会用node写一些后台的东西,现在我的github上面也放了几个项目上去。其实我们做前 端所接触的东西有很多,但是你要吃饭最基础的是html、css、js和ps,这4个是做前端最基础的,其它的你才开始做可以都不会,但是这4个如果你也 不会我想你还没有做好做前端这行的准备。html、css、js是一个网站呈现视图和交互最基本的,ps是制作页面所需要的。但是在前端这个行业这4个往 往不够,现在找个后台程序员都有不少人会这4个技能,所以,如果前端仅仅只会这4个技能又如何能体现出前端开发人员的价值呢?
我认识不少做后端的朋友,他们或多或少都会做页面,还是一些做设计的朋友都会,但是他们存在一些问题,html结构杂乱、页面上和标签上到处都 是css、js代码等,当然,不排除有些还是在前端做的不错的其它职位的人。其实前面的都是一个美观和易修改性问题,还有个最重要的问题就是我前面提到的 轮子问题:javascript。
很多现在有很多后端人员转到前端来,有一个严重问题就是后端的编程语言灵活性没有js好,js写代码的时候也没有后端那样严谨,举个例子:
C#:
<br> public object point()<br> {<br> int x = 100, y = 100;<br> return new<br> {<br> x = x,<br> y = y<br> };<br> }
JS:
<br>function point() {<br> var x = 100, y = 100;<br> return {<br> x: x,<br> y: y<br> };<br>}
上面两段代码一个是C#的,一个是JS的,都是相同的功能,返回一个坐标对象,各种程序语言的定义都差不多,但是js就太过于简单了,C#里 面很多东西在定版出来时就限制死了,比如C#定义一个函数需要 ‘访问类型 返回类型 函数名’,而js只需要一个‘function 函数名’,所以后端才转入前端的人在js上就会碰壁一段时间,这个其实并不奇怪,当你习惯一种方式,然而外力让你改变的时候你内心就会不自觉拒绝。
前端入门真的很简单,但是想要深入前端,你却要花费很多时间去了解前端的各种东西,前端有很多现成的东西,但是这些东西用多了自己也会变懒,特 别是对才入门的人来说这就是一个毒瘤。现在网上现成的东西很多都可以拿来直接用,很多新人也是这样,一个项目为了赶进度什么的,很多前端代码都是来源于网 络上,各种插件、各种框架等等,最终项目出来了,想要修改却不知道怎么下手,因为东西实在太多了,你根本不知道这个功能修改了其它地方会不会莫名其妙的出 问题。所以做前端要花时间去了解别人发布出来代码的逻辑,你至少要知道里面大体是干什么也可以,新手可以多看看别人的代码,找到自己写代码的风格,不断熟 悉。
写到这里感觉废话了好大一篇文字,做前端一年半,可能已经到了一个瓶颈期了吧,才入前端的时候找工作唯一的想法就是学不学得到东西,学得到多少 东西,有时候看别人的博客提到过瓶颈期,其实当时没什么感觉,但是现在看来,很多东西都是不想程序那样可以预判的。这段时间想了很多,其实人就是这样,无 聊的时候就会乱想,想过前端这行可以做多久,想过换行,也想过就这样混经验,不过这些都只是想想而已。之前在一篇文章看到过做事从零开始,其实我在想我做 前端为何不可从零开始呢,想想这一年半走来,一直在最求更好的技术,更好的框架,却忘了一个最终要的东西,那就是基础。我想很多做前端的都没有想过怎么去 从零开始吧,其实从零开始也很简单,把上课老师讲过的东西拿出来看看,把自己以前做过的东西拿出来写写,就像自己才开始学写代码那样从新去学,当你第二次 回过头看自己以前做的东西,也是在对自己一种审视,也能看见自己的成长。