网站重构到底是什么
作者:feiwen8772 来源:WEB前端开发 发布时间:2008-11-03 11:30:00
前不久听到这样一个面试的故事:
面试官:你准备在我们公司做些什么事情?(大致这个意思)
面试人:我准备在公司做网站重构,把原来是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”只是页面重构。真正的网站重构理应包含结构、行为、表现三层次的分离以及优化,行内分工优化,以及以技术与数据、人文为主导的交互优化等。
网站重构到底要多久
重构网站先重构人,重构你的理念,不要光光追求技术,追求还原设计稿,追求浏览器的兼容性,重要的是基础和理念。当你真正了解什么是网站重构的时候网站重构也就真正开始了。
纯属个人观点,欢迎留言斧正。


猜你喜欢
- Math 对象js 给我们提供了一些操作数字的方法也是一种数据类型 是复杂数据类型Math对象的通用语法: Math.xxx()random
- ALTER TABLE 表名字 ADD CONSTRAINT pk_表名字 PRIMARY KEY( SNumber, SDate ); S
- 没错,全网最帅的比卡丘在我这~~~为了访问 Python 库,您需要将它导入到您的 Python 环境中,使用以下命令将其导入 turtle
- 日常维护中,经常会碰到线程被阻塞,导致数据库响应非常慢,下面就看看如何获取是哪个线程导致了阻塞的。1. 环境说明RHEL 6.4 x86_6
- 技术背景对于各行各业的研究人员来说,经常会面临这样的一个问题:有一篇不错的文章里面有很好的数据,但是这个数据在文章中仅以图片的形式出现。而假
- 华丽的文本框演示首先看看演示结果:实现代码import matplotlib.pyplot as pltplt.text(0.8, 0.5,
- MySQL数据库在升级到5.7版本后,和之前的版本有些不一样,没有data文件夹,我们都知道MySQL数据库文件是保存在data文件夹中的,
- keras 深度学习框架中get_value函数运行越来越慢,内存消耗越来越大问题问题描述如上图所示,经过时间和内存消耗跟踪测试,发现是ke
- 1、最小二乘也可以拟合二次函数我们都知道用最小二乘拟合线性函数没有问题,那么能不能拟合二次函数甚至更高次的函数呢?答案当然是可以的。下面我们
- 1、mysql下载下载地址:https://dev.mysql.com/downloads/mysql/5.6.html<br>
- 分享一下 在3est活动中学习的godlong的 代码如下:<% Set xPost = createObject("Mi
- 1. 目的每天上班,工作需要,电脑上需要每天开机启动一些软件,下班时候,需要关掉一些软件。一个一个打开和关闭貌似是很繁琐的,于是乎,这个脚本
- python jenkins 打包构建代码# pip install python-jenkinsimport jenkinsimport
- 1,reload 方法该方法强迫浏览器刷新当前页面。语法:location.reload([bForceGet])参数: bForceGet
- 关于Variable和Tensor旧版本的Pytorch中,Variable是对Tensor的一个封装;在Pytorch大于v0.4的版本后
- 一.用SqlConnection连接SQL Server 1..加入命名空间 using System.Data.Sql
- # -*- coding: utf-8 -*-"""Created on Sat Jun 20 19:36:3
- ajax编程获取Google的PageRank3(PR值)及所在目录,想给你的站增加Google PR查询的功能吗?如果你不会就看看本文吧,
- 本文实例为大家分享了python实现图像识别的具体代码,供大家参考,具体内容如下#! /usr/bin/env python from PI
- QQ和微信这两款都是非常受人喜欢的聊天交友软件!可能大家平时没有留意到,也或者是大家可能很少用微信,或者很少用QQ吧!所以可能没有留意这些小