>  기사  >  웹 프론트엔드  >  web前端菜鸟,好迷茫?

web前端菜鸟,好迷茫?

WBOY
WBOY원래의
2016-06-07 08:41:381565검색

先说问题吧:感觉前端涉及到的东西太多了,自己也很浮躁,看了挺多书,可是代码缺敲得却不多。技术菜,又什么都想学,比如现在纠结要不要先学scss或者php或者angularjs,backbone等框架,还是深入学习html5+css3?

然后看了一些招聘要求发现又有一些坑要填,经常处于焦躁状态,感觉心好累,然后心一累,又知乎上看各种打鸡血的东西,这鸡血一打多,头脑就热起来了,就想毕业去北京闯一闯了,但又好担心去了找不到工作,想问下前辈们,要找到3000以上的前端工作的话,我得在哪方面多准备?

———————————————我是分割线1———————————————
这里交代下背景:二本大四地信,感觉本专业就业不适合自己,又之前学过c语言,发现还挺有趣,然后上学期校招时发现程序员工资待遇不错,就萌发了转行的意向,只有简单的c语言基础,不知道从何入手,恰巧宣讲会时听一主管吹牛说,web前端简单,前端简单,简单,东西好弄,学一样少一样。从此便入坑前端了。
———————————————我是分割线2————————————————
再交代下水平:现在自学3个半月了,w3cshcool上刷了两遍html标签和css属性,fireworks切过几张psd图,要兼容ie6,各种坑。js的话,刷了两遍红皮书和一遍犀牛书(部分章节如nodejs跳过,再部分章节如xml,一些html5 api粗略过),了解一点对象,原型。

jquery的话,锋利的jquery没仔细看,感觉api都是实用性的,直接做了下后面的实例,和实现上面切的psd图的效果。感觉会用,但是不查手册,经常忘记属性名,方法的参数等。
———————————————我是分割线3————————————————
网上还找了一些据说看了可以带我装逼带我飞的书:高性能js,编写可维护的js(感觉这个作者碉堡了),蝴蝶书(评价很高,但是可能看的比较靠后,感觉内容基本在前面的书里都有提及),高性能网站建设指南(感觉也很厉害),ppk谈js(没有什么感觉,半天多就翻完了),html5程序设计(粗略过了一遍,还没有细看)

回复内容:

是的,学前端的基本都会遇到你这样的问题,要学的东西很多很多,一下子会迷茫其中,不知道该学什么技术,或者说优先去学什么技术。

题主看招聘进行结果导向地学习我是非常认同的,当初我也是看着网易前端的 JD 一条一条去 pass 掉的。至于你提到的 Angular、Backbone、PHP 以及 SCSS,我认为 PHP 是最迫切去学的,因为作为一个靠谱的前端,不能对后端完全不懂,否则难以在实际的工作中与后端进行协作,或者说就算自己想写一个小项目,没有后端技术的支持也是有点简陋的。

然后是 SCSS 或者类似的 Less 这样的技术,其实并不需要专门去学习,只需要在写 CSS 的时候对照着文档去做,或者将自己写过的项目中的 CSS 用 SCSS/Less 对照着文档去改写一下,实际上就差不多可以掌握了。

至于 Angular 或 Backbone 框架,我觉得这些可以先不用急着学,倒是建议在完成 PHP 入门级的学习以及 SCSS/Less 的尝试后,可以去接触 Node.js。因为 Node.js 无论是其 npm 包管理工具的生态环境,还是 Javacript 异步编程思想,都对你的前端技术有极大的帮助。尤其是越来越多的公司提出前后端分离的思想,更是让 Node.js 的地位不断地提高。

同时,建议你可以学习一下 Gulp ,这是一个自动化的工具,非常多公司都会用,而且比 Grunt 更易入手,代码简洁优雅。这个大概花个十来分钟就可以上手了,非常酷。

至于你提到的关于实习的问题,按照你问题描述中描述的水平,其实已经可以去实习了,可能一开始主要是做页面,但你可以从实际的工程开发中吸取经验,同时利用下班或周末假期的时间,去继续不断学习,不断提高自己的技术水平,从而让自己的待遇越来越高。3000 块钱一个月的工资在北京互联网中是比较低的,基本你随便去一家比较靠谱的公司都不会开这么低的价钱。

附我们的招聘信息:加入我们 - 矩道优达 情况差不多. 我也是二本大四狗.
上年12月份幸运的找了一份前端实习生,在一家创业公司工作.在公司目前只是负责把boss弄的设计图还原成网页.然后整合到wordpress.写写jquery 做做效果.

