如果正在阅读本书.doc

上传人:marr****208 文档编号:156948630 上传时间:2020-12-20 格式:DOC 页数:43 大小:1.57MB
返回 下载 相关 举报
如果正在阅读本书.doc_第1页
第1页 / 共43页
如果正在阅读本书.doc_第2页
第2页 / 共43页
如果正在阅读本书.doc_第3页
第3页 / 共43页
如果正在阅读本书.doc_第4页
第4页 / 共43页
如果正在阅读本书.doc_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《如果正在阅读本书.doc》由会员分享,可在线阅读,更多相关《如果正在阅读本书.doc(43页珍藏版)》请在金锄头文库上搜索。

1、第 1 章构建牢固的基础如果正在阅读本书,那么您很可能已经了解构建和发布Web站点所产生的成就感。您可能是独立完成项目,也可能是作为团队的成员构建项目。该项目可能是带有少量页面的简单站点,您使用这些页面在Internet上向一些朋友展示自己;也可能是前沿的富互联网应用程序(RIA),该应用程序带有针对数以百万访问者的社交网络特性。无论如何都要祝贺您完成项目!您理应为此感到自豪!积累一定的知识和经验之后,您可以回顾项目的开始阶段,此时必然会发现,如果在某些地方采取了不同的处理方法,项目的进展本可以顺利很多。如果您刚刚开始投身于Web开发行业,那么可能会希望备份文件以前的版本,因为如果没有进行备份

2、,那么在发生意外的断电之后,需要花费大量宝贵的时间来恢复改动。或者,您可能希望没有决定依赖于第三方的软件库,虽然在项目开始时该软件库看起来能够胜任任务,但是不久之后就证明使用该软件库浪费了大量的时间和工作。在我自己的职业生涯中就遇到过完全相同的情况,并从这些错误中吸取经验教训,同时将其作为新的知识用于下一个项目中。基于自己的经验以及从其他人那里学到的经验,我开发了一种有效的、实用的Web开发方法。将该方法与一些智能的技术结合使用,就可以确保项目更加平稳地运行,从开始运行直到下一个Web站点或项目的启动。1.1 最佳实践概述首先考虑“最佳实践”这一术语的含义。如果您已经在开发行业中工作很长一段时

3、间,就会听到许多人经常使用该术语来证明特定的编码技术或方法。然而,“最佳实践”是一个富有含义的短语,应该谨慎对待。下面解释具体的原因。1.1.1 确认最佳实践的最佳性的人员Web开发的前景经常会改变。流行的浏览器经常会变动,这些浏览器采用的功能也并不总是基本相同,并且构造Web站点以显示在这种浏览器中的技术仍然相当不成熟,经常需要进行修订和更新。在不断变动的环境中,过去被认为是问题的最佳实践解决方案现在已经被淘汰。此处使用单词“最佳”实际上是指存在用于比较的基准,或者已经采用一些科学测试来进行区分。然而,基本上不会执行这样的测试。您应该仔细考虑已经标记为最佳实践的各种技巧、技术和组件,亲自评估

4、它们,并且确定它们是否满足一组条件,这些条件可以使开发人员、站点的最终用户以及为其承担工作的客户(如果相关的话)获益。本章中建立的指导原则、规则和技术都经过我的亲身试验,可以证明适用于现实世界的Web开发,并且我将它们视为目前的最佳实践。然而,在您阅读本书时,其中一些内容可能已经不再相关,因此建议您始终关注行业中的最新变化。阅读杂志,订阅博客提要,与其他开发人员聊天,并且浏览Web以获得相关知识。我在个人Web站点(http:/www. denodell. com/)中定期更新推荐信息源的列表,从而为您提供了一个良好的起点。通过掌握这些最佳实践的最新改动,您就可以始终站在Web开发行业的前沿,

