前不久听到这样一个面试的故事:
面试官:你准备在我们公司做些什么事情?(大致这个意思)
面试人:我准备在公司做网站重构,把原来是table的页面全部重构成css+div的,...
面试官:不好意思,我们的网站都是css+div的,不需要重构了。
面试人:...(无语了)
自从2004年阿捷翻译了《网站重构》这本书,网站重构这个词就慢慢的必成了css+div,甚至等同起来,一些朋友把标准跟重构也混淆了,css+div跟标准也混淆了。这里有很多误读的成份。
无可厚非《网站重构》当时给我们带来了一场革命。我看过部分章节,是本好书。可能是css,div,标准这些词太过于频繁,很多误读的人把网站重构和css+div或者html+css,css+div和标准,标准和重构都等同起来,弄得到底什么是什么,谁也说不清楚。这书出版到现在已经5年了,网站重构到底要多久?
我个人认为这本书始终围绕这一个思想:使用WEB标准重构网站。
21世纪初最大的IT冤案
由于2004年绝大多数网站是使用table布局的,我们知道table布局最大的坏处就是不利于结构和表现分离,后期维护比较麻烦。而使用css和div能很好的解决这个问题。table标签一直是W3C html的标准标签之一,为什么到了我们这里就拒绝使用了,table标签被抹杀是21世纪初最大的IT冤案。《网站重构》这本书自始至终没说不能使用table标签,为什么到现在,页面上出现一个table标签就说这页面是垃圾呢?可能跟中国革命的彻底性有关系。
什么是WEB标准
WEB标准不是某一个标准,而是一系列标准的集合。网页主要由三部分组成:结构(Structure)、表现(Presentation)和行为(Behavior)。对应的标准也分三方面:结构化标准语言主要包括XHTML和XML,表现标准语言主要包括CSS,行为标准主要包括对象模型(如W3C DOM)、ECMAScript等。这些标准大部分由W3C起草和发布,也有一些是其他标准组织制订的标准,比如ECMA(European Computer Manufacturers Association)的ECMAScript标准。
具体可以查看:http://baike.baidu.com/view/7913.htm
而在阿捷的网页设计师网站(相当于《网站重构》的官方网站)有这么一句话:
怎样才是符合web标准?简单说就是不用HTML+table来设计页面,改用XHTML+CSS来实现。(出自:http://www.w3cn.org/faq/index.html)
可能这句话才是误读《网站重构》的真正源头,抹杀table的真正元凶。但是我相信阿捷他老人家的出发点是鼓励大家使用XHTML+CSS来布局网页。
《网站重构》给我们带来一场革命,同时也给我们带来了灾难性的div+css泛滥
《网站重构》给我们带来一场革命是译者预料之中的事情,同时也给我们带来了灾难性的div+css泛滥是译者始料未及的。现在人们都在谈论div+css,谈论怎么解决浏览器兼容性问题,一个页面你就使用了div标签的有之,其实根本不存在div+css,是HTML+CSS。我问一个朋友什么是em标签,他说em是单位(css中度量单位),大家css都很精通了,html呢,基础呢,结构呢,语义呢?反正都是源代码一看,都是div标签,就是好页面。那你们把这个页面裸奔一下,看看是什么,用Twinsen Liang 的话去看看小学语文书。
网站重构到底是什么
网站重构不是一种技术,不是css+div,更不是标准,网站重构是一种思想,是一种理念。
引用WebReBuild.ORG 的话:当前国内的同行普遍的认为:所谓的网站重构就是“DIV+CSS”,想法固然极度局限。但也不是另一部分的人认为是“XHTML+CSS”,因为“XHTML+CSS”只是页面重构。真正的网站重构理应包含结构、行为、表现三层次的分离以及优化,行内分工优化,以及以技术与数据、人文为主导的交互优化等。
网站重构到底要多久
重构网站先重构人,重构你的理念,不要光光追求技术,追求还原设计稿,追求浏览器的兼容性,重要的是基础和理念。当你真正了解什么是网站重构的时候网站重构也就真正开始了。
纯属个人观点,欢迎留言斧正。