好吧 说说我找到工作之前的学习吧.
一年前 我也只是个什么都不懂得计算机系的学生.对.各种挂科逃课.导致什么都没学到.然后发现这样下去 我实习也就只能去找服务生这类的工作了.这完全不是我想要的人生啊.!!
然后开始学习各种前端知识.学html 和css 我没有题主那么认真把它全部撸了两 三遍.我觉得更多的是实践.把常用的标签记熟点,不懂就去查W3shool. 也就看完了1遍.Jquery是通过各种效果Demo去学的.
我觉得无论学习什么类型的编程语言.实践是最重要的.
所以我就跑去V2EX那里发帖,求了各种项目去做.说是打杂免费劳工.V2上的人都很热心的.有V友给了一个小项目给我做.也就只是静态页面.给了我一张PSD 让我自己切图,把页面给实现了.
第一次我做完给他,被批了一脸.这个margin不对.img尺寸不对.字体大小不一致等等各种细节上的问题. 在做之前,我一直以为静态页面没什么难度.的确做一个大致的静态页面很简单.但是细节上很多问题就体现出非常多的问题.他说一句话:"这页面就是一个没用的烂码."这是我记得最清楚的.因为别人还要花比你更多的时间去更改完善维护你的代码
我自以为是的成熟技术,其实在别人眼里一文不值.
这之后我觉得自己对前端技术根本不了解.就连最简单html和css都写的那么烂.
之后我就不去学习一些很高深的技术.一步步把自己的基础打好.不过多简单的页面.我都会把代码书写规范.html标签语义化.css类名直接明了等等.
连静态页面都写不好.如何与别人一起开发一些大型项目.

说说题主的情况吧.
编程类的书很多时候都只是需要过一遍. 然后它就会变成一本工具书.不懂就查.
最最重要还是实践.没有实践,无论看多少遍你都记不住的.
建议题主可以先去小公司或创业公司应聘.这类的公司小项目会比较多.很利于像我们这种前端小白去学习,获取经验.
还有一些小小的建议.学好点英语,多看看墙外的前端世界.(不要像我现在要恶补英语T_T).
第一次答那么长啊.多多包含.
加油吧.路还很长.我也需要慢慢走.题主你也一样,别急,很多成功都是积累而成的 计算机行业很多都符合82定律,也就是20%的东西的使用频率占到80%,所以很适合囫囵吞枣,我们的重点就是把这20%学起来,而首先要做的就是把这20%的东西找出来。
在我看来前端这20%的东西大概就是常用的html标签,css的盒子模型,基本的原生js,以及熟练使用jquery,ajax,常见浏览器的兼容。
拿下这些东西意义非凡,一方面证明你适合做前端这份工作,另一方面这些技能能让你找到一份工作。让你能够从容地去学习剩下的80%。
总之就是专心对付最重要的东西,那些什么less、sass、angular这类的东西,当你把我之前说的基础打好之后,学习起来畅通无阻,随学随用。
最后我觉得最难的就是实践,只有实践才能学到真正的技术,新人很难参与一些有价值有意义的项目,没有这些项目又很难成长,所以自己有项目可参与应该珍惜,没项目应该多造一些有价值的轮子。

感谢不点赞的都是耍流氓!!!!
        耍流氓!!!
        耍流氓!!!

一夜之间赞已接近最高票,受宠若惊,决定一不做二不休,把最高赞给夺过来。
评论里 @吴林朋友说写个提纲或者专栏,专栏就搞不起了,那就简单列个提纲,以期抛砖引玉。

1.html的语法、格式,常用的标签极其作用,理解标签的嵌套,学习使用firefox+firebug或者chrom的调试工具,能够使用这些工具调试html、css、js、断点调试、抓包

2.如何引入css、js(有多少种方法,各种方法有什么区别),理解id、class属性的区别,学会css的常用选择器,理解盒子模型(padding,margin,border,width,height,),css坐标系,css布局(position的absolute、relative 、fixed、static),css浮动(float:left、right )和清除浮动(clear),display:inline、block、inline-block、flex

3.js的执行顺序,基本的编程基础(变量、运算、流程控制、数组、调用函数、自定义函数、对象)、json、js的dom操作、js的事件机制(委托、绑定、监听,冒泡和阻止冒泡,兼容性),了解ajax的xmlhttprequest及其创建方法(多浏览器兼容)、跨域,明白其工作原理,评论里有朋友说http协议,确实是我疏忽,在学习ajax这部分免不了需要懂点http协议,比如什么是get和post,这两种如何传递参数,设置cookie等