5、自如地运用可以使您的日常工作更具效率、建设性和意义的一组工具和技术。最后,在构建站点时不要害怕检查、改写和重构已经编写的代码。没有人能够在一开始就编写不需要修改任何代码的Web站点。不要相信您在Web、本书或其他书籍中看到的代码示例能够从一开始就完美运行。另外,只有积累知识和经验才可以简化编程工作,因此有必要亲自实践获得的每次机会以成为最佳的Web开发人员。1.1.2 可以从最佳实践中受益的人群事实是每个人都应该能够从在代码中使用最佳实践获益。查看如下的列表,使用这些准则来评估偶然发现的任何指导原则、技巧或技术,以确定它们是否适用于您的站点。1. Web开发人员最佳实践从家中开始。适合您的We

6、b开发人员同事的站点结构和代码可以使生活更加轻松,并且减少由于拙劣的编码工作而带来的痛苦。 代码是否遵循W3C(World Wide Web Consortium,万维网联盟)规范? 如果专利技术或插件不可用,站点是否能够运行? 代码是否通过验证和测试? 代码是否易于理解、具有良好的结构并且便于维护? 是否可以向站点添加额外的页面、部分和有价值的资源,而不需要执行大量不必要的工作? 代码是否可以针对不同的语言和世界区域进行本地化,而不需要执行大量额外的工作?2. 搜索引擎和其他自动化系统无论您是否相信,大量站点流量都来自于自动化机器和脚本,例如搜索引擎、屏幕抓取器(screen scraper

7、)和站点分析工具。针对这些机器人进行设计与针对其他用户组进行设计同等重要。 根据用于查找代码的合理的搜索词,代码是否适当地显示在搜索引擎结果中? 出于任何原因而希望读取或分析代码内容的计算机或脚本是否可以方便地读取代码?3. 最终用户对于代码来说,最重要的用户是站点访问者,因此使代码可以有效地为站点访问者工作是最优先考虑的事项。 是否任何Web浏览器或设备都可以使用或访问代码,而不考虑这些浏览器或设备的“年龄”、屏幕尺寸或输入方法? 如果由屏幕阅读器软件大声地阅读站点,那么站点内容和其顺序是否对听众有意义? 在以预料之外的某种方式使用时,是否可以确信代码不会表现出错误的行为或显示错误消息? 在

8、使用适当的搜索词时,是否可以通过搜索引擎或其他联机工具查找到站点? 用户是否可以方便地访问站点的本地化版本(如果存在该版本的话)?1.2 常规最佳实践大多数开发人员都希望投入尽可能多的时间来构造吸引人的用户界面组件和美观的Web站点,而不是将时间投入到因为错误的体系结构决策而导致的代码库重构。使代码易于维护相当重要。如果没有合理的结构和可读性,那么随着时间的流逝,代码将变得越来越难以维护。需要注意的是,本章中的所有指导原则的目的都是为了尽可能简化开发人员的工作。1.2.1 定义项目目标在对Web页面编写代码时,下面是需要考虑的两件最重要的事情: 最终用户希望如何使用该Web页面? 其他开发人员

