打开网易新闻 查看更多图片

1.页面标记(HTML)。

由于页面HTML代码结构基本固定,HTML的标签数量也不多,因此,从学习的难易程度来说,HTML应该是前端技术中非常容易学习的技术。即使是一个新手,也能在较短的时间里学会编写一个结构良好的页面。虽然说入门容易,但是要编写语义良好、简洁整齐的HTML代码则需要大量的实践才能掌握。HTML是页面的基本结构组成部分,是网站的基础,臃肿混乱的HTML代码不但会影响其本身的展现,而且与其对应的CSS与JavaScript代码也会变得难以编写和维护。

2.页面样式。

CSS 是 Cascading Style Sheet(层叠样式表)的简称。在标准页面设计中,因为CSS负责网页内容的表现,所以CSS也是前端开发需要掌握的核心内容之一。丰富的CSS样式能让平淡的HTML展现出绚丽的效果,使得页面更为友好。好的样式可以让用户在页面上停留的时间更久一些,也可以帮助用户更好地阅读网站内容,同时,还可以让用户在不同浏览器上有着相同的体验。CSS和HTML代码一样,没有复杂的逻辑,上手也比较容易,其主要的难点在于如何合理地利用CSS的组合和继承特性来编写简洁、可维护性好的CSS代码。以上这两项基本技能是前端UI开发必备的技能。

3.前端编程。

前端编程技能主要是指JavaScript编程。JavaScript是一种基于对象和事件驱动的客户端脚本语言,是页面实时动态交互的技术基础。相较于HTML和CSS,编写JavaScript代码更能让前端开发人员找到后端程序员的感觉。

JavaScript是非常灵活的脚本语言,包含了高阶函数、动态类型以及灵活的对象模型等强大的语言特性,当然,JavaScript的灵活性也可能导致代码不易维护。此外,浏览器的兼容性也增加了JavaScript编码的难度。同一个功能,可能在不同的浏览器中有不同的实现。例如,在IE浏览器中,事件绑定使用的是attachEvent()方法,但其他浏览器则使用的是addEventListener()方法。开发人员在熟悉JavaScript基本语法和基本的编码规范之外,还应该了解并解决在不同浏览器中的JavaScript的兼容性问题。

4.跨平台、跨浏览器。

前端代码本来不存在跨平台方面的问题,但是随着移动Web平台的兴起,跨平台的问题就逐渐显现出来了。移动设备(如智能手机和平板电脑)在近几年发展迅猛,用户通过移动设备访问Web站点的比率也是逐年增高。如何在众多移动平台、众多屏幕尺寸上展现友好的Web站点成为一项前端技能。不过,目前跨浏览器没有像几年前表现得那么突出了,这主要是因为IE 6、IE 7浏览器的占有率下降和众多浏览器对标准的重视,另外,目前流行的前端框架已经很好地解决了浏览器的兼容问题。尽管如此,但是还需要熟悉常见的浏览器兼容方法,主要包括:IE 7、IE 8的兼容,HTML5中新特性的兼容等。

5.前端框架。

各种前端框架的出现,在很大程度上降低了前端开发的难度。框架统一了编码的方式,封装了浏览器兼容问题并添加大量的扩展功能。如今的Web项目中前端框架应用非常广泛,在开源社区GitHub上排名靠前的开源框架也是以前端框架居多。优秀的前端框架可以在很大程度上缩短项目开发的周期,尤其是jQuery,几乎成为Web项目默认的前端框架。但是,前端框架的接口众多,各种框架的使用方式和编码方式也不尽相同,作为前端开发工程师,需要熟悉一些常用框架的使用方法,并且要了解如何编写常用框架的扩展插件,如jQuery、YUI、nodeJS等。

6.调试工具。

对于前端代码,在调试过程中需要查看页面的HTML结构变化、CSS渲染效果、JavaScript代码的执行情况以及HTTP请求和返回的数据,并且要了解网站各个部分的性能等,甚至需要动态更改HTML、CSS代码来查看预期的效果,模拟发起HTTP请求来查看后端返回的数据。主流浏览器都会有对应的浏览器插件来辅助完成这些工作,如IE中的IE Dev Toolbar、Chrome中的Developer Tools、Firefox中的Firebug等,此外还有HTTP请求监控和模拟工具,如Fiddler等。 开发工程师需要熟练使用这些工具来辅助完成前端代码的调试。

7.沟通能力。

沟通是开发人员必备的一项基本技能,尤其是对于前端开发工程师来说。Web前端开发介于UI和后端逻辑开发之间,因此,Web前端工程师在开发过程中必定会和UI设计师及后端工程师合作:前端工程师需要和UI设计师沟通,确定效果是否可以实现以及实现的代价,并对UI设计提出建议;还需要和后端工程师沟通,确定前后端交互的接口以及传输的数据实体的结构等,良好的沟通会让这些过程变得轻松许多。