IT技术博客大学习 共学习 共进步

聊聊前端

前端小武 2016-04-21 13:31:32 浏览 2,324 次

   此博文的所有观点都是我自己的看法,可能很不对~

   最近(近半年)发现很多人跟我说想学前端、前端吃香不、前端挣钱不等之类的问题,在这个夜黑风高的夜晚我来说说前端吧~

如何理解前端的?

   首先你是如何知道前端这个职位的?是从满大街的广告说:学习前端包交包会包分配,工资不达*k退学费么?其实本身前端的门槛就比较低,只要会把设计稿制作成网页就是前端,是的我是这样认为的。但我想只会这样的几乎找不到工作,请恕我直言~

   其实在现在整个前端行业里,只会上面说的“切图”是不吃香的。

是否能学好前端?

  • 前端是否好学?

  • 我能学会前端吗?

  • 我适合学前端吗?

  • js好学吗?

  • js应该如何学?

  • ...

   等这样的问题我已经不知如何回答。。。

   其实前端好不好学跟自己有关,首先要看自己本身对IT这个行业的理解程度,比如一个网管和一个装修工学前端完全是两个概念。再者跟你的兴趣有关,你是否喜欢折腾电脑的东西,是否对电脑感兴趣呢?如果你只是一股子认为前端是个好学的行业,想着学半年就挣“大钱”,我劝你趁早放弃。总结可能以下几点对学习前端的影响较大:

  1. 对电脑的认识程度 - 比如觉用的一些工具、电脑常用操作

  2. 对前端行业是否热爱

  3. 坚持

  4. 英语 - 不是硬性要求,但这使你如鱼得水

   本身前端的前期学习过程(可能一年甚至更长)是很漫长的,不要以为在培训班培训半年甚至三个月出来就能走上发财之路,而往往现实中有很多找不到工作的。。。

   并且不要以为毕业找到工作了就是“成功”,其实远远不够,前端行业目前正处理一个高速的发展阶段,如果你不学习、接受新的技能,可能就会被下一拨人才所代替,而这个学习、接受的过程往往是自己源源不断的写代码、改bug才能完成。

   其实学习就是多看、多写、多实践,总希望别人给你答案的想法几乎不要有,否则可能很惨很惨。比如想学习webpack,可以找相关的教程、文章看,但一定要在看的过程去试着写,放心,即使是天才她也不是一步就ok的,只有当自己不断的尝试->出错->解决这个过程才能学到更多,并且往往在这个过程学到很多技巧,而这些技巧不是别人能交来的~当然我个人认为自学的前提是你得入门,如果你连基本的学习方法都不知道,只能你将事倍功半而浪费很多时间。其实培训班还是不错的,起码可以让你入门。至于之后的成就如何就靠你自己了~其实就好比上学,同样的老师有的学习好,有的学习不好一样。真所谓师傅领进门,修行靠个人。

   如果你有一股倔脾气,再加上你一如既往的学习精神,说真的,你想学不会前端都难。但要记得,最怕的就是比你聪明的人还比你努力~

是否能找到高薪的工作

   发现很多人认为:前端是个好工作,学半年毕业就能找到工作,找到工作就是15K。说真的,不知道什么使整个前端的市场造成大家这样的看法。可能跟培训班的宣传号有关,当然也可能跟创业型公司的招聘简章有关。

   其实这个说法成立,但并不是所有人都能达到的,因为工作首先你得完成任务。然而完成任务的前提是你得具备完成任务的技能。如果你本身的技能只是在学校里泡泡妹子,玩玩刀塔混出来的,那么毕业后的场景可能使你无法接受。然而那么本身就有一定底子,再加上学习过程不断的实践、提问、回答问题等折腾的人是很有可能达到期望值的。

   并且我发现很多朋友跟我聊天透漏个信息:发现现在面试者都好吊,啥都不会居然要18K。现在的局面就是公司不想出太多钱但想招个全拿的。而面试的想多要点钱,但又可能不是全拿。导致很多人说找不到工作,而又很多公司说招不到人。。。醉醉的。。。

   其实找没找到工作是一回事,找工作跟运气有很大关系,比如:

运气

   其实这个要占很大一部分原因,如果你遇到个好说话的领导,那么可能比较容易过,如果你遇到个苛刻的,然而你简历上又有什么精通jQuery之类的词汇,我想他很乐意考考你jQuery事件系统、缓存系统等核心的实现方式,那么就祝你好运了~

   还有就是问的问题是否是你擅长的呢?是否正好是你的短板。当然也看你面试的啥等级,啥公司

