我越来越觉得前台展现技术的革新将给前台开发者的地位带来一些影响和变化,前提是他们真的不断的在与时俱进。

HTML真的那么简单么?CSS只是美工的专利么?面试过的人99%告诉我Js就是用来验证输入框数据用的。可能3年前的人这么回答,3年后还有人会这么去回答。其实很明显它们还不懂得什么是真正的Web开发,哪怕是一些大的外包公司在中国给一些大的国营企业做项目的时候,使用的前台技术也仍然是10年前的水平。记得在径点给实习生做培训的时候就说过,有一定审美水平的人才能做得来前台开发,如果他们想兼顾后台,自学一下非常简单。而审美古怪(你是一个吗?嘿嘿)的人不管如何努力,也不能胜任前台开发,永远只能在后台的Action,Dao,BO,Socket,Entity,Factory之间徘徊。

懂得一些前台技术的人就明白,真正的Js/CSS技术入门容易,精通就难了,对于任何一门语言道理都是相通的。如今在Ajax技术非常成熟,前台用户体验要求越来越高的背景下,Js的无所不能就日趋明显。像Prototype、JQuery、ExtJS、DWR这样的框架也就越来越受欢迎。可怜的是很多工程师连Js语言都不了解就开始频繁使用这些框架,连CSS是什么都不知道就跟人说我做了很多漂亮的页面。

HTML5的推出,Flash虽然占据了很大一块市场,但运行速度和AVM的依赖也让它无法垄断前台展现技术,所以JS+CSS仍然是备受重视的技术。如何学好前台开发技术,也许这个问题更值得我们关注,也恰恰是目前的高校课程所覆盖不到的区域。

