目前的web开发工作最基础的技术仍然还是html、css、javascript,对于web系统的前端来说,html负责搭建骨架、css负责构建皮肤、javascript负责赋予行为,大致如此。尤其是javascript越来越成为了主角。
01.曾经的web开发场景
以前做web类的信息系统,是没有前端工程师的,尤其一些小公司的程序员都是一个人做完一整套功能。
管理好一点的项目,会有一些统一的css文件,并且leader会制作一些参考模板,要求大家高度多少、宽度多少、数字靠右、字符串靠左、有链接的地方鼠标放上去要显示手的样式。。等等。
如果是做外包类的项目,每参与一个项目,就要熟悉一些新的前端风格,程序员的很大一部分工作都是在做这块工作。
有人还参与过flash/flex作前端的项目,结合配套的actionscript语言。
一句话:很多程序员,开发一个web功能,前后台花的精力7:3,前台太花精力了。
02.javascript库的发展
那怎么行?程序员都是聪明人啊。所以,从个人到公司都在总结开发成果和经验,思考如何改变这种劳民伤财的局面。
比如最先出来并流行的一个叫prototype(http://prototypejs.org/)的js库,有了这个库,大大节省了程序员写js代码的工作量。后来出来了jQuery(http://jquery.com/),无论从功能还是更新速度上,都有了质的提升。一晃已经十多个年头了,确实是一个优秀的、开放的、有生命力的框架。
document.getElementById('tagId'); //原生的获取dom对象的写法
$("#tagId"); //利用jQuery的写法,简单明了
jQuery做了许许多多的封装,例如强大的选择器、完善的Ajax封装、出色的浏览器兼容性等等。总之,提高了前端的开发效率,程序员可以专心去写后台代码了。
03.RichClient(富客户端)的发展
传统软件有两个明确的大分类:C/S架构和B/S架构,各自都有优缺点。
在Ajax技术还没流行之前,B/S架构软件的很大一个痛点是:尽管新页面上只有一个数字和当前页面不一样,但你还是要无聊地等待页面刷新。有时候遇到服务器卡住,还刷不处出来,只能尴尬的面对着白屏的浏览器。
Ajax技术:通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
后来Ajax技术流行开来了,程序员在前端能做的事情越来越多了,结合xml和json数据格式,把很多原先要后台来完成的工作,映射到前台来做,前台的地位越来越高了。
甚至让大家觉得B/S架构相比C/S架构,本来的缺陷慢慢都没了。所以称之为Rich Client。
时至今日,随着浏览器的发展、html5技术的产生、各种js库的发展等等,浏览器是一个绝对的大舞台,已经不需要富客户端这种称谓了
04.jQuery EasyUI的快速入门
用于构建前端页面的库很多很多,例如Dojo、Yui、ExtJs等等,jQuery当然也必须要有,所以产生了easyUI(http://www.jeasyui.com/)。对于一般的信息系统,可以很方便的构建界面,前端工程师都不需要了。
例如:
常用的基于EasyUI的Form表单代码,主要是通过class、data-options等属性进行修饰
<input class="easyui-textbox" name="username" data-options="required:true"/>
<input class="easyui-passwordbox" name=""userpwd" />
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-add'"/>