性别女,长相好

   这个没治,感觉大部分公司都会受这个影响。

技术

   这个没的说,靠自己

口才、沟通

   这个我现在感觉很重要,如果你空有一身本事而不知如何表现出来那么可能面试官以为你不会,所有可以多和人沟通,多学习沟通的技巧

   然而是否能达到高薪这个跟你技术、对方是否非常渴望你的加入、沟通能力、职位的¥幅度有关吧

我的自学过程

   我也是经过一个培训班,学的是Dreamweaver,当时的教学水平比较落后,学的是表格,我们不知道什么是代码,但我还是感谢我的“母校”,因为这使我入门,才有接下来的路。

自己动手写插件

   刚开始做页面的时候我想实现啥效果,就会找一些网上的现成代码,但我发现不能满足我的需求,于是我尝试着自己写。但我发现很难,我下载了个jQuery api手册,一行行按着网上的代码抄,而在这个过程我发现了一些技巧,并且发现一些可能在使用中不能认识的处理方式,于是我就开始了自己写的1.0->2.0->3.0,当时写的就是一些常用的比如幻灯片、标签切换、轮播图等,写插件时有啥不会就查api

   说真的,在这个时候我可能连document都不知道是什么,但我不管那些,只要在工作中用到的,我都会自己写,遇到不会的就搜索相关的,然后抄,抄完了自己就重构,重构的一遍又一遍。最早我的借鉴对象就是jd.com

系统的认识js

   当我能够自己熟练的写个jQuery插件后我发现,很多js的方法我并不认识,并且我只会用jQuery的方法,但不知道真正的处理是如何进行的,于是我买书,想从头学js,然后买了相关的书开始学,但项目比较忙,我都是边做项目边学习,整体过程持续了很长时间,当然现在我还认为我在学习js中。

   比如jQueryEvent, data, Callback, ajax, Deferred, Dom等我都看下源码,并在有时间条件下写demo沉淀下来,因为我发现只看代码记的并不深,只有自己多写demo运行出效果才能更加理解该代码的意义。

   然后我在业余的时候就开始各种造轮子,很多人说不要造轮子,但我感觉这样可以使我更加记忆深刻,我不在意别人在意的。

试着做整体网站的架构

   在起初的时候我们前端是很简单的静态页,但我尝试着像大公司一样的处理,比如模块化、合并请求数、打包部署等策略,虽说给团队带来了很多坑,但不得不说这对我的成长很大。

   感觉这个就是经验,总之多去想、去遇到问题才能解决问题,比如分析当前环境的依赖、项目的阶段、开发人员的水平等来定出整个架构的方式,是用fis编译呢还是用grunt\webpack编译,是用es6开发还是用reuqirejs处理呢?虽说这些有的你不会,但只有去做了才能会,反正就是在条件允许的情况下多折腾

用户体验

   我现在越来越重视用户体验,因为我感觉这也是一个亮点,虽说这块对技术的要求不是很多,但这块使你做的东西更加“完美”

其他的学习

   如果只学前端,你拿什么去跟别人竞争?可以研究下:

  • git/svn

  • vim

  • 正则

  • shell

  • nginx

  • nodejs

  • vps上的折腾

  • 一些后端语言可以涉及下,比如php

  • 数据库、数据缓存可以学习下,比如MongoDBmysqlredis

  • 一些常用小工具的开发,可能更多的表现在工作中


   当然我并没有说培训班不好,如果连门都没入学习更吃力,只是告诉大家要摆正心态,虚心学习,有问题先自己试图解决。

建议继续学习

  1. 阿里巴巴离职DBA 35岁总结的职业生涯 (阅读 19,485)
  2. 开发与研发 (阅读 11,823)
  3. 如何成为一名黑客 (阅读 10,666)
  4. 程序算法与人生选择 (阅读 9,046)
  5. 给想当程序员的大二学生的建议 (阅读 8,823)
  6. 学你妹的计算机! (阅读 8,045)
  7. 如何成为一名优秀的web前端工程师(前端攻城师)? (阅读 7,028)
  8. 给实习生的建议 (阅读 6,963)
  9. 降级论 (阅读 6,605)
  10. 技术人的发展路线总结 (阅读 6,565)