|
Web開(kāi)發(fā)是比較費(fèi)神的,需要掌握很多很多的東西,特別是從事前端開(kāi)發(fā)的朋友,需要通十行才行。今天,本文向初學(xué)者介紹一些Web開(kāi)發(fā)中的基本概念和用到的技術(shù),從A到Z總共26項(xiàng),每項(xiàng)對(duì)應(yīng)一個(gè)概念或者技術(shù)。
A — AJAX
AJAX 全稱(chēng)為“Asynchronous JavaScript and XML”(異步JavaScript和XML),是一種創(chuàng)建交互式網(wǎng)頁(yè)應(yīng)用的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)。根據(jù)Ajax提出者Jesse James Garrett建議,AJAX:
- 使用XHTML+CSS來(lái)表示信息;
- 使用JavaScript操作DOM(Document Object Model)進(jìn)行動(dòng)態(tài)顯示及交互;
- 使用XML和XSLT進(jìn)行數(shù)據(jù)交換及相關(guān)操作;
- 使用XMLHttpRequest對(duì)象與Web服務(wù)器進(jìn)行異步數(shù)據(jù)交換;
- 使用JavaScript將所有的東西綁定在一起。
類(lèi)似于DHTML或LAMP,AJAX不是指一種單一的技術(shù),而是有機(jī)地利用了一系列相關(guān)的技術(shù)。事實(shí)上,一些基于AJAX的“派生/合成”式(derivative/composite)的技術(shù)正在出現(xiàn),如AFLAX。
B — Browser
網(wǎng)頁(yè)瀏覽器 是個(gè)顯示網(wǎng)頁(yè)服務(wù)器或文件系統(tǒng)內(nèi)的文件,并讓用戶(hù)與此些文件交互的一種軟件。它用來(lái)顯示在萬(wàn)維網(wǎng)或局域網(wǎng)等內(nèi)的文字、圖像及其他信息。這些文字或圖像,可以是連接其他網(wǎng)址的超連結(jié),用戶(hù)可迅速及輕易地瀏覽各種信息。大部分網(wǎng)頁(yè)為HTML格式,有些網(wǎng)頁(yè)需特定瀏覽器才能正確顯示。個(gè)人電腦上常見(jiàn)的網(wǎng)頁(yè)瀏覽器按照2010年1月的市場(chǎng)占有率依次是微軟的InterNET Explorer、Mozilla的Firefox、Google的Google Chrome、蘋(píng)果公司的Safari和Opera軟件公司的Opera。瀏覽器是最經(jīng)常使用到的客戶(hù)端程序。Web開(kāi)發(fā)人員應(yīng)該確保其程序在各個(gè)主流瀏覽器中都能正常工作。
C — CSS
層疊樣式表,又稱(chēng):串樣式列表,英文:Cascading Style Sheets,簡(jiǎn)寫(xiě)為CSS,由W3C定義和維護(hù)的標(biāo)準(zhǔn),一種用來(lái)為結(jié)構(gòu)化文檔(如HTML文檔或XML應(yīng)用)添加樣式(字體、間距和顏色等)的計(jì)算機(jī)語(yǔ)言。目前最新版本是CSS 2.1,為W3C的候選推薦標(biāo)準(zhǔn)。下一版本CSS 3仍然在開(kāi)發(fā)過(guò)程中。
D — DOM
文檔對(duì)象模型(Document Object Model,簡(jiǎn)稱(chēng)DOM),是W3C組織推薦的處理可擴(kuò)展置標(biāo)語(yǔ)言的標(biāo)準(zhǔn)編程接口。Document Object Model的歷史可以追溯至1990年代后期微軟與NETscape的“瀏覽器大戰(zhàn)”(browser wars),雙方為了在JavaScript與JScript一決生死,于是大規(guī)模的賦予瀏覽器強(qiáng)大的功能。微軟在網(wǎng)頁(yè)技術(shù)上加入了不少專(zhuān)屬事物,計(jì)有VBScript、ActiveX、以及微軟自家的DHTML格式等,使不少網(wǎng)頁(yè)使用非微軟平臺(tái)及瀏覽器無(wú)法正常顯示。DOM即是當(dāng)時(shí)蘊(yùn)釀出來(lái)的杰作。
E — Events
事件 是可以被控件識(shí)別的操作,如按下確定按鈕,選擇某個(gè)單選按鈕或者復(fù)選框。每一種控件有自己可以識(shí)別的事件,如窗體的加載、單擊、雙擊等事件,編輯框(文本框)的文本改變事,等等,現(xiàn)代的Web應(yīng)用程序很大程度上依靠事件驅(qū)動(dòng)。
事件有系統(tǒng)事件和用戶(hù)事件。系統(tǒng)事件由系統(tǒng)激發(fā),如時(shí)間每隔24小時(shí),銀行儲(chǔ)戶(hù)的存款日期增加一天。用戶(hù)事件由用戶(hù)激發(fā),如用戶(hù)點(diǎn)擊按鈕,在文本框中顯示特定的文本。事件驅(qū)動(dòng)控件執(zhí)行某項(xiàng)功能。觸發(fā)事件的對(duì)象稱(chēng)為事件發(fā)送者;接收事件的對(duì)象稱(chēng)為事件接收者。
使用事件機(jī)制可以實(shí)現(xiàn):當(dāng)類(lèi)對(duì)象的某個(gè)狀態(tài)發(fā)生變化時(shí),系統(tǒng)將會(huì)通過(guò)某種途徑調(diào)用類(lèi)中的有關(guān)處理這個(gè)事件的方法或者觸發(fā)控件事件的對(duì)象就會(huì)調(diào)用該控件所有已注冊(cè)的事件處理程序等。
F — Firebug
Firebug 是網(wǎng)頁(yè)瀏覽器 Mozilla Firefox 的一個(gè)擴(kuò)展,是一個(gè)除錯(cuò)工具。用戶(hù)可以利用它除錯(cuò)、編輯、甚至刪改任何網(wǎng)站的 CSS、HTML、DOM、與 JavaScript 代碼。Firebug 也有提供其他網(wǎng)頁(yè)開(kāi)發(fā)工具,例如 Yahoo! 的網(wǎng)頁(yè)速度優(yōu)化建議工具YSlow。Firebug是哈維(Joe Hewitt)撰寫(xiě)的。他是最初Firefox創(chuàng)始者之一。
G — Grid
網(wǎng)格,也稱(chēng)柵格,不過(guò)從定義上說(shuō),柵格更為準(zhǔn)確些。網(wǎng)上找個(gè)一個(gè)對(duì)網(wǎng)頁(yè)柵格系統(tǒng)比較恰當(dāng)?shù)?a href="http://www.blueidea.com/design/doc/2008/6171.ASP" target="_blank">定義:以規(guī)則的網(wǎng)格陣列來(lái)指導(dǎo)和規(guī)范網(wǎng)頁(yè)中的版面布局以及信息分布。網(wǎng)頁(yè)柵格系統(tǒng)是從平面柵格系統(tǒng)中發(fā)展而來(lái)。對(duì)于網(wǎng)頁(yè)設(shè)計(jì)來(lái)說(shuō),柵格系統(tǒng)的使用,不僅可以讓網(wǎng)頁(yè)的信息呈現(xiàn)更加美觀易讀,更具可用性。而且,對(duì)于前端開(kāi)發(fā)來(lái)說(shuō),網(wǎng)頁(yè)將更加的靈活與規(guī)范。如果有很多CSS框架支持柵格功能,可參考文章《介紹27款經(jīng)典的CSS框架》。
H — HTML
超文本置標(biāo)語(yǔ)言(英文:HyperText Markup Language,HTML)是為“網(wǎng)頁(yè)創(chuàng)建和其它可在網(wǎng)頁(yè)瀏覽器中看到的信息”設(shè)計(jì)的一種置標(biāo)語(yǔ)言。HTML被用來(lái)結(jié)構(gòu)化信息——例如標(biāo)題、段落和列表等等,也可用來(lái)在一定程度上描述文檔的外觀和語(yǔ)義。由蒂姆·伯納斯-李給出原始定義,由IETF用簡(jiǎn)化的SGML(標(biāo)準(zhǔn)通用置標(biāo)語(yǔ)言)語(yǔ)法進(jìn)行進(jìn)一步發(fā)展的HTML,后來(lái)成為國(guó)際標(biāo)準(zhǔn),由萬(wàn)維網(wǎng)聯(lián)盟(W3C)維護(hù)。
最新版本是HTML5它是HTML下一個(gè)的主要修訂版本,現(xiàn)在仍處于發(fā)展階段。目標(biāo)是取代1999年所定訂的HTML 4.01和XHTML 1.0 標(biāo)準(zhǔn),以期能在互聯(lián)網(wǎng)應(yīng)用迅速發(fā)展的時(shí)候,使網(wǎng)絡(luò)標(biāo)準(zhǔn)達(dá)到符合當(dāng)代的網(wǎng)絡(luò)需求。廣義論及HTML5時(shí),實(shí)際指的是包括HTML、CSS和JavaScript在內(nèi)的一套技術(shù)組合。
I — IE
Windows InterNET Explorer(舊稱(chēng)Microsoft InterNET Explorer,簡(jiǎn)稱(chēng)InterNET Explorer,縮寫(xiě)IE),是微軟公司推出的一款網(wǎng)頁(yè)瀏覽器。截至2010年9月止,統(tǒng)計(jì)的數(shù)據(jù)顯示InterNET Explorer的市場(chǎng)占有率高達(dá)59.65%。雖然它依然是使用最廣泛的網(wǎng)頁(yè)瀏覽器,但與2003年最高峰時(shí)相比,市場(chǎng)占有率相差超過(guò)30%。
InterNET Explorer對(duì)一些標(biāo)準(zhǔn)化技術(shù)都有一定程度上的支持,但亦有很多運(yùn)行上的差距和兼容性的故障 ,這導(dǎo)致技術(shù)開(kāi)發(fā)者的批評(píng)日益增加。批評(píng)增加的情況,在很大程度上是歸因于InterNET Explorer的競(jìng)爭(zhēng)對(duì)手相對(duì)地已提供完全的技術(shù)支持,標(biāo)準(zhǔn)規(guī)格(Standards-compliant)的應(yīng)用亦越來(lái)越廣泛起來(lái)。因?yàn)镮nterNET Explorer在全球廣為應(yīng)用,網(wǎng)絡(luò)開(kāi)發(fā)者們?cè)趯で?a title="跨平臺(tái)" >跨平臺(tái)的代碼時(shí)常常會(huì)發(fā)現(xiàn)InterNET Explorer的漏洞、私有的功能集合和對(duì)標(biāo)準(zhǔn)支持的不完善。
2011年3月14日發(fā)布的InterNET Explorer 9瀏覽器大幅提高對(duì)CSS3和HTML5等W3C規(guī)范的支持程度,這個(gè)版本也是InterNET Explorer瀏覽器第一個(gè)采用GPU加速的版本,正式版于Acid3測(cè)試中獲得95/100分,相比以往版本有很大進(jìn)步。可以認(rèn)為,從InterNET Explorer 9開(kāi)始,InterNET Explorer瀏覽器對(duì)W3C規(guī)范的支持將不再是問(wèn)題。
J — JavaScript
JavaScript 是一種廣泛用于客戶(hù)端Web開(kāi)發(fā)的腳本語(yǔ)言,常用來(lái)給HTML網(wǎng)頁(yè)添加動(dòng)態(tài)功能,比如響應(yīng)用戶(hù)的各種操作。它最初由網(wǎng)景公司的Brendan Eich設(shè)計(jì),是一種動(dòng)態(tài)、弱類(lèi)型、基于原型的語(yǔ)言,內(nèi)置支持類(lèi)。JavaScript是Sun公司的注冊(cè)商標(biāo)。Ecma國(guó)際以JavaScript為基礎(chǔ)制定了ECMAScript標(biāo)準(zhǔn)。JavaScript也可以用于其他場(chǎng)合,如服務(wù)器端編程。完整的JavaScript實(shí)現(xiàn)包含三個(gè)部分:ECMAScript,文檔對(duì)象模型,字節(jié)順序記號(hào)。
NETscape公司在最初將其腳本語(yǔ)言命名為L(zhǎng)iveScript來(lái)NETscape在與Sun合作之后將其改名為JavaScript。JavaScript最初受Java啟發(fā)而開(kāi)始設(shè)計(jì)的,目的之一就是“看上去像Java”,因此語(yǔ)法上有類(lèi)似之處,一些名稱(chēng)和命名規(guī)范也借自Java。但JavaScript的主要設(shè)計(jì)原則源自Self和Scheme.JavaScript與Java名稱(chēng)上的近似,是當(dāng)時(shí)網(wǎng)景為了營(yíng)銷(xiāo)考慮與Sun公司達(dá)成協(xié)議的結(jié)果。為了取得技術(shù)優(yōu)勢(shì),微軟推出了JScript來(lái)迎戰(zhàn)JavaScript的腳本語(yǔ)言。為了互用性,Ecma國(guó)際(前身為歐洲計(jì)算機(jī)制造商協(xié)會(huì))創(chuàng)建了ECMA-262標(biāo)準(zhǔn)(ECMAScript)。現(xiàn)在兩者都屬于ECMAScript的實(shí)現(xiàn)。盡管JavaScript作為給非程序人員的腳本語(yǔ)言,而非作為給程序人員的編程語(yǔ)言來(lái)推廣和宣傳,但是JavaScript具有非常豐富的特性。
K — Keyword Optimization
關(guān)鍵詞優(yōu)化,也叫搜索引擎優(yōu)化(Search Engine Optimization,簡(jiǎn)稱(chēng)SEO)是一種利用搜索引擎的搜索規(guī)則來(lái)提高目的網(wǎng)站在有關(guān)搜索引擎內(nèi)的排名的方式。由于不少研究發(fā)現(xiàn),搜索引擎的用戶(hù)往往只會(huì)留意搜索結(jié)果最前面的幾個(gè)條目,所以不少網(wǎng)站都希望通過(guò)各種形式來(lái)影響搜索引擎的排序。當(dāng)中尤以各種依靠廣告維生的網(wǎng)站為甚。
所謂“針對(duì)搜索引擎作優(yōu)化的處理”,是指為了要讓網(wǎng)站更容易被搜索引擎接受。搜索引擎會(huì)將網(wǎng)站彼此間的內(nèi)容做一些相關(guān)性的數(shù)據(jù)比對(duì),然后再由瀏覽器將這些內(nèi)容以最快速且接近最完整的方式,體現(xiàn)給搜索者。
搜索引擎優(yōu)化對(duì)于任何一家網(wǎng)站來(lái)說(shuō),要想在網(wǎng)站推廣中取得成功,搜索引擎優(yōu)化都是至為關(guān)鍵的一項(xiàng)任務(wù)。同時(shí),隨著搜索引擎不斷變換它們的排名算法規(guī)則,每次算法上的改變都會(huì)讓一些排名很好的網(wǎng)站在一夜之間名落孫山,而失去排名的直接后果就是失去了網(wǎng)站固有的可觀訪問(wèn)量。所以每次搜索引擎算法的改變都會(huì)在網(wǎng)站之中引起不小的騷動(dòng)和焦慮。可以說(shuō),搜索引擎優(yōu)化是一個(gè)愈來(lái)愈復(fù)雜的任務(wù)。
L — Less
Less 最早是一個(gè)ruby的gem,讓CSS具有動(dòng)態(tài)語(yǔ)言的特性,這些特性包括變量,操作符,嵌套規(guī)則。其實(shí)Less真正的作用是將使用高級(jí)特性的CSS轉(zhuǎn)換成標(biāo)準(zhǔn)的CSS。這些都是在Web客戶(hù)端發(fā)起請(qǐng)求時(shí)通過(guò)Http Handler來(lái)完成的。也可以是編輯時(shí)就完成的。此外,Less可以配置成自動(dòng)最小化所生成的CSS文件,不僅節(jié)省了帶寬,并且使最終用戶(hù)體驗(yàn)更上一層。另外有.NET版本的Less。
M — MVC
MVC模式(Model-View-Controller)是軟件工程中的一種軟件架構(gòu)模式,把軟件系統(tǒng)分為三個(gè)基本部分:模型(Model)、視圖(View)和控制器(Controller)。MVC模式最早由Trygve Reenskaug在1974年提出,是施樂(lè)帕羅奧多研究中心(Xerox PARC)在20世紀(jì)80年代為程序語(yǔ)言Smalltalk發(fā)明的一種軟件設(shè)計(jì)模式。MVC模式的目的是實(shí)現(xiàn)一種動(dòng)態(tài)的程序設(shè)計(jì),使后續(xù)對(duì)程序的修改和擴(kuò)展簡(jiǎn)化,并且使程序某一部分的重復(fù)利用成為可能。除此之外,此模式通過(guò)對(duì)復(fù)雜度的簡(jiǎn)化,使程序結(jié)構(gòu)更加直觀。軟件系統(tǒng)通過(guò)對(duì)自身基本部份分離的同時(shí)也賦予了各個(gè)基本部分應(yīng)有的功能。
N — Node.JS
Node 是一個(gè)Javascript運(yùn)行環(huán)境(runtime),實(shí)際上它是對(duì)Google V8引擎(應(yīng)用于Google Chrome瀏覽器)進(jìn)行了封裝。V8引 擎執(zhí)行Javascript的速度非常快,性能非常好。Node對(duì)一些特殊用例進(jìn)行了優(yōu)化,提供了替代的API,使得V8在非瀏覽器環(huán)境下運(yùn)行得更好。例 如,在服務(wù)器環(huán)境中,處理二進(jìn)制數(shù)據(jù)通常是必不可少的,但Javascript對(duì)此支持不足,因此,V8.Node增加了Buffer類(lèi),方便并且高效地 處理二進(jìn)制數(shù)據(jù)。因此,Node不僅僅簡(jiǎn)單的使用了V8,還對(duì)其進(jìn)行了優(yōu)化,使其在各環(huán)境下更加給力。Node.js包羅萬(wàn)象,但最主要的一點(diǎn)是,它提供了一種在Web瀏覽器之外運(yùn)行Javascript的途徑。Javascript廣泛應(yīng)用于網(wǎng)站的前端開(kāi)發(fā)。Node使得這種流行的編程語(yǔ)言能夠在更多環(huán)境下運(yùn)行,甚至是網(wǎng)站的服務(wù)器端。
O — Object
對(duì)象(object),是面向?qū)ο?/a>(Object Oriented) 中的術(shù)語(yǔ),既表示客觀世界問(wèn)題空間(Namespace)中的某個(gè)具體的事物,又表示軟件系統(tǒng)解空間中的基本元素。在軟件系統(tǒng)中,對(duì)象具有唯一的標(biāo)識(shí)符,對(duì)象包括屬性(Properties)和方法(Methods),屬性就是需要記憶的信息,方法就是對(duì)象能夠提供的服務(wù)。在面向?qū)ο?Object Oriented) 的軟件中,對(duì)象(Object)是某一個(gè)類(lèi)(Class)的實(shí)例(Instance)。
P — php
php(Hypertext Preprocessor)是一種在電腦上運(yùn)行的腳本語(yǔ)言,主要用途是在于處理動(dòng)態(tài)網(wǎng)頁(yè),也包含了命令行運(yùn)行接口(command line interface),或者產(chǎn)生圖形用戶(hù)界面(GUI)程序。php最早由Rasmus Lerdorf在1995年發(fā)明,而現(xiàn)在php的標(biāo)準(zhǔn)由php Group和開(kāi)放源代碼社區(qū)維護(hù)。php以php License作為許可協(xié)議,不過(guò)因?yàn)檫@個(gè)協(xié)議限制了php名稱(chēng)的使用,所以和開(kāi)放源代碼許可協(xié)議GPL不兼容。
php的應(yīng)用范圍相當(dāng)廣泛,尤其是在網(wǎng)頁(yè)程序的開(kāi)發(fā)上。一般來(lái)說(shuō)php大多運(yùn)行在網(wǎng)頁(yè)服務(wù)器上,通過(guò)運(yùn)行php代碼來(lái)產(chǎn)生用戶(hù)瀏覽的網(wǎng)頁(yè)。php可以在多數(shù)的服務(wù)器和操作系統(tǒng)上運(yùn)行,而且使用php完全是免費(fèi)的。根據(jù)2007年4月的統(tǒng)計(jì)數(shù)據(jù),php已經(jīng)被安裝在超過(guò)2000萬(wàn)個(gè)網(wǎng)站和100萬(wàn)臺(tái)服務(wù)器上。
Q — Query
查詢(xún),有很多種意思。例如查詢(xún)語(yǔ)言用來(lái)和存儲(chǔ)數(shù)據(jù)的擴(kuò)展系統(tǒng)交互,一個(gè)很好的例子就是SQL用來(lái)操作關(guān)系數(shù)據(jù)庫(kù)。另一種意思是,一個(gè)查詢(xún)字符串,作為URL的一部分用于Web應(yīng)用程序中傳遞數(shù)據(jù),查詢(xún)字符串的格式一般是鍵值對(duì)形式。
R — Regular Expressions
正則表達(dá)式(英語(yǔ):Regular Expression、regex或regexp,縮寫(xiě)為RE),也譯為正規(guī)表示法、常規(guī)表示法,在計(jì)算機(jī)科學(xué)中,是指一個(gè)用來(lái)描述或者匹配一系列符合某個(gè)句法規(guī)則的字符串的單個(gè)字符串。在很多文本編輯器或其他工具里,正則表達(dá)式通常被用來(lái)檢索和/或替換那些符合某個(gè)模式的文本內(nèi)容。許多程序設(shè)計(jì)語(yǔ)言都支持利用正則表達(dá)式進(jìn)行字符串操作。例如,在Perl中就內(nèi)建了一個(gè)功能強(qiáng)大的正則表達(dá)式引擎。正則表達(dá)式這個(gè)概念最初是由Unix中的工具軟件(例如sed和grep)普及開(kāi)的。
S — Source Control
源代碼管理,也稱(chēng)版本控制,是一種軟件工程技巧,借此能在軟件開(kāi)發(fā)的過(guò)程中,確保由不同人所編輯的同一程式檔案都得到同步。軟件設(shè)計(jì)師常會(huì)利用版本控制來(lái)追蹤、維護(hù)源碼、文件以及設(shè)定檔等等的更動(dòng),并且提供控制這些更動(dòng)控制權(quán)的程序。在最簡(jiǎn)單的情況下,軟件設(shè)計(jì)師可以自己保留一個(gè)程式的許多不同版本,并且為它們做適當(dāng)?shù)木幪?hào)。這種簡(jiǎn)單的方法已被用在很多大型的軟件專(zhuān)案中。這是一個(gè)可以達(dá)到目的的方法,但不夠有效率。除了得同時(shí)維護(hù)很多幾乎一樣的程式碼備份外;而且極度依賴(lài)軟件設(shè)計(jì)師的自我修養(yǎng)與開(kāi)發(fā)紀(jì)律,但這卻常是導(dǎo)致錯(cuò)誤發(fā)生的原因。
有時(shí)候,一個(gè)程式同時(shí)存有兩個(gè)以上的版本也有其必要性,例如:在一個(gè)為了部署的版本中程式錯(cuò)誤已經(jīng)被修正、但沒(méi)有加入新功能;在另一個(gè)開(kāi)發(fā)版本則有新的功能正在開(kāi)發(fā)、也有新的錯(cuò)誤待解決,這使得同時(shí)間需要不同的版本并修改。此外,為了找出只存在于某一特定版本中的程式錯(cuò)誤、或找出程式錯(cuò)誤出現(xiàn)的版本,軟件除錯(cuò)者也必須借由比對(duì)不同版本的程式碼以找出問(wèn)題的位置。
T — TDD
測(cè)試驅(qū)動(dòng)開(kāi)發(fā)(Test-driven development)是現(xiàn)代計(jì)算機(jī)軟件開(kāi)發(fā)方法的一種。利用測(cè)試來(lái)驅(qū)動(dòng)軟件程序的設(shè)計(jì)和實(shí)現(xiàn)。測(cè)試驅(qū)動(dòng)開(kāi)始流行于20世紀(jì)90年代。測(cè)試驅(qū)動(dòng)開(kāi)發(fā)是極限編程中倡導(dǎo)的程序開(kāi)發(fā)方法,方法主要是先寫(xiě)測(cè)試程序,然后再編碼使其通過(guò)測(cè)試。測(cè)試驅(qū)動(dòng)開(kāi)發(fā)的目的是取得快速反饋并使用“illustrate the main line”方法來(lái)構(gòu)建程序。
測(cè)試驅(qū)動(dòng)開(kāi)發(fā)的比喻。開(kāi)發(fā)可以從兩個(gè)方面去看待:實(shí)現(xiàn)的功能和質(zhì)量。測(cè)試驅(qū)動(dòng)開(kāi)發(fā)更像兩頂帽子思考法的開(kāi)發(fā)方式,先戴上實(shí)現(xiàn)功能的帽子,在測(cè)試的輔助下,快速實(shí)現(xiàn)正確的功能;再戴上重構(gòu)的帽子,在測(cè)試的保護(hù)下,通過(guò)去除冗余和重復(fù)的代碼,提高代碼重用性,實(shí)現(xiàn)對(duì)質(zhì)量的改進(jìn)。可見(jiàn)測(cè)試在測(cè)試驅(qū)動(dòng)開(kāi)發(fā)中確實(shí)屬于核心地位,貫穿了開(kāi)發(fā)的始終。
U — Unit Testing
單元測(cè)試(又稱(chēng)為模塊測(cè)試)是針對(duì)程序模塊(軟件設(shè)計(jì)的最小單位)來(lái)進(jìn)行正確性檢驗(yàn)的測(cè)試工作。程序單元是應(yīng)用的最小可測(cè)試部件。在過(guò)程化編程中,一個(gè)單元就是單個(gè)程序、函數(shù)、過(guò)程等;對(duì)于面向?qū)ο缶幊蹋钚卧褪欠椒ǎɑ?lèi)(超類(lèi))、抽象類(lèi)、或者派生類(lèi)(子類(lèi))中的方法。
通常來(lái)說(shuō),程序員每修改一次程序就會(huì)進(jìn)行最少一次單元測(cè)試,在編寫(xiě)程序的過(guò)程中前后很可能要進(jìn)行多次單元測(cè)試,以證實(shí)程序達(dá)到軟件規(guī)格書(shū)(en:Specification)要求的工作目標(biāo),沒(méi)有臭蟲(chóng);雖然單元測(cè)試不是什么必須的,但也不壞,這牽涉到項(xiàng)目管理的政策決定。
V — VIM
Vim 是從vi發(fā)展出來(lái)的一個(gè)文本編輯器。代碼補(bǔ)完、編譯及錯(cuò)誤跳轉(zhuǎn)等方便編程的功能特別豐富,在程序員中被廣泛使用。和Emacs并列成為類(lèi)Unix系統(tǒng)用戶(hù)最喜歡的編輯器。Vim的第一個(gè)版本由Bram Moolenaar在1991年發(fā)布。最初的簡(jiǎn)稱(chēng)是Vi IMitation,隨著功能的不斷增加,正式名稱(chēng)改成了Vi IMproved。現(xiàn)在是在開(kāi)放源代碼方式下發(fā)行的自由軟件。
W — WordPress
WordPress 是一種使用php語(yǔ)言開(kāi)發(fā)的博客平臺(tái),用戶(hù)可以在支持php和MySQL 數(shù)據(jù)庫(kù)的服務(wù)器上架設(shè)自己的網(wǎng)志。也可以把 WordPress 當(dāng)作一個(gè)內(nèi)容管理系統(tǒng)(CMS)來(lái)使用。WordPress 是一個(gè)免費(fèi)的開(kāi)源項(xiàng)目,在GNU通用公共許可證下授權(quán)發(fā)布。目前最新版本為2011年2月24日發(fā)布的3.0.5官方簡(jiǎn)體中文版,另外還有包括英文在內(nèi)的多種語(yǔ)言可選。
X — XSS
跨網(wǎng)站指令碼(Cross-site scripting,通常簡(jiǎn)稱(chēng)為XSS)是一種網(wǎng)站應(yīng)用程式的安全漏洞攻擊,允許惡意使用者將程式碼注入到網(wǎng)頁(yè)上,其他使用者在觀看網(wǎng)頁(yè)時(shí)就會(huì)受到影響。這類(lèi)攻擊通常包含了HTML以及使用者端腳本語(yǔ)言。
Y — YUI
Yahoo! UI Library (YUI) 是一個(gè)開(kāi)放源代碼的 JavaScript 函數(shù)庫(kù),為了能建立一個(gè)高互動(dòng)的網(wǎng)頁(yè),它采用了AJAX,DHTML 和 DOM 等程式碼技術(shù)。它也包含了許多 CSS 資源。
Z — Z index
Z-Index 是CSS屬性,設(shè)置元素的堆疊順序。擁有更高堆疊順序的元素總是會(huì)處于堆疊順序較低的元素的前面。該屬性設(shè)置一個(gè)定位元素沿 z 軸的位置,z 軸定義為垂直延伸到顯示區(qū)的軸。如果為正數(shù),則離用戶(hù)更近,為負(fù)數(shù)則表示離用戶(hù)更遠(yuǎn)。
it知識(shí)庫(kù):你知道嗎?Web的26項(xiàng)基本概念和技術(shù),轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。