1宛蚓、HTML
1.1六孵、Web頁面幾乎全由HTML構(gòu)建
HTML(HyperText Markup Language嵌削,超文本標(biāo)記語言)是為了發(fā)送Web上的超文本而開發(fā)的標(biāo)記語言吓歇。超文本是一種文檔系統(tǒng)一铅,可將文檔中任意位置的信息與其他信息(文本或圖片等)建立關(guān)聯(lián),即超鏈接文本典予。標(biāo)記語言是指通過在文檔的某部分穿插特別的字符串標(biāo)簽甜滨,用來修飾文檔的語言。我們把出現(xiàn)在HTML文檔內(nèi)的這種特殊字符串叫做HTML標(biāo)簽(Tag)瘤袖。平時我們?yōu)g覽的Web頁面幾乎全是使用HTML寫成的衣摩。由HTML構(gòu)成的文檔經(jīng)過瀏覽器的解析、渲染后捂敌,呈現(xiàn)出來的結(jié)果就是Web頁面艾扮。
1.2、HTML的版本
Tim Berents-Lee提出HTTP概念的同時占婉,還提出了HTML原型泡嘴。1993年在伊利諾伊大學(xué)的NCSA(The National Center for Supercomputing Applications,國家超級計算機(jī)應(yīng)用中心)發(fā)布了Mosaic瀏覽器(世界首個圖形界面瀏覽器程序)逆济,而能夠被Mosaic解析后的HTML酌予,統(tǒng)一標(biāo)準(zhǔn)后即作為HTML1.0發(fā)布。
目前的最新版本是HTML5.0標(biāo)準(zhǔn)奖慌,2014年10月28日作為W3C推薦標(biāo)準(zhǔn)發(fā)布抛虫。HTML5標(biāo)準(zhǔn)不僅解決了瀏覽器之間的兼容性問題,并且可把文本作為數(shù)據(jù)對待简僧,更容易復(fù)用建椰,動畫等效果也變得更生動。
1.3岛马、設(shè)計應(yīng)用CSS
CSS(Cascading Style Sheets棉姐,層疊樣式表)可以指定如何展現(xiàn)HTML內(nèi)的各種元素,屬于樣式表標(biāo)準(zhǔn)之一蛛枚。即使是相同的HTML文檔谅海,通過改變應(yīng)用的CSS脸哀,用瀏覽器看到的頁面外觀也會隨之改變蹦浦。CSS的理念就是讓文檔的結(jié)構(gòu)和設(shè)計分離,達(dá)到解耦的目的撞蜂。
2盲镶、動態(tài)HTML
1.讓W(xué)eb頁面動起來的動態(tài)HTML
所謂動態(tài)HTML(Dynamic HTML),是指使用客戶端腳本語言將靜態(tài)的HTML內(nèi)容變成動態(tài)的技術(shù)的總稱。鼠標(biāo)單擊點開的新聞蝌诡、Google Maps等可滾動的地圖就用到了動態(tài)HTML溉贿。
動態(tài)HTML技術(shù)是通過調(diào)用客戶端腳本語言JavaScript,實現(xiàn)對HTML的Web頁面的動態(tài)改造浦旱。利用DOM(Document Object Model宇色,文檔對象模型)可指定預(yù)發(fā)生動態(tài)變化的HTML元素。
2.更易控制HTML的DOM
DOM是用以操作HTML文檔和XML文檔的API(Application Programming Interface,應(yīng)用編程接口)宣蠕。使用DOM可以將HTML內(nèi)的元素當(dāng)作對象操作例隆,如取出元素內(nèi)的字符串、改變那個CSS的屬性等抢蚀,使頁面的設(shè)計發(fā)生改變镀层。通過調(diào)用JavaScript等腳本語言對DOM的操作,可以以更為簡單的方式控制HTML的改變皿曲。
3.Web應(yīng)用
1.通過Web提供功能的Web應(yīng)用
Web應(yīng)用是指通過Web功能提供的應(yīng)用程序唱逢。比如購物網(wǎng)站、網(wǎng)上銀行屋休、SNS坞古、BBS、搜索引擎和e-learning等劫樟。原本應(yīng)用HTTP協(xié)議的Web的機(jī)制就是對客戶端發(fā)來的請求绸贡,返回事前準(zhǔn)備好的內(nèi)容∫慊可隨著Web越來越普及听怕,僅靠這樣的做法已不足以應(yīng)對所有的需求,更需要引入由程序創(chuàng)建HTML內(nèi)容的做法虑绵。類似這種由程序創(chuàng)建的內(nèi)容稱為動態(tài)內(nèi)容尿瞭,而事先準(zhǔn)備好的內(nèi)容稱為靜態(tài)內(nèi)容,Web應(yīng)用則作用于動態(tài)內(nèi)容之上翅睛。
2.與Web服務(wù)器及程序協(xié)作的CGI
CGI(Common Gateway Interface声搁,通用網(wǎng)關(guān)接口)是指Web服務(wù)器在接收到客戶端發(fā)送過來的請求后轉(zhuǎn)發(fā)給程序的一組機(jī)制。在CGI的作用下捕发,程序會對請求內(nèi)容做出相應(yīng)的動作疏旨,比如創(chuàng)建HTML等動態(tài)內(nèi)容。使用CGI的程序叫做CGI程序扎酷,通常是用Perl檐涝、PHP、Ruby和C等編程語言編寫而成法挨。
3.因Java而普及的Servlet
Servlet是一種能在服務(wù)器上創(chuàng)建動態(tài)內(nèi)容的程序谁榜。Servlet是用Java語言實現(xiàn)的一個接口,屬于面向企業(yè)級Java(JavaEE凡纳,JavaEnterprise窃植,Edition)的一部分。之前提及的CGI荐糜,由于每次接到請求巷怜,程序都要跟著啟動一次葛超。因此一旦訪問量過大,Web服務(wù)器要承擔(dān)相當(dāng)大的負(fù)載延塑,而Servlet運(yùn)行在與Web服務(wù)器相同的進(jìn)程中巩掺,因此受到的負(fù)載較小。Servlet的運(yùn)行環(huán)境叫做Web容器或Servlet容器页畦。Servlet作為解決CGI問題的對抗技術(shù)胖替,隨Java一起得到普及。
4豫缨、數(shù)據(jù)發(fā)布的格式及語言
1.可擴(kuò)展標(biāo)記語言
XML(eXtensible Markup Language独令,可擴(kuò)展標(biāo)記語言)是一種可按應(yīng)用目標(biāo)進(jìn)行擴(kuò)展的通用標(biāo)記語言。旨在通過使用XML好芭,使互聯(lián)網(wǎng)數(shù)據(jù)共享變得更容易燃箭。XML和HTML都是從標(biāo)準(zhǔn)通用標(biāo)記語言SGML(Standard Generalized Markup)簡化而成。與HTML相比舍败,它對數(shù)據(jù)的記錄方式做了特殊處理招狸。和HTML一樣,使用標(biāo)簽構(gòu)成樹形機(jī)構(gòu)邻薯,并且可自定義擴(kuò)展標(biāo)簽裙戏。從XML文檔中讀取數(shù)據(jù)比起HTML更為簡單。由于XML的結(jié)構(gòu)基本上都是用標(biāo)簽分割而成的樹形結(jié)構(gòu)厕诡,因此通過語法分析器的解析功能解析XML結(jié)構(gòu)并取出數(shù)據(jù)元素累榜,可更容易地對數(shù)據(jù)進(jìn)行讀取。更容易地復(fù)用數(shù)據(jù)使得XML在互聯(lián)網(wǎng)上被廣泛接受灵嫌。
2.發(fā)布更新信息的RSS/Atom
RSS(簡易信息聚合壹罚,也叫聚合內(nèi)容)和Atom都是發(fā)布新聞或博客日志等更新信息文檔的格式的總稱。兩者都用到了XML
3.JavaScript衍生的輕量級易用JSON
JSON(JavaScript Object Notation)是一種以JavaScript(ECMAScript)的對象表示法為基礎(chǔ)的輕量級數(shù)據(jù)標(biāo)記語言寿羞。能夠處理的數(shù)據(jù)類型有false/null/true/對象/數(shù)組/數(shù)字/字符串猖凛,這七種類型。JSON讓數(shù)據(jù)更輕更純粹绪穆,并且JSON的字符串可被JavaScript輕易地讀入辨泳。當(dāng)初配合XML使用的Ajax技術(shù)也讓JSON的應(yīng)用變得更為廣泛。另外霞幅,其他各種語言也提供豐富的庫類漠吻,以達(dá)到輕便操作JSON的目的量瓜。