4、使用jquery解放你的开发工作,学会jq选择器,修改属性、监听事件、修改css,学会写jquery插件。这一步我觉得可以和第3步穿插学习

5、搭建服务器,弄个傻瓜服务器比如wamp,phpstudy等软件,可以一键建立一个apache+php+mysql的服务器,前期可以把你的静态页发布到本地服务器,使用本地服务器配合ajax学习。

6、学点服务器端,建议php+mysql。
服务器端脚本其实很简单,总结起来就是4个东西:SESSION、COOKIE、Request、Response,结合http协议理解如何从Request取得数据,经过处理后Response给客户端。这就是整个过程。
至于mysql也就是基本的sql语句。如何使用php进行CURD操作。这块其实很难总结,基本上以实现业务为主。

7、来点框架,理解MVC模式、推荐个比较流行的MVC框架:ThinkPHP,简洁好用不解释,国人弄的,文档和例子什么的非常丰富。

写了乱七八糟一堆,大家凑合着看,建议从1往7学习。 去学一下seajs grunt FIS等等,我也在学————有些事情我们能做的更极致,为什么不去做呢? 14年我毕业的时候,唯一的技能就是在vs里拖几个控件,配合mssql一张stu的表做一个学生信息的CRUD,大学里的总代码量不超过10w,这些都不可怕,可怕的是直到大四时我还以为自己很NB。 大三复习考研,不考的都出去找单位实习了,后来研究生也没考上,又赶上了毕业又投入到了无尽的毕设和论文中,说是毕设其实大家都明白,都是一些学生型的项目,什么成绩系统,新闻系统之类的,真正开始做时才发现无处下手,出去实习的同学人家都ajax了,我特么连js怎么引入都不会,css是什么都不知道,我相信知乎里没有哪个程序员能超越我的高度了吧! 那时我每天8点起床开始做,中间除了吃饭上厕所一直到晚上11:30(因为要断电熄灯),遇到不懂的的地方就去网上找,实在想不明白的就去楼下宿舍问同学,记得第一次看到getElementById这个方法时心中一万只草泥马奔腾而过,这什么鸟语啊,id和name有什么区别啊,padding和margin不都是缩进吗……此类种种,有时被一个问题卡住,想的头痛睡不着,在黑暗中爬起来拿出自己的Nokia手机上网查资料(那时还没用上智能机,屏幕很小)。那段时间虽然过的很苦,但异常充实每天都能学到新东西,进步非常快。 再之后就是跌跌撞撞找了一份不怎么样的工作,实习期的几个月可以说什么都没学到,有问题问多了老员工烦,直到后来来了一位培训师出身的大牛,带我做了几个项目,自己才算入了程序员的门。 后来的就不多说了,基本就靠自学了,说的有些啰嗦,其实说这些只是想告诉你你比我强多了,在校期间就知道这么多,并且有学习的意愿,这些才是最重要的。 angular backbone之类的框架性的先不要碰,打好html+css+js的基础,尤其是js,不要以为会写个function,会用几个jq插件就叫会js,还差的很远,认真做上几个项目,有针对性的进行学习,你经历的迷茫其实每个前端都经历过,我记得有句话是这么说的“迷茫只是因为你想的多,做的少”,实践才是检验真理的唯一标准,多做多练,你才能知道什么是真正的内功心法,什么是花拳绣腿。 迷茫什么?找几个国内最顶尖的商业网站,比如小米的网站、apple的网站。把它克隆下来,从中练习学习其中的技巧。克隆时只把样例网站当参考,css、js都自己写(当然库就用现成的)。完了,然后进行一些改动和创新。让其更上一层楼。别漫无目的的看书。多克隆几个,你的技术就突飞猛进了。然后再独立的创建几个完整的项目,培养原创能力。然后就可以拿着你的作品找工作了。 哇塞。。。猫头鹰、乌龟、蝴蝶书都知道。。[鼓掌]
浅浅谈一下,这3本书是我在工作两年后看的,茅塞顿开,建议初学的时候看看蝴蝶书就好,别的书都有涉及那是正常,全名叫《javascript 语言精粹》,了解一些好的习惯,知道一些不要去用的方法比如with,然后就可以开始敲代码了。猫头鹰和乌龟我建议等自己有比较丰富的代码经验了再去看,硬要看效果很差的。
不要去学框架,scss和less都是css的延伸、angular和backbone是HTML/JS的延伸,起码要先学会爬再去学走路,或者说,原生的js、HTML5以及css3都是地基,框架、工具(less、angular、backbone)什么的,都是基于地基之上的产物,地基够扎实,这些东西学起来分分钟的事。 找点自己喜欢的东西做并努力做到最好,遇到不懂的东西就去学。看书的时候多想想学了这个东西对我的实际工作到底有什么帮助,能够解决什么问题,之后再运用到实际的项目中去。光看不练是很难得到提高的,尤其前端这块。 跟你情况差不多啊,我是电商大四狗
----------------------------------说下我现在的状况吧---------------------------------------------
HTML5也只是熟悉到各个标签的语义以及一些属性什么,CSS3的话水平也一般,现在死扣Javascript呢,打算年后去上海,貌似上海搞IT的比较多。
针对你的困惑,我说下我的看法吧。
scss没接触过,和他比较类似的LESS SASS看过,语法很简单,学好CSS这个很简单的。
PHP也没接触过,后端学的是ASP.NET,很有很有必要掌握一门后端语言,要不做Ajax和json的时候工作原理都能不明白。
angularjs,backbone,这两个框架也没用过,前端框架用过Bootstrap,写过几个demo,但是标签中那满满的class名受不了了,所以放弃了。Jquery一开始接触前端的时候学过,后来也放弃了,可能学的不深的原因吧,觉得不好用,所以现在还是倾向于自己写Javascript,思考如何实现的过程很享受的。。