先说说CSS,学好它之前必须充分理解HTML这门语言,HTML/CSS的精髓就是盒模型。主流的页面元素DIV/SPAN/P/TABLE/LABEL等,都具有内边距padding、外边距margin、边框border,内边距在内部隔离内容和外框间的距离,而外边距对外隔离整个框和其他框的距离。由此来达到对齐、布局的目的。各个距离都清晰的情况下,整个盒模型的尺寸也就是这个元素的width和height也就能够算出来的。不幸的是每个浏览器的计算方式不统一,有的把border算进width之内,有的不算。这样导致整个元素占据的空间就有细微的区别。这种细微的2像素有时候甚至会影响到页面布局的错乱,前阵子听说连Facebook都不再support IE6浏览器了,建议开发者在不熟悉W3C规范的情况下在页面代码的起始位置加上<DOCTYPE!...声明,目的是引入W3C的CSS解析规范,屏蔽浏览器自己的解析规则,这样能大量减少奇怪的CSS现象。当然,如果不知道DOCTYPE是什么玩意,请恶补一下XML基础知识先!(DOM(http://www.cnblogs.com/ustbwuyi/archive/2006/08/24/485095.html)和SAX【http://www.iteye.com/topic/763895】)

再说说Javasript,关于JS的技术文章之前我也写过很多了,这里主要是腔调一下它跟CSS配合上的多样性,在开发中用好JS的精髓在于理解DOM模型,包括事件传递的冒泡和捕获两种方式等。当今Web开发为了增强用户体验,我们很频繁的需要用Js来操作页面元素也即DOM元素的CSS属性,常见的就比如修改display/vibisility/overflow/text-decoration等,更细微的体验比如修改透明度来实现淡入淡出,修改scrollLeft来实现滑动飞入飞出等等。试想一下这些Js代码首先不会是由鼓弄PS的美工去完成吧?那么由工程师去完成的话你如果认为CSS就是美工才需要的玩意,连里面的属性名都不知道,在各个浏览器好不好使也不知道,如何能够写出优雅高质量的JS代码从而实现优雅的用户体验呢?我想这方面的技术和功夫经验的积累跟创建一个DB连接执行一条SQL语句比起来,还是要复杂得多吧!

正由于主流的浏览器厂商之间还未达到完全统一,前台的兼容性开发和用户体验技巧才显得越发重要,越发需要规范和高质量的代码。我这么说并非说明我是一个偏重前台开发的工程师,只是想强调前台技术跟后台同样重要,优秀前台工程师也非常值得尊重。无数次面对那些来应聘的用过几次SSH框架就说自己精通Java开发的人,我只用几个Java语言本身的基础的问题就得到了我的答案:Object类有哪些方法(http://zhb1208.iteye.com/blog/1418324)?Java的int有几位?JVM是如何工作的?

在我看到编程语言本身没有难易之分,当你习惯了几种语言并且开发使用它们来开发软件给客户和人们提供服务的时候,应该随时都保持清醒的回到这门语言的底层本质去锻炼和摸索,这样才能真正熟练掌握它!

java web前台概览相关推荐

  1. java 前台播放视频_「纯js项目」海康视频项目,java后台+前台web显示的,望提供思路!...

    纯js项目: 海康视频项目,java后台+前台web显示的,望提供思路! 如果只是实现BS架构,可以向海康要web开发包,直接使用浏览器通过ocx访问海康设备浏览视频,如果需要的功能不全,再使用JNI ...

  2. java web根据excel word模板生成前台页面,自动求和

    </pre>项目要求根据excel制作前台,并得出结果,开始的时候想用table套嵌input接收数据,后台运算,或者jqurey计算,数了一下excel表,如果那样的话80多个字段,而且 ...

  3. java私塾 设计模式 视频_[章节]Java Web开发理论部分视频教程 之 04 mvc设计模式详解视频教程 - 我的学习中心 - 私塾在线 - 只做精品视频课程服务...

    第01节课:进行整体课程概览:复习事件机制:复习表现层的功能:复习表现层的开发 第02节课:Web应用的基础知识,包括:Internet.Http.IP.Port.MIME规范.Web客户端和服务端. ...

  4. 计算机毕业设计 java web网上购物商城系统(源码+论文)

    文章目录 0 项目说明 1 系统设计 2 数据库设计 2.1 实体属性的定义 3 界面展示 4 论文概览 5 项目源码 0 项目说明 java web网上购物商城系统 提示:适合用于课程设计或毕业设计 ...

  5. 【毕业设计/课程设计】java web网上购物商城系统(源码+论文)

    文章目录 0 项目说明 1 系统设计 2 数据库设计 2.1 实体属性的定义 3 界面展示 4 论文概览 5 项目源码 0 项目说明 java web网上购物商城系统 提示:适合用于课程设计或毕业设计 ...

  6. 小猿圈之学习java web需要有什么基础?

    有很多人想学java,因为java虽然已经火了多年,但是其发展前景还是很不错的,有很大一部分人选择走java web方向,那么java web应该提前掌握哪些知识呢?小猿圈加加下面说一下. 首先找准自 ...

  7. 面试时,当你有权提问时,别客气,这是个逆转的好机会(内容摘自Java Web轻量级开发面试教程)...

    前些天,我在博客园里写了篇文章,如何在面试中介绍自己的项目经验,收获了2千多个点击,这无疑鼓舞了我继续分享的热情,今天我来分享另外一个面试中的甚至可以帮助大家逆转的技巧,本文来是从 java web轻 ...

  8. 深入分析Java Web技术内幕pdf

    下载地址:网盘下载 内容简介  · · · · · · <深入分析Java Web技术内幕(修订版)>新增了淘宝在无线端的应用实践,包括:CDN 动态加速.多终端化改造. 多终端Sessi ...

  9. jQuery框架+DWR框架实现的Java Web中的Ajax效果(异步请求,局部刷新)

    一 简介和实现效果 这里用一个小例子来简单举例说明,做一个搜索引擎搜索提示效果,通过不断输入字符,然后在下方给出搜索提示.效果图如下: 通过上图可以看到,当输入一个"a"时,提示了 ...

最新文章

  1. SAP MM初阶之事务代码MIGO界面批次拆分最多输入15行?
  2. eclipse svn 与资源库同步 符号说明
  3. makefile使用--Wall选项(二)
  4. 第五章 Octave 教程-机器学习老师板书-斯坦福吴恩达教授
  5. Dijkstra和动态规划
  6. Go pprof 快速分析 CPU 高负载问题
  7. C#获取Windows下光标位置(转)
  8. js 获得明天0点时间戳_需要知道的JS的日期知识,都在这了
  9. Iterator(迭代器)
  10. BZOJ2209 [Jsoi2011]括号序列 splay
  11. 雅礼集训 Day6 T2 Equation 解题报告
  12. 安装SqlServer2014出现(‘无法启动 Windows Management Instrumentation 服务。若要继续安装,必须找到问题并修复该服务‘)
  13. Vb 6.0 ado连接mysql_VB使用ADO操作Access数据库
  14. Java实现函数指针
  15. 迅雷U享版 v3.0.1.96 Lite V4 精简绿色版
  16. Delphi 10.3.3 安装DevExpress VCL 19 教程
  17. 安装的photoshop cs2为什么一进去就说我的用户名、组织、或序列号无效或错误???
  18. PHP steam第三方登录,网站支持第三方STEAM登录了
  19. 给大家分享下仿QQ消息页面横向滑出菜单,Item内容较多的情况
  20. blender使用小技巧

热门文章

  1. 区块链+支付:区块链技术是什么?它如何在支付行业中使用?
  2. TREC Real-Time Summarization Track
  3. spark submit参数及调优(转载)
  4. 电视制式,480p,720p,1080p
  5. 最新TP开发宝宝起名/八字起名/周易取名网站源码
  6. dw网页制作入学教程_网站制作之dreamweaver入门
  7. mysql 行锁模拟、锁查看及排除
  8. SpringBoot在IDEA中同一个项目用不同端口启动
  9. 华为荣耀note10计算机在哪找,华为荣耀note10如何使用电脑模式-华为云电脑使用方法介绍 - Iefans...
  10. SpringBoot+MybatisPlus多数据源动态切换