9、希望如何修改该Web页面?需要注意的是,最终用户可能不是真人。如果检查某个现有站点的服务器请求日志,就会发现许多站点访问者实际上是搜索引擎蜘蛛、RSS阅读器,或者是其他能够读取原始页面内容并将其转换为其他内容的联机服务。在不久的将来,这种基于机器的访问将变得更加广泛,因为自动化内容聚合(例如RSS提要)正在越来越普及。例如,来自于流行的知识共享站点Wikipedia(http:/www.wikipedia.org/)的内容已经用于Web中的其他位置,包括Google Maps(http:/ Maps中,根据每篇文章中的内容描述的地理位置放置相应的文章。Yahoo!和其他搜索引擎公司在很久以前就

10、强烈要求Web开发人员在页面中集成内容特有的额外标签,从而使他们可以更好地理解页面内容,并且可以通过不同的方式在其搜索引擎中展现结果。例如,可以使用图像和配料展现食谱;与电影相关的结果可以包含电影评论和附近的电影院列表。完全有可能以联机方式将您的代码与其他开发人员的代码连接起来。通过以正确的方式标记内容,就可以确保整个系统以合理的、前后一致的、彼此连接的方式整合,从而帮助用户更快速地获得他们查找的信息。为了确保其他开发人员(包括您本人,如果只是为了确保您在很久之后返回到项目时仍然能够理解该项目)可以理解您的代码,您需要考虑通常的站点维护任务。这些站点维护任务通常划分为以下4种类别: 修改现有的

11、页面。 添加新的页面。 重新设计或修改页面布局。 对具有以下需求的最终用户提供支持:采用其他语言编写的页面,或者具有地区或国家特有版本的页面。通过预先考虑这些任务,您可以减少重构代码或重新安排和拆分文件的可能性,从而简化维护工作。1.2.2 掌握基本规则如何确保一开始就执行正确的操作?为此,本书简洁地总结了以下7条经验规则: 始终遵循成熟的、开放的、获得良好支持的Web标准。 了解HTML、CSS和JavaScript实现之间的跨浏览器区别,并且掌握如何处理它们。 假设支持HTML,但是允许在浏览器中使用其他技术(例如CSS、JavaScript或任何插件)时站点仍然可用。 以一致的方式命名文

12、件夹和文件,并且考虑根据目标、站点结构和/或语言将文件分组在一起。 定期清除多余的代码、文件和文件夹,以获得整洁的代码库。 为提高性能而设计代码。 不要纯粹为了使用技术而过多使用一些新技术。接下来按照顺序介绍每个基本规则。1. 遵循成熟的、开放的、获得良好支持的Web标准20世纪90年代早期,在技术研究组织CERN(European Organization for Nuclear Research,欧洲原子核研究组织,http:/www.cern.ch/)中工作的Tim Berners-Lee发明了目前广泛使用的万维网(World Wide Web)。他提出了如下概念:主页、超文本标记语言(

13、Hypertext Markup Language,HTML)以及用于组成Web浏览基础的互联超链接,并且创建了世界上第一个Web浏览器来演示他的发明。该项目很快变得相当庞大,并且占用了CERN中的过多资源。因此,CERN最终决定将资金和人力改为投入到构建接近完成的Large Hadron Collider项目。Tim Berners-Lee决定创建一个独立的组织来继续开发HTML标准和其相关技术。这个新的组织W3C(http:/ www.w3.org/)于1994年10月正式成立。W3C组织从一开始就归档了与Web相关的超过110个推荐的标准和实践。对于本书读者来说,最有用的3个标准是属于H

14、TML的标准(包括XHTML)、层叠样式表(Cascading Style Sheet,CSS)和采用JavaScript编写的域对象模型(Domain Object Model,DOM)脚本(也称为ECMAScript,因为其JavaScript名称已经被Sun Microsystems注册)。在Web的早期发展阶段中,出现了两个流行的浏览器:于1994年12月发布的Netscape Navigator和于1995年8月发布的Microsoft Internet Explorer(IE)。这两个浏览器都基于类似的底层源代码,并且以类似的方式呈现Web页面。当然,当时Web页面的外观与现在所看

15、到的Web页面有很大的区别,因此这两种浏览器可以相对方便地呈现Web页面。时间来到1996年,事情开始变得更加有趣。Microsoft在IE3中引入了对W3C新规范CSS Level 1的基本支持。该规范为Web开发人员定义了对大多数页面元素应用如下方面的方法:字体和颜色格式:文本对齐;外边距、边框和内边距。Netscape不久也开始遵循该规范,这两个浏览器制造商之间的竞争开始激烈化。在新的、即将出现的W3C规范成为主流之前,这两个制造商就已经开始尝试实现这些规范。这种浏览器支持标准的不断变化自然就导致了Web开发人员的混淆,他们通常倾向于只为其中一种情况进行设计。这就导致最终用户不得不面对显示如下消息的Web站点:“该Web站点只能工作于Internet Explorer。请升级您的浏览器(This web site works only in Internet Explorer. Please upgrade your browser.)”。当然,W3C规范仅仅是推荐浏览器开发商和Web开发人员遵循的规范。开发人员必须只有在这些规范的实际实现对于常见的Web浏览器有用时才考虑使用它们。随着时间的流逝,各种浏览器必然会达成统一的Web标准实现。但是,仍然有一些较早版本的浏览器,这些浏览器在呈现Web页面方面采用不适当的标准,Web开发人员必须考

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号