(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)
序言
长久以来,我一直有一个梦想。在过去的8、9年间,我主要从事教育工作,包括委托和编辑技术书籍,来帮助人们使用技术建立酷炫的东西,为我所工作过的多家公司培训新员工,以及编辑和撰写指南性的文章,帮助人们使用Opera的软件。我也很着迷于Web,并且是开放的Web标准的坚定信徒。我希望通过我所从事的教育和培训工作,教会人们如何合作,如何相互尊重,教会他们如何制作可跨平台、跨浏览器、跨设备访问的Web站点(甚至残疾人也能无障碍地访问),为改造Web世界尽我的一点绵薄之力。要实现这个目标,Web标准是关键 。因此我决定将我的时间和精力集中用于推广Web标准的应用,这是我长久以来一直有的想法,但终于在Opera公司里实现了,为此我要感谢我的上司聘用我专职从事这项工作,我的一个梦想终于成为了现实。
在这篇文章里,我要向大家介绍我和其他很多人花费数月时间开发的一个课程Web标准课程,该课程旨在向大家提供Web设计和开发的坚实基础,无论读者是谁,此教程完全免费、可访问,并且不需要预备知识。当然,我主要还是希望在大学里推广本课程,因为我发现很多大学都缺乏好的关于Web标准的课程。我听说很多大学生不愿意花时间去学习关于Web标准的课程,因为评分办法已很过时了。我还听说一些公司在面试申请Web相关职位的大学毕业生时,发现这些大学毕业生根本不了解实际的Web开发是如何进行的,而感到非常失望。而如果你以一种理性的风格,在一所先进的大学里教Web标准的话,那我要向你致敬,请与我联系!
这篇文章的主要内容包括:
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)为什么要使用Web标准?在这一部分,我要简单论述使用Web标准的优点,为什么很多时候Web标准未得到采用,以及如何通过学习我们的课程来解决这些问题。 本课程的组织结构。这一部分概述课程内容的结构,并讨论授课老师如何有效地使用和讲述课程材料。 本课程的适用人群。当我说任何人都可以学习本课程时,这里的任何人其确切意义是什么? 课程的目录。如果你想直接就开始学习的话,可以跳过这部分。 致谢 与我联系为什么要使用Web标准?
为什么你一定要在进行Web设计和开发时使用Web标准,这将在第4篇文章中详细阐述。但我在这儿先大概讲一下,让大家有个基本的了解。使用Web标准,有以下优点:
提高代码的利用效率:当你学习完本课程后,你会发现Web标准使用的最佳习惯主要是关于代码重用的。通过重用代码,你可以将HTML内容和样式信息(CSS)及行为信息(JavaScript)相分离,减小网页体积,而且只需要写一次代码,以后在需要的地方再重用即可。 易于维护:这一点与上面所说的最后一点密切相关。如果你可以只写一次HTML代码,然后在需要应用样式和行为的地方,使用类和函数。而以后,在你需要做出改动的时候,你可以只在一个地方修改,然后此修改就会自动应用到整个Web站点,而不再需要一处一处地修改。 提高可访问性:以下的两点密切相关。Web上的一个大问题就是,让Web站点可以被每个人访问,而不论他们身处何种环境。这包括要能让残疾人,包括盲人、视觉受损的人、和运动功能有障碍的人(如运动受限制,不能自如地用双手或根本不能用双手的人)等)也能访问网站。通过使用Web标准和最佳的习惯,你可以使你的Web站点能被尽可能多的人访问。 设备兼容性:此处的兼容性,指的是不仅要确保你的Web站点可以跨平台(如Windows、Mac、Linux),而且要能在其它的浏览设备上工作,比如现在用的手机、电视、游戏控制台等。这些装置在屏幕大小、处理能力、控制机制等方面都有一些局限性。不过你放心,通过使用Web标准和最佳的习惯,可以让你的Web站点能在绝大多数装置上显示。要知道全球手机的数量多于个人电脑的数量,而且很多手机都是可以上网的,你或你的客户怎能不去占领这个大市场呢。要想了解更多有关移动Web开发的信息,请访问 dev.opera.com 。 网络爬虫/搜索引擎:在这里,我指的是所谓的搜索引擎优化,即让你的Web站点能尽可能多地被网络爬虫爬到,并且被索引,从而提高你的Web站点在 Google 等搜索引擎上的排名。这是一项专门的学问(参考关于搜索引擎优化的文章,如《更适用于搜索引擎优化的智能站点结构》、《HTML语义和搜索引擎优化》等)。同样地,通过使用Web标准,你就可以让你的站点在Google、Yahoo! 等搜索引擎上尽量靠前地显示,这必将大大地促进你的业务。尽管使用Web标准有以上诸多优点,但多数Web站点至今还尚未遵循Web标准,而且时至今日很多Web开发人员都还在使用过时的、不好的习惯。你会问为什么会出现这种情况呢?。原因当然有很多,这包括缺乏教育和培训、公司政策、不用学习标准也能领到薪水、学习太难、浏览器所支持的标准等。以下我将逐一详细分析这些原因,并批驳那些不采用或学习Web标准的借口。
缺乏培训:这确实是一个问题,这也是我们开发本课程的主要原因之一。很多大学在它们的Web相关课程中都不教授Web标准,而且很多课程讲述的内容也已经过时,由于官僚主义,这种情况还很难改变。培训课程和书籍确实也花费昂贵,但现在我们已开发出这个免费的课程,并在大学里推广。缺乏教育和培训再也不成其为不学习Web标准的借口了。 公司政策:无可否认,至今一些公司/机构依然维持其老式过时的Web站点,也许还制定有政策强迫其员工使用过时的浏览器。但现在有了我们这个免费提供的课程,情况应该能得到改观了。将Web站点进行升级,以达到当前的标准,这将促进公司升级它们所使用的浏览器,这是因为用过时的浏览器浏览升级后的Web站点效果不佳(尽管还是可以浏览)。公司还应该鼓励它们的客户也升级浏览器。这样做是有充分理有的,如上所述,使用了Web标准的站点,将有更靠前的搜索引擎排名,并能为更多的人,包括残疾人和使用电脑以外装置上网的人所访问,公司怎能忽视这么大的一个潜在客户群呢? 我不需要学习Web标准:我知道一些Web开发人员会这样说:我是在使用过时的方法开发Web站点,但我照样领到工资,那我为什么还要去费时费力地学习这个新东西呢?我在以上部分已经讲过,使用Web标准可以提高代码的效率,使得写代码变得更为容易,并使Web站点更易于维护。此外,还可以使你能写出可以在电脑以外的设备上显示的代码,这不很好吗?学习Web标准,可以提升你的专业技能,并使你能挣到更多的钱。目前很多公司都需要懂Web标准的专业人员。 它太难学了:废话。在学习完本课程后,不论你是Web开发/设计方面的新手,还是需要进修的Web从业人员,都会发现要掌握使用Web标准的基本知识,其实是非常容易的。学习使用Web标准并不比使用老式过时的Web开发/设计方法更难,而且还能带来那么多益处。 浏览器所支持的标准:过去有很多不同的浏览器支持标准,这使得让Web站点在不同的浏览器下都能正常显示,变成了一场恶梦。但那已是过去的事了,当今的浏览器都支持应有的Web标准。一些老式浏览器有时仍需要特别的支持标准,但通过使用当今最好的习惯,你可以确保那些老式浏览器的用户仍然可以获得不错的用户体验。因此像你们已经了解到的一样,真没有任何借口在从事Web开发工作时不采用Web标准。从一个初学者的观点来看,学习本课程至少可以让你一开始就学习最好的习惯,而不需要还要费力地去抛弃那些过去不好的习惯。
我们一直以不屑的口吻谈论那些过去不好的习惯,仿佛它们已是毫无用处的老古董了。的确,在本课程中我们不会教授这些不好的习惯,因为我们认为没这个必要。我们认为学员一开始就应选择正确的出发点。也许你们想知道这些过去不好的习惯究竟是怎么样的,下面我就简要介绍一下。
在过去,人们在制作Web站点时,习惯于这样做:把整个页面通过一些巨大的表格进行布局,使用不同的表格单元格来定位图像、文本等(不是真正的表格,而是向页面添加冗余的标记)。他们习惯于使用不可见的空白GIF来调整页面元素的定位(不是真正的GIF图像,而是向页面添加冗余的标记)。他们习惯于用JavaScript来生成那些飞舞的菜单(这对于那些已经在浏览器中禁用JavaScript的人来说,一点好处也没有,而对那些因视觉障碍而使用屏幕阅读器的人来说,也会被这些JavaScript搞晕)。或者,写一些仅能运行在一种浏览器上的JavaScript(但对于那些使用其他浏览器的人,该怎么办呢?)。他们习惯于在HTML的font元素中,直接插入样式信息(但这将增加维护的难度,并且会使页面中凭添多余的标记)。此外还有很多不好的习惯,最糟糕的是,虽然我上面说的是过去的作法,但现在有很多人还像以前一样做。
Web开发本身就是一件杂乱无章的工作,而如果再没有好的开发习惯,它就难上加难了。本课程所描述的Web标准和最佳习惯,将是你从事Web开发的最佳途径。