我觉得应该吧精力放在HTML5和CSS3上,现在大多数对HTML5的解释都比较倾向于是一系列技术的集合,不只只是"超文本标记语言5th",还有跟他涉及到的canvas WebGL 等等跟Javascript有关的很多新技术。所以Javascript很重要很重要。不要依赖框架,那个只会让我们停留在表层。
说到学习底层的原理,之前有一段时间在图书馆借了高纳德老先生的《具体数学》和《计算机程序设计艺术》。。英文版的啊,看了没两天就看不下去了。。
再推荐两本书吧一个是“中国刺猬书” 图灵的《数据结构与算法 Javascript描述》这本书对编写复杂的Javascript代码很有帮助。另一本是成林的《编写高质量代码:改善Javascript程序的188个建议》很多那些八九百页讲Javascript的书中没涉及到的原理其中都有涉及的。

加油!祝好运! 首先的要对自己定位定准确啊,如果只是想在北京拿到3000的话,w3c的html、css刷两遍,会写个简单的页面就够了,因为月薪3000的招聘岗位也不会有太高要求,肯定是准备招来做一些简单的工作的,甚至想着让你一边工作一边学习的。3000的话不要有太大压力。
如果说想要直接高起点入前端坑,那么要学习的东西还是很多的。
先声明我不是前端,但是略懂,之前在家小公司,前段后端一把抓。现在的公司有专门的前端,平时工作的合作也很多,所以对现在的新鲜技术还是有了解的。
首先你先给自己找准定位,你是打算以后就做一名纯前端,HTML/CSS/JS三剑客是必须扎实熟练的,有一些小技巧和你分享一下。看书我不敢说帮助不大(反正我没怎么看过),但是既然要进IT坑,动手才是最重要的。你可以去模板网之类的下载一些网站模板,自己动手切图还原成网页。还有以后上网的时候多留点心,看到一个网站一个效果写的特别棒,果断F12看一下源码,前端的代码基本都是可以看到的,慢慢看得多了,自然很多效果就心中有数了。PS;ctrl+U直接看网页源代码。没事多逛逛前端技术网站论坛之类,刚才好多回答里都有,我就不重复答了。
别纠结于框架,原生JS掌握好了,框架的学习成本非常低,基本就是临到用时直接看文档,很快就可以上手。不要过度依赖BOOTSTROP/JQ。另外自己动手的时候不要随便忽略IE6下兼容问题,虽然他一定会让你感觉到头疼,但是工作以后真的会用到,尤其是一个前端工程师。
这些做到了,如果还要专注前端不准备接触后端,可以继续学习H5/CSS3,对常用的插件框架有一定自己的理解,这时候你已经可以关注页面的效率问题了,不能只关注能否实现效果了,JS怎么写效率更高,哪些CSS样式的复用能够使样式文件更小、修改更方便。
如果打算接触后端转向混合型或干脆后端,推荐先入手PHP或者PYTHON。
重点不是怎么做,而是你要去做,光想肯定是成不了一个优秀的码农的呢。(PS:上班时间我跑来逛知乎是什么鬼?!)
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.