广义上面,一个软件,所有你能看到的部分,都属于前端
再简单点来说,就是网页
网页三大要素,html/css/js
比喻来说:html相当于一个人,css相当于一个人穿的衣服,js相当于这个人能动一下什么的
web前端,做的工作与网站系统的页面相关工作,主要是制作网页,并且在原有的静态页面上增加各种特效,以及网上的维护等。
Web前端开发是一项很特殊的工作,涵盖的知识面非常广,既有具体的技术,又有抽象的理念。简单地说,它的主要职能就是把网站的界面更好地呈现给用户。使用到的主要技术包括:HTML、CSS、JavaScript,如果能会后台编程语言,当然会更好。
扩展资料
Web前端开发所需要的技术基础:
1、对常用的一些JS框架了解,如jQuery、YUI等。
2、掌握最基本的JavaScript计算方法编写。
3、对目前互联网流行的网页制作方法(Web2.0)HTML+CSS,以及各大浏览器兼容性有很大的了解。
4、对前沿技术(HTML5+CSS3)的基本掌握。
5、还要对IT其他编程语言有所了解如:PHP,Java,.net!有一些公司还要求懂一点SEO优化
简而言之,就是我们平时看到各个网站和软件应用的排版,这一些设计就是属于web前段的,在这个方面做的比较好的就是源码时代啊,
入门级
做页面。就这么简单。把Designer出的各种设计图转化成html+css+js+image的静态网页,并把它们交给后端开发人员制作成页面模板。这就是入门级的前端工程师所做的事情。进阶级
还是做页面。不过稍微复杂一些,你需要开始注意一些更复杂的问题,首当其冲的就是浏览器兼容性问题。老实说浏览器兼容性问题真的不是那么好搞定的,毕竟每个项目对浏览器版本的要求都不一样,而且现在不光有PC浏览器还有各种移动设备上的浏览器,同时国内厂家的浏览器种类也越来越多,坑也是密密麻麻。除了兼容性,你可能还要关注一下性能问题,包括但不限于网络性能、渲染性能、js逻辑的性能等等,这个展开讲可以写本小册子了,呵呵。中级
带团队。你可能会奇怪,一个中级工程师就能带团队了?可是真的很多公司就是这样,尤其是小公司。当你了解了html、js、css以及各种浏览器的各种特性细节之后,你会被任命带领一个小的开发团队,当然是前端开发团队。可能加你一共也就三四个人,甚至更少。这时候你的工作内容除了自己写一点页面以外,还会帮助组员解决各种各样的细节问题,毕竟,组里,你是最懂技术细节的。这个时候,一部分人开始停步不前,而另一部分人开始关注另一个新的问题:工程化。前端代码都是非常松散的,项目结构性差,一旦开发人员数量多起来,业务复杂起来,如何管理这么多人、这么多代码是个非常大的问题。能否在这个问题上得到突破,决定了你能否迈向下一个级别。高级
架构设计。此时你熟悉前端开发的各种技术细节(当然忘了一部分细节也没事 ^_^),同时对各种前端框架、技术的特性聊熟于胸,你知道如何组织和管理项目让大家能以最快的速度达到项目要求,你甚至了解手下每个人的所长所短。于是当新项目到来,你迅速根据自身过往的经验选取若干种技术和工具,配上你认为最合适的人选组成项目团队,披荆斩棘日夜兼程将产品汪的各种奇葩需求斩于马下。这么做了一两个项目之后,你可能又觉得空虚了,你要寻求新的目标。恰好,NodeJS打开了通往新世界的大门。非典型前端
穿过NodeJS打开的大门,你进入了全新的世界——后端。全新的世界,无限的可能。楼上寸老师说的“上天入地,无所不能”,我猜就是这个状态。爱干嘛干嘛吧,这个时候,你应该不会再来问“后端程序员都在干嘛”这种问题了。
其实,要成为一名“非典型前端”并不一定非得经过1~4的步骤。只是现在已经上了年纪的前端大多是这样过来的,毕竟,NodeJS出来的时间也并不算很久。