什么叫腳本
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了阜城免費建站歡迎大家使用!
腳本script是使用一種特定的描述性語言,依據(jù)一定的格式編寫的可執(zhí)行文件,又稱作宏或批處理文件。腳本通??梢杂蓱?yīng)用程序臨時調(diào)用并執(zhí)行。各類腳本目前被廣泛地應(yīng)用于網(wǎng)頁設(shè)計中,因為腳本不僅可以減小網(wǎng)頁的規(guī)模和提高網(wǎng)頁瀏覽速度,而且可以豐富網(wǎng)頁的表現(xiàn),如動畫、聲音等。舉個最常見的例子,當(dāng)我們點擊網(wǎng)頁上的E-mail地址時能自動調(diào)用Outlook Express或Foxmail這類郵件軟件,就是通過腳本功能來實現(xiàn)的。又如洪恩網(wǎng)站?http?//www.hongen.com 一些網(wǎng)頁的英文新聞內(nèi)容旁會有一個三角符號,點擊它就可以聽到英文誦讀,這也是腳本在起作用。 也正因為腳本的這些特點,往往被一些別有用心的人所利用。例如在腳本中加入一些破壞計算機(jī)系統(tǒng)的命令,這樣當(dāng)用戶瀏覽網(wǎng)頁時,一旦調(diào)用這類腳本,便會使用戶的系統(tǒng)受到攻擊。所以用戶應(yīng)根據(jù)對所訪問網(wǎng)頁的信任程度選擇安全等級,特別是對于那些本身內(nèi)容就非法的網(wǎng)頁,更不要輕易允許使用腳本。通過“安全設(shè)置”對話框,選擇“腳本”選項下的各種設(shè)置就可以輕松實現(xiàn)對腳本的禁用和啟用。
動態(tài)程序一般有兩種實現(xiàn)方式,一是二進(jìn)制方式,一是腳本方式。
二進(jìn)制方式是先將我們編寫的程序進(jìn)行編譯,變成機(jī)器可識別的指令代碼(如.exe文件),然后再執(zhí)行。這種編譯好的程序我們只能執(zhí)行、使用,卻看不到他的程序內(nèi)容。
腳本簡單地說就是一條條的文字命令,這些文字命令是我們可以看到的(如可以用記事本打開查看、編輯),腳本程序在執(zhí)行時,是由系統(tǒng)的一個解釋器,將其一條條的翻譯成機(jī)器可識別的指令,并按程序順序執(zhí)行。因為腳本在執(zhí)行時多了一道翻譯的過程,所以它比二進(jìn)制程序執(zhí)行效率要稍低一些。
我們上面提到的各種動態(tài)語言,如ASP、PHP、CGI、JSP等,都是腳本語言。
按目前的服務(wù)規(guī)則,虛擬主機(jī)網(wǎng)站只能采用腳本語言來實現(xiàn)
腳本英文為Script。實際上腳本就是程序,一般都是有應(yīng)用程序提供的編程語言。應(yīng)用程序包括瀏覽器(javascript、VBScript)、多媒體創(chuàng)作工具,應(yīng)用程序的宏和創(chuàng)作系統(tǒng)的批處理語言也可以歸入腳本之類。腳本同我們平時使用的VB、C語言的區(qū)別主要是:
1、腳本語法比較簡單,比較容易掌握;
2、腳本與應(yīng)用程序密切相關(guān),所以包括相對應(yīng)用程序自身的功能;
3、腳本一般不具備通用性,所能處理的問題范圍有限。
--------------------------------------------------------------------------------
腳本就是源程序,就是代碼程序
--------------------------------------------------------------------------------
腳本英文為Script。實際上腳本就是程序,一般都是有應(yīng)用程序提供的編程語言。應(yīng)用程序包括瀏覽器(javascript、VBScript)、多媒體創(chuàng)作工具,應(yīng)用程序的宏和創(chuàng)作系統(tǒng)的批處理語言也可以歸入腳本之類
談到JavaScript的歷史,首先就得介紹[網(wǎng)景](Netscape)這家公司,相信很多人使用過Netscape瀏覽器來瀏覽網(wǎng)頁,這家公司在設(shè)計瀏覽器的時候,一方面為了輔助本身發(fā)展的一種名為LiveWire的程式,另一方面為了提高網(wǎng)頁設(shè)計的互動性,所以發(fā)展了LiveScript這個電腦語言。
那JavaScript和LiveScript有什么關(guān)系呢?在Netscape發(fā)展LiveScript的同時,另一家名為[升陽](Sun)的公司也正在發(fā)展Java語言,為了輔助Java的網(wǎng)頁程式方面的設(shè)計,所以這兩家公司進(jìn)行合作,共同發(fā)展LiveScript語言,并且將LiveScript語言改名為Javacript,這就是Javacript的由來。
當(dāng)時工作于Netscape的Brendan Eich,開始著手為即將在1995年發(fā)行的Netscape Navigator 2.0開發(fā)一個稱之為LiveScript的腳本語言,當(dāng)時的目的是同時在瀏覽器和服務(wù)器(本來要叫它LiveWire的)端使用它。Netscape與Sun公司聯(lián)手及時完成LiveScript實現(xiàn)。就在Netscape Navigator 2.0即將正式發(fā)布前,Netscape將其更名為JavaScript,目的是為了利用Java這個因特網(wǎng)時髦詞匯。Netspace的賭注最終得到回報,JavaScript從此變成了因特網(wǎng)的必備組件。
因為JavaScript 1.0如此成功,Netscape在Netscape Navigator 3.0中發(fā)布了1.1版。恰巧那個時候,微軟決定進(jìn)軍瀏覽器,發(fā)布了IE 3.0 并搭載了一個JavaScript的克隆版,叫做JScript(這樣命名是為了避免與Netscape潛在的許可糾紛)。微軟步入Web瀏覽器領(lǐng)域的這重要一步雖然令其聲名狼藉,但也成為JavaScript語言發(fā)展過程中的重要一步。
在微軟進(jìn)入后,有3種不同的JavaScript版本同時存在:Netscape Navigator 3.0中的Java- Script、IE中的JScript以及CEnvi中的ScriptEase。與C和其他編程語言不同的是,JavaScript并沒有一個標(biāo)準(zhǔn)來統(tǒng)一其語法或特性,而這3種不同的版本恰恰突出了這個問題。隨著業(yè)界擔(dān)心的增加,這個語言標(biāo)準(zhǔn)化顯然已經(jīng)勢在必行。
1997年,JavaScript 1.1作為一個草案提交給歐洲計算機(jī)制造商協(xié)會(ECMA)。第39技術(shù)委員會(TC39)被委派來“標(biāo)準(zhǔn)化一個通用、跨平臺、中立于廠商的腳本語言的語法和語義”()。由來自Netscape、Sun、微軟、Borland和其他一些對腳本編程感興趣的公司的程序員組成的TC39錘煉出了ECMA-262,該標(biāo)準(zhǔn)定義了叫做ECMAScript的全新腳本語言。
在接下來的幾年里,國際標(biāo)準(zhǔn)化組織及國際電工委員會(ISO/IEC)也采納ECMAScript作為標(biāo)準(zhǔn)(ISO/IEC-16262)。從此,Web瀏覽器就開始努力(雖然有著不同程度的成功和失?。CMAScript作為JavaScript實現(xiàn)的基礎(chǔ)。
盡管ECMAScript是一個重要的標(biāo)準(zhǔn),但它并不是JavaScript唯一的部分,當(dāng)然,也不是唯一被標(biāo)準(zhǔn)化的部分。實際上,一個完整的JavaScript實現(xiàn)是由以下3個不同部分組成的:
核心(ECMAScript)
文檔對象模型(DOM)
瀏覽器對象模型(BOM)
所以,Javascript 應(yīng)該是在 95-96年之間發(fā)布的,最初應(yīng)該是叫LiveScript主要是Netscape公司用于他們的瀏覽器(Netscape Navigator)
HTML5是做什么的?
極其簡單的概括:用于實現(xiàn)我們能夠看到的所有網(wǎng)站,但是不涉及到數(shù)據(jù)層面(也就是負(fù)責(zé)將一張設(shè)計好的網(wǎng)頁圖片[設(shè)計師的工作],用代碼實現(xiàn)出來,在一個地方放置個塊,給一個塊設(shè)置顏色,調(diào)整字體大小,讓圖片動起來等)。
HTML5的由來
不熟悉HTML5的人,可能會很熟悉一個2005年以前常用的詞語——網(wǎng)頁設(shè)計與制作。
隨著行業(yè)的發(fā)展,網(wǎng)站的制作越來越受到了人們的重視,社會化分工越來越明細(xì)。在2005年,“WEB前端開發(fā)工程師”這個詞語開始出現(xiàn)在各個一線城市。2008年,HTML5橫空出世,2009年HTML5這個全新的詞語在北京的一些頂尖級公司出現(xiàn),2012年,逐漸的普及開來,2014年迅速發(fā)展。
HTML5的基本組成
HTML5 = HTML + CSS + JavaScript
HTML指的是結(jié)構(gòu)
CSS指樣式
JS即JavaScript,指的是行為
關(guān)于結(jié)構(gòu)、樣式、行為的理解:
結(jié)構(gòu) - 在整個網(wǎng)頁中有標(biāo)題,有列表,有圖片等。
樣式 - 標(biāo)題文字的字體大小、顏色、字體;圖片的大小;某個塊的背景色或背景圖等。
行為 - 在網(wǎng)頁上四處飄動的廣告;圖片滾動;瀏覽淘寶時鼠標(biāo)移動到商品時,放大商品的效果等。
無技術(shù)基礎(chǔ),看懂HTML5
HTML的Script標(biāo)簽用于定義客戶端腳本,比如 JavaScript。
腳本(Script)是一種批處理文件的延伸,是一種純文本保存的程序,一般來說的計算機(jī)腳本程序是確定的一系列控制計算機(jī)進(jìn)行運算操作動作的組合,在其中可以實現(xiàn)一定的邏輯分支等。
超文本標(biāo)記語言簡稱HTML,標(biāo)準(zhǔn)通用標(biāo)記語言下的一個應(yīng)用。HTML 不是一種編程語言,而是一種標(biāo)記語言,是網(wǎng)頁制作所必備的。
“超文本”就是指頁面內(nèi)可以包含圖片、鏈接,甚至音樂、程序等非文字元素。超文本標(biāo)記語言的結(jié)構(gòu)包括“頭”部分、和“主體”部分,其中“頭”部提供關(guān)于網(wǎng)頁的信息,“主體”部分提供網(wǎng)頁的具體內(nèi)容。
擴(kuò)展資料:
Script主要特性:
1、語法和結(jié)構(gòu)通常比較簡單;
2、學(xué)習(xí)和使用通常比較簡單;
3、通常以容易修改程序的“解釋”作為運行方式,而不需要“編譯”;
4、程序的開發(fā)產(chǎn)能優(yōu)于運行效能;
5、極大地提高了系統(tǒng)管理員的工作效率。
參考資料來源:
百度百科-HTML
百度百科-script
計算機(jī)語言的種類非常的多,總的來說可以分成機(jī)器語言,匯編語言,高級語言三大類。
電腦每做的一次動作,一個步驟,都是按照以經(jīng)用計算機(jī)語言編好的程序來執(zhí)行的,程序是計算機(jī)要執(zhí)行的指令的集合,而程序全部都是用我們所掌握的語言來編寫的。所以人們要控制計算機(jī)一定要通過計算機(jī)語言向計算機(jī)發(fā)出命令。
計算機(jī)所能識別的語言只有機(jī)器語言,即由0和1構(gòu)成的代碼。但通常人們編程時,不采用機(jī)器語言,因為它非常難于記憶和識別。
目前通用的編程語言有兩種形式:匯編語言和高級語言。
匯編語言的實質(zhì)和機(jī)器語言是相同的,都是直接對硬件操作,只不過指令采用了英文縮寫的標(biāo)識符,更容易識別和記憶。它同樣需要編程者將每一步具體的操作用命令的形式寫出來。匯編程序通常由三部分組成:指令、偽指令和宏指令。匯編程序的每一句指令只能對應(yīng)實際操作過程中的一個很細(xì)微的動作,例如移動、自增,因此匯編源程序一般比較冗長、復(fù)雜、容易出錯,而且使用匯編語言編程需要有更多的計算機(jī)專業(yè)知識,但匯編語言的優(yōu)點也是顯而易見的,用匯編語言所能完成的操作不是一般高級語言所能實現(xiàn)的,而且源程序經(jīng)匯編生成的可執(zhí)行文件不僅比較小,而且執(zhí)行速度很快。
高級語言是目前絕大多數(shù)編程者的選擇。和匯編語言相比,它不但將許多相關(guān)的機(jī)器指令合成為單條指令,并且去掉了與具體操作有關(guān)但與完成工作無關(guān)的細(xì)節(jié),例如使用堆棧、寄存器等,這樣就大大簡化了程序中的指令。同時,由于省略了很多細(xì)節(jié),編程者也就不需要有太多的專業(yè)知識。
高級語言主要是相對于匯編語言而言,它并不是特指某一種具體的語言,而是包括了很多編程語言,如目前流行的VB、VC、FoxPro、Delphi等,這些語言的語法、命令格式都各不相同。
高級語言所編制的程序不能直接被計算機(jī)識別,必須經(jīng)過轉(zhuǎn)換才能被執(zhí)行,按轉(zhuǎn)換方式可將它們分為兩類:
解釋類:執(zhí)行方式類似于我們?nèi)粘I钪械摹巴暦g”,應(yīng)用程序源代碼一邊由相應(yīng)語言的解釋器“翻譯”成目標(biāo)代碼(機(jī)器語言),一邊執(zhí)行,因此效率比較低,而且不能生成可獨立執(zhí)行的可執(zhí)行文件,應(yīng)用程序不能脫離其解釋器,但這種方式比較靈活,可以動態(tài)地調(diào)整、修改應(yīng)用程序。
編譯類:編譯是指在應(yīng)用源程序執(zhí)行之前,就將程序源代碼“翻譯”成目標(biāo)代碼(機(jī)器語言),因此其目標(biāo)程序可以脫離其語言環(huán)境獨立執(zhí)行,使用比較方便、效率較高。但應(yīng)用程序一旦需要修改,必須先修改源代碼,再重新編譯生成新的目標(biāo)文件(* .OBJ)才能執(zhí)行,只有目標(biāo)文件而沒有源代碼,修改很不方便?,F(xiàn)在大多數(shù)的編程語言都是編譯型的,例如Visual C++、Visual Foxpro、Delphi等。
[NextPage]
學(xué)習(xí)編程,從何入手
如果樓主想學(xué)習(xí)編程,卻又不知從何入手,那么樓主不妨看看下面的幾種學(xué)習(xí)方案,可能會給樓主一些啟示吧!
方案一 Basic語言 Visual Basic
優(yōu)點
(1)Basic 簡單易學(xué),很容易上手。
(2)Visual Basic 提供了強(qiáng)大的可視化編程能力,可以讓你輕松地做出漂亮的程序。
(3)眾多的控件讓編程變得象壘積木一樣簡單。
(4)Visual Basic 的全部漢化讓我們這些見了English就頭大的人喜不自禁。
缺點
(1)Visual Basic 不是真正的面向?qū)ο蟮拈_發(fā)文具。
(2)Visual Basic 的數(shù)據(jù)類型太少,而且不支持指針,這使得它的表達(dá)能力很有限。
(3)Visual Basic 不是真正的編譯型語言,它產(chǎn)生的最終代碼不是可執(zhí)行的,是一種偽代碼。它需要一個動態(tài)鏈接庫去解釋執(zhí)行,這使得Visual Basic 的編譯速度大大變慢。
綜述:方案一適合初涉編程的朋友,它對學(xué)習(xí)者的要求不高,幾乎每個人都可以在一個比較短的時間里學(xué)會vB編程,并用VB 做出自己的作品。對于那些把編程當(dāng)做游戲的朋友來說,VB 是您最佳的選擇。
Basic/Visual Basic簡介
方案二 Pascal語言 Delphi
優(yōu)點
(1)Pascal語言結(jié)構(gòu)嚴(yán)謹(jǐn),可以很好地培養(yǎng)一個人的編程思想。
(2)Delphi是一門真正的面向?qū)ο蟮拈_發(fā)工具,并且是完全的可視化。
(3)Delphi使用了真編譯,可以讓你的代碼編譯成為可執(zhí)行的文件,而且編譯速度非??臁?/p>
(4)Delphi具有強(qiáng)大的數(shù)據(jù)庫開發(fā)能力,可以讓你輕松地開發(fā)數(shù)據(jù)庫。
缺點
Delphi幾乎可以說是完美的,只是Pascal語言的過于嚴(yán)謹(jǐn)讓人感覺有點煩。
綜述: 方案二比較適合那些具有一定編程基礎(chǔ)并且學(xué)過Pascal語言的朋友。
Pascal語言簡介
Delphi簡介
方案三 C語言 Visual C++
優(yōu)點
(1)C語言靈活性好,效率高,可以接觸到軟件開發(fā)比較底層的東西。
(2)微軟的MFC庫博大精深,學(xué)會它可以讓隨心所欲地進(jìn)行編程。
(3)VC是微軟制作的產(chǎn)品,與操作系統(tǒng)的結(jié)合更加緊密。
缺點
對使用者的要求比較高,既要具備豐富的C語言編程經(jīng)驗,又要具有一定的WINDOWS編程基礎(chǔ),它的過于專業(yè)溝靡話愕謀喑貪 謎哐 捌鵠椿嵊脅恍〉睦 選?
綜述: VC是程序員用的東西。如果你是一個永不滿足的人,而且可以在編程上投入很大的精力和時間,那么學(xué)習(xí)VC你一定不會后悔的。
C語言簡介
方案四 C++語言 C++ Builder
優(yōu)點
(1)C++語言的優(yōu)點全部得以繼承。
(2)完全的可是化。
(3)極強(qiáng)的兼容性,支持OWL、VCL和MFC三大類庫。
(4)編譯速度非??臁?/p>
缺點
由于推出的時間太短,關(guān)于它的各種資料還不太多。
綜述:我認(rèn)為C++ Builder 是最好的編程工具。它既保持了C++語言編程的優(yōu)點,又做到了完全的可視化。
C語言簡介
方案五 SQL語言 Power Builder
對于一些傳統(tǒng)的數(shù)據(jù)開發(fā)人員來說,F(xiàn)oxpro系列也許讓他們感到更加熟悉。但是對于初學(xué)者來說,PowerBuilder也許是最好的數(shù)據(jù)庫開發(fā)工具。各種各樣的控件,功能強(qiáng)大的PowerBuilder語言都會幫助你開發(fā)出自己的數(shù)據(jù)庫應(yīng)用程序。
[NextPage]
JSP簡介
在Sun正式發(fā)布JSP(Java Server Pages)之后,這種新的Web應(yīng)用開發(fā)技術(shù)很快引起了人們的關(guān)注。JSP為創(chuàng)建高度動態(tài)的Web應(yīng)用提供了一個獨特的開發(fā)環(huán)境。按照 Sun 的說法,JSP能夠適應(yīng)市場上包括Apache WebServer 、IIS4.0在內(nèi)的85%的服務(wù)器產(chǎn)品。
JSP與ASP的簡單比較
JSP與Microsoft的ASP技術(shù)非常相似。兩者都提供在HTML代碼中混合某種程序代碼、由語言引擎解釋執(zhí)行程序代碼的能力。在ASP或JSP環(huán)境下,HTML代碼主要負(fù)責(zé)描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的HTML頁面只依賴于Web服務(wù)器,而ASP和JSP頁面需要附加的語言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入到HTML代碼中,然后一起發(fā)送給瀏覽器。ASP和JSP都是面向Web服務(wù)器的技術(shù),客戶端瀏覽器不需要任何附加的軟件支持。
ASP的編程語言是VBScript之類的腳本語言,JSP使用的是Java,這是兩者最明顯的區(qū)別。
此外,ASP與JSP還有一個更為本質(zhì)的區(qū)別:兩種語言引擎用完全不同的方式處理頁面中嵌入的程序代碼。在ASP下,VBScript代碼被ASP引擎解釋執(zhí)行;在JSP下,代碼被編譯成Servlet并由Java虛擬機(jī)執(zhí)行,這種編譯操作僅在對JSP頁面的第一次請求時發(fā)生。
運行環(huán)境
執(zhí)行 JSP 代碼需要在服務(wù)器上安裝 JSP 引擎。此處我們使用的是 Sun 的 JavaServer Web Development Kit ( JSWDK )。為便于學(xué)習(xí),這個軟件包提供了大量可供修改的示例。安裝 JSWDK 之后,只需執(zhí)行 startserver 命令即可啟動服務(wù)器。在默認(rèn)配置下服務(wù)器在端口 8080 監(jiān)聽,使用 即可打開缺省頁面。
在運行 JSP 示例頁面之前,請注意一下安裝 JSWDK 的目錄,特別是" work "子目錄下的內(nèi)容。執(zhí)行示例頁面時,可以在這里看到 JSP 頁面如何被轉(zhuǎn)換成 Java 源文件,然后又被編譯成 class 文件(即 Servlet )。 JSWDK 軟件包中的示例頁面分為兩類,它們或者是 JSP 文件,或者是包含一個表單的 HTML 文件,這些表單均由 JSP 代碼處理。與 ASP 一樣, JSP 中的 Java 代碼均在服務(wù)器端執(zhí)行。因此,在瀏覽器中使用"查看源文件"菜單是無法看到 JSP 源代碼的,只能看到結(jié)果 HTML 代碼。所有示例的源代碼均通過一個單獨的" examples "頁面提供。
Java Servlet是一種開發(fā)Web應(yīng)用的理想構(gòu)架。 JSP以Servlet技術(shù)為基礎(chǔ),又在許多方面作了改進(jìn)。JSP頁面看起來象普通HTML頁面,但它允許嵌入執(zhí)行代碼,在這一點上,它和ASP技術(shù)非常相似。利用跨平臺運行的JavaBean 組件,JSP為分離處理邏輯與顯示樣式提供了卓越的解決方案。JSP必將成為ASP技術(shù)的有力競爭者。
[NextPage]
SQL語言簡介
SQL全稱是“結(jié)構(gòu)化查詢語言(Structured Query Language)”,最早的是IBM的圣約瑟研究實驗室為其關(guān)系數(shù)據(jù)庫管理系統(tǒng)SYSTEM R開發(fā)的一種查詢語言,它的前身是SQUARE語言。SQL語言結(jié)構(gòu)簡潔,功能強(qiáng)大,簡單易學(xué),所以自從IBM公司1981年推出以來,SQL語言,得到了廣泛的應(yīng)用。如今無論是像Oracle ,Sybase,Informix,SQL server這些大型的數(shù)據(jù)庫管理系統(tǒng),還是像Visual Foxporo,PowerBuilder這些微機(jī)上常用的數(shù)據(jù)庫開發(fā)系統(tǒng),都支持SQL語言作為查詢語言。
Structured Query Language包含4個部分:
數(shù)據(jù)查詢語言DQL-Data Query Language SELECT
數(shù)據(jù)操縱語言DQL-Data Manipulation Language INSERT, UPDATE, DELETE
數(shù)據(jù)定義語言DQL-Data Definition Language CREATE, ALTER, DROP
數(shù)據(jù)控制語言DQL-Data Control Language COMMIT WORK, ROLLBACK WORK
SQL的歷史
在70年代初,E.E.Codd首先提出了關(guān)系模型。70年代中期,IBM公司在研制 SYSTEM R關(guān)系數(shù)據(jù)庫管理系統(tǒng)中研制了SQL語言,最早的SQL語言(叫SEQUEL2)是在1976 年 11 月的IBM Journal of RD上公布的。
1979年ORACLE公司首先提供商用的SQL,IBM公司在DB2 和SQL/DS數(shù)據(jù)庫系統(tǒng)中也實現(xiàn)了SQL。
1986年10月,美國ANSI采用SQL作為關(guān)系數(shù)據(jù)庫管理系統(tǒng)的標(biāo)準(zhǔn)語言(ANSI X3. 135-1986),后為國際標(biāo)準(zhǔn)化組織(ISO)采納為國際標(biāo)準(zhǔn)。
1989年,美國ANSI采納在ANSI X3.135-1989報告中定義的關(guān)系數(shù)據(jù)庫管理系統(tǒng)的SQL標(biāo)準(zhǔn)語言,稱為ANSI SQL 89, 該標(biāo)準(zhǔn)替代ANSI X3.135-1986版本。該標(biāo)準(zhǔn)為下列組織所采納:
● 國際標(biāo)準(zhǔn)化組織(ISO),為ISO 9075-1989報告“Database Language SQL With Integrity Enhancement”
● 美國聯(lián)邦政府,發(fā)布在The Federal Information Processing Standard Publication(FIPS PUB)127
目前,所有主要的關(guān)系數(shù)據(jù)庫管理系統(tǒng)支持某些形式的SQL語言, 大部分?jǐn)?shù)據(jù)庫打算遵守ANSI SQL89標(biāo)準(zhǔn)。
SQL的優(yōu)點
SQL廣泛地被采用正說明了它的優(yōu)點。它使全部用戶,包括應(yīng)用程序員、DBA管理員和終端用戶受益非淺。
(1) 非過程化語言
SQL是一個非過程化的語言,因為它一次處理一個記錄,對數(shù)據(jù)提供自動導(dǎo)航。SQL允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而不對單個記錄進(jìn)行操作,可操作記錄集。所有SQL 語句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語句的結(jié)果作為另一條SQL語句的輸入。 SQL不要求用戶指定對數(shù)據(jù)的存放方法。 這種特性使用戶更易集中精力于要得到的結(jié)果。所有SQL語句使用查詢優(yōu)化器,它是RDBMS的一部分,由它決定對指定數(shù)據(jù)存取的最快速度的手段。查詢優(yōu)化器知道存在什么索引,哪兒使用合適,而用戶從不需要知道表是否有索引,表有什么類型的索引。
(2) 統(tǒng)一的語言
SQL可用于所有用戶的DB活動模型,包括系統(tǒng)管理員、數(shù)據(jù)庫管理員、 應(yīng)用程序員、決策支持系統(tǒng)人員及許多其它類型的終端用戶。基本的SQL 命令只需很少時間就能學(xué)會,最高級的命令在幾天內(nèi)便可掌握。 SQL為許多任務(wù)提供了命令,包括:
● 查詢數(shù)據(jù)
● 在表中插入、修改和刪除記錄
● 建立、修改和刪除數(shù)據(jù)對象
● 控制對數(shù)據(jù)和數(shù)據(jù)對象的存取
● 保證數(shù)據(jù)庫一致性和完整性
以前的數(shù)據(jù)庫管理系統(tǒng)為上述各類操作提供單獨的語言,而SQL 將全部任務(wù)統(tǒng)一在一種語言中。
(3) 是所有關(guān)系數(shù)據(jù)庫的公共語言
由于所有主要的關(guān)系數(shù)據(jù)庫管理系統(tǒng)都支持SQL語言,用戶可將使用SQL的技能從一個RDBMS轉(zhuǎn)到另一個。所有用SQL編寫的程序都是可以移植的。
[NextPage]
Java語言簡介
一. Java的由來
當(dāng)1995年SUN推出Java語言之后,全世界的目光都被這個神奇的語言所吸引。那么Java到底有何神奇之處呢?
Java語言其實最是誕生于1991年,起初被稱為OAK語言,是SUN公司為一些消費性電子產(chǎn)品而設(shè)計的一個通用環(huán)境。他們最初的目的只是為了開發(fā)一種獨立于平臺的軟件技術(shù),而且在網(wǎng)絡(luò)出現(xiàn)之前,OAK可以說是默默無聞,甚至差點夭折。但是,網(wǎng)絡(luò)的出現(xiàn)改變了OAK的命運。
在Java出現(xiàn)以前。Internet上的信息內(nèi)容都是一些乏味死板的HTML文檔。這對于那些迷戀于WEB瀏覽的人們來說簡直不可容忍。他們迫切希望能在WEN中看到一些交互式的內(nèi)容,開發(fā)人員也極希望能夠在WEB上創(chuàng)建一類無需考慮軟硬件平臺就可以執(zhí)行的應(yīng)用程序,當(dāng)然這些程序還要有極大的安全保障。對于用戶的這種要求,傳統(tǒng)的編程語言顯得無能為力,面SUN的工程師敏銳地察覺到了這一點,從1994年起,他們開始將OAK技術(shù)應(yīng)用于WEB上,并且開發(fā)出了HotJava的第一個版本。當(dāng)SUN公司1995年正式以Java這個名字推出的時候,幾乎所有的WEB開發(fā)人員都想到:噢,這正是我想要的。于是Java成了一顆耀眼的明星,丑小鴨一下了變成了白天鵝。
二. Java的定義
Java是一種簡單的,面象對象的,分布式的,解釋的,鍵壯的安全的,結(jié)構(gòu)的中立的,可移植的,性能很優(yōu)異的多線程的,動態(tài)的語言。
Java的開發(fā)環(huán)境有不同的版本,如sun公司的Java Developers Kit, 簡稱 JDK。后來微軟公司推出了支持Java規(guī)范的Microsoft Visual J++ Java開發(fā)環(huán)境,簡稱 VJ++。
三. Java的特點
1. 平臺無關(guān)性
平臺無關(guān)性是指Java能運行于不同的平臺。Java引進(jìn)虛擬機(jī) 原理,并運行于虛擬機(jī),實現(xiàn)不同平臺的Java接口之間。使 用Java編寫的程序能在世界范圍內(nèi)共享。Java的數(shù)據(jù)類型與 機(jī)器無關(guān),Java虛擬機(jī)(Java Virtual Machine)是建立在 硬件和操作系統(tǒng)之上,實現(xiàn)Java二進(jìn)制代碼的解釋執(zhí)行功能, 提供于不同平臺的接口的。
2. 安全性
Java的編程類似C++,學(xué)習(xí)過C++的讀者將很快掌握J(rèn)ava的精 髓。Java舍棄了C++的指針對存儲器地址的直接操作,程序 運行時,內(nèi)存由操作系統(tǒng)分配,這樣可以避免病毒通過指 針侵入系統(tǒng)。Java對程序提供了安全管理器,防止程序的 非法訪問。
3. 面向?qū)ο?/p>
Java 吸取了C++面向?qū)ο蟮母拍?將數(shù)據(jù)封裝于類中,利用類 的優(yōu)點,實現(xiàn)了程序的簡潔性和便于維護(hù)性。類的封裝性、 繼承性等有關(guān)對象的特性,使程序代碼只需一次編譯,然后 通過上述特性反復(fù)利用。程序員只需把主要精力用在類和接 口的設(shè)計和應(yīng)用上。Java 提供了眾多的一般對象的類,通 過繼承即可使用父類的方法。在 Java 中,類的繼承關(guān)系是單一的非多重的,一個子類 只有一個父類,子類的父類又有一個父類。Java 提供的 Object 類及其子類的繼承關(guān)系如同一棵倒立的樹形,根類 為 Object 類, Object 類功能強(qiáng)大,經(jīng)常會使用到它及其 它派生的子類。
4. 分布式
Java建立在擴(kuò)展TCP/IP網(wǎng)絡(luò)平臺上。庫函數(shù)提供了用HTTP和FTP協(xié)議傳送和接受信息的方法。這使得程序員使用網(wǎng)絡(luò)上的文件和使用本機(jī)文件一樣容易。
5. 鍵壯性
Java致力于檢查程序在編譯和運行時的錯誤。類型檢查幫助檢查出許多開發(fā)早期出現(xiàn)的錯誤。Java自已操縱內(nèi)存減少了內(nèi)存出錯的可能性。Java還實現(xiàn)了真數(shù)組,避免了覆蓋數(shù)據(jù)的可能。這些功能特征大大提高了開發(fā)Java應(yīng)用程序的周期。Java提供: Null指針檢測、 數(shù)組邊界檢測、 異常出口、 Byte code校驗。
四. Java與C/C++語言
Java提供了一個功能強(qiáng)大語言的所有功能,但幾乎沒有一點含混特征。C++安全性不好,但C和C++被大家接受,所以Java設(shè)計成C++形式,讓大家很容易學(xué)習(xí)。
Java去掉了C++語言的許多功能,讓Java的語言功能很精煉,并增加了一些很有用的功能,如自動收集碎片。
Java去掉了以下幾個C和C++功能:
指針運算
結(jié)構(gòu)
typedefs
#define
需要釋放內(nèi)存
這將減少了平常出錯的50%。而且,Java很小,整個解釋器只需215K的RAM。
面象對象:Java實現(xiàn)了C++的基本面象對象技術(shù)并有一些增強(qiáng),(為了語言簡單,刪除了一些功能)。Java處理數(shù)據(jù)方式和用對象接口處理對象數(shù)據(jù)方式一樣。
五. Java與Internet
我們知道,早先的 www 僅可以傳送文本和圖片,Java的出現(xiàn)實現(xiàn)了互動的頁面,是一次偉大的革命。
Java并不是為 Internet,WWW而設(shè)計的,它也可以用來編寫?yīng)毩⒌膽?yīng)用程序。Java 是一種面向?qū)ο笳Z言。Java 語言類似于 C++ 語言,所以已熟練掌握 C++語言的編程人員,再學(xué)習(xí) Java 語言就容易得多!Java 程序需要編譯。實際上有兩種 Java 程序:一種 Java 應(yīng)用程序是一個完整的程序,如 Web 瀏覽器。一種 Java 小應(yīng)用程序是運行于 Web 瀏覽器中的一個程序.
Java程序和它的瀏覽器HotJava,提供了可讓你的瀏覽器運行程序的方法。你能從你的瀏覽器里直接播放聲音。你還能播放頁面里的動畫。Java還能告訴你的瀏覽器怎樣處理新的類型文件。當(dāng)我們能在2400 baud線上傳輸視頻圖象時,HotJava將能顯示這些視頻。
當(dāng)今Internet的一大發(fā)展趨勢是電子商務(wù),而Internet的安全問題是必須解決的問題,通常大的部門應(yīng)設(shè)置防火墻,阻止非法侵入。
電子商務(wù)是當(dāng)今的熱門話題,然而傳統(tǒng)的編程語言難以勝任電子商務(wù)系統(tǒng),電子商務(wù)要求程序代碼具有基本的要求:安全、可靠、同時要求能 與運行于不同平臺的機(jī)器的全世界客戶開展業(yè)務(wù)。Java以其強(qiáng)安全性、平臺無關(guān)性、硬件結(jié)構(gòu)無關(guān)性、語言簡潔同時面向?qū)ο?,在網(wǎng)絡(luò)編程語言中占據(jù)無可比擬的優(yōu)勢,成為實現(xiàn)電子商務(wù)系統(tǒng)的首選語言。
Java程序被放置在Internet服務(wù)器上,當(dāng)用戶訪問服務(wù)器時,Java程序被下載到本地的用戶機(jī)上,由瀏覽器解釋運行。
[NextPage]
PowerBuilder簡介
PowerBuilder的產(chǎn)生
PowerBuilder是美國著名的數(shù)據(jù)庫應(yīng)用開發(fā)工具生產(chǎn)廠商PowerSoft推出的成功產(chǎn)品,其第一版于1991年6月正式投入市場。它是完全按照客戶/服務(wù)器體系結(jié)構(gòu)研制設(shè)計的,采用面向?qū)ο蠹夹g(shù),圖形化的應(yīng)用開發(fā)環(huán)境,是數(shù)據(jù)庫的前端開發(fā)工具。
PowerBuilder的特點
它支持應(yīng)用系統(tǒng)同時訪問多種數(shù)據(jù)庫,其中既包括Oracel,Sybase之類的大型數(shù)據(jù)庫,又包括FOXPRO之類支持ODBC接口的小型數(shù)據(jù)庫,PowerBuilder是完全可視化的數(shù)據(jù)庫開發(fā)工具,它提供了大量的控件,大大加快了項目的開發(fā)速度,也使開發(fā)者更容易掌握數(shù)據(jù)庫的開發(fā)。
它使用的編程語言叫做工PowerScripr,它也是一種高級的,結(jié)構(gòu)化的編程語言。PowerScript提供了一套完整的嵌入式SQL語句,開發(fā)人員可以像使用其它語句一樣自由地使用SQL語言,這樣就大大增強(qiáng)了程序操縱和訪問數(shù)據(jù)庫的能力??梢哉fPowerBuilder既適合初學(xué)者快速學(xué)習(xí)數(shù)據(jù)庫的開發(fā),又可以讓有經(jīng)驗的開發(fā)人員開發(fā)出功能強(qiáng)大的數(shù)據(jù)庫,是一種適用面非常廣的開發(fā)工具。
PowerBuilder是一個用來進(jìn)行客戶/服務(wù)器開發(fā)的完全的可視化開發(fā)環(huán)境。使用PowerBuilder,你可以用一種可視的直觀的方式來創(chuàng)建應(yīng)用程序的用戶界面和數(shù)據(jù)庫接口。這是一個總的概念,實際上是開發(fā)人員使用PowerBuilder去開發(fā)應(yīng)用程序,由于所開發(fā)的各種應(yīng)用程序充分利用了圖形用戶接口(GUI)的優(yōu)點,所以PowerBuilder被認(rèn)為是一個圖形工具。
在客戶/服務(wù)器結(jié)構(gòu)的應(yīng)用中,PowerBuilder具有描述多個數(shù)據(jù)庫連接與檢索的能力。特別是PowerBuilder能從大多數(shù)流行的RDBMS中存取數(shù)據(jù),且不管數(shù)據(jù)存放在什麼地方;另外,各種應(yīng)用程序又可以獨立于RDBMS,因為PowerBuilder可以使用數(shù)據(jù)庫的標(biāo)準(zhǔn)操作語言SQL(結(jié)構(gòu)化查詢語言)進(jìn)行。
使用PowerBuilder,可以很容易地開發(fā)出功能強(qiáng)大的圖形界面的訪問服務(wù)器數(shù)據(jù)庫的應(yīng)用程序,PowerBuilder提供了建立符合工業(yè)標(biāo)準(zhǔn)的應(yīng)用程序(例如訂單登記、會計及制造系統(tǒng))所需的所有工具。
PowerBuilder應(yīng)用程序由窗口組成,這些窗口包含用戶與之交互的控件。開發(fā)人員可以使用所有標(biāo)準(zhǔn)空間(如按鈕、復(fù)選框、下拉式列表框或編輯框)以及PowerBuilder提供的特殊的使應(yīng)用程序更易于開發(fā)和使用的控件。
通常人們把PowerBuilder看成是一種開發(fā)工具,實際上它比其他工具強(qiáng)得多,是一種強(qiáng)有力的開發(fā)環(huán)境。開發(fā)人員不僅能用它來開發(fā)用戶容易使用的各種應(yīng)用程序還可以通過PowerBuilder修改數(shù)據(jù)庫,利用400多個內(nèi)部定義函數(shù),可以開發(fā)能和其他應(yīng)用程序進(jìn)行的各種應(yīng)用程序。
PowerBuilder正在成為客戶/服務(wù)器應(yīng)用開發(fā)的標(biāo)準(zhǔn)。相對于其他任何客戶/服務(wù)器開發(fā)環(huán)境,PowerBuilder使開發(fā)人員的工作更快、成本更低、質(zhì)量更高、功能更強(qiáng)。
PowerBuilder為應(yīng)用開發(fā)提供了全面綜合性的支持,可以分別概括為如下幾點:
事件驅(qū)動的應(yīng)用程序
功能強(qiáng)大的編程語言與函數(shù)
面向?qū)ο蟮木幊?/p>
跨平臺開發(fā)
開放的數(shù)據(jù)庫連結(jié)系統(tǒng)
PowerBuilder開發(fā)環(huán)境
PowerBuilder開發(fā)環(huán)境由一系列集成的圖形畫板(Painter)組成,應(yīng)用開發(fā)人員通過簡單的鼠標(biāo)操作即可設(shè)計、建立、交互檢驗和測試客戶/服務(wù)器應(yīng)用程序。
[NextPage]
Delphi簡介
Delphi這個名字源于古希臘的城市名。它集中了第三代語言的優(yōu)點。以O(shè)bject Pascal為基礎(chǔ),擴(kuò)充了面向?qū)ο蟮哪芰Γ⑶彝昝赖亟Y(jié)合了可視化的開發(fā)手段。Delphi自1995年3 月一推出就受到了人們的關(guān)注,并在當(dāng)年一舉奪得了多項大獎。
Delphi的出現(xiàn)打破了V承可視化編程領(lǐng)域一統(tǒng)天下的局面。并且Delphi使用了本地編譯器直接生成技術(shù),使程序的執(zhí)行性能遠(yuǎn)遠(yuǎn)高于其它產(chǎn)品生成的程序。它還是真正的面向?qū)ο蟮木幊陶Z言。PASCAL語言的嚴(yán)謹(jǐn)加上可視化的優(yōu)勢和強(qiáng)大的數(shù)據(jù)庫功能使得它有充分的資本和微軟的VB叫板。許多人當(dāng)時都認(rèn)為Pascal 是最有前途的程序設(shè)計語言,并預(yù)測Delphi將會成為可視化編程的主流環(huán)境。
Delphi在你編好程序后自動轉(zhuǎn)換成.EXE文件它運行時速度比VB快,而且編譯后不需要其他的支持庫就能運行。它的數(shù)據(jù)庫功能也挺強(qiáng)的,是開發(fā)中型數(shù)據(jù)庫軟件理想的編程工具。 Delphi適用于應(yīng)用軟件、數(shù)據(jù)庫系統(tǒng)、系統(tǒng)軟件等類型的開發(fā)。而且它擁有和VB差不多一樣的功能,而且一樣能應(yīng)用API函數(shù),這在控制Windows很有用。
Delphi是全新的可視化編程環(huán)境,為我們提供了一種方便、快捷的Windows應(yīng)用程序開發(fā)工具。它使用了Microsoft Windows圖形用戶界面的許多先進(jìn)特性和設(shè)計思想,采用了彈性可重復(fù)利用的完整的面向?qū)ο蟪绦蛘Z言(Object-Oriented Language)、當(dāng)今世界上最快的編輯器、最為領(lǐng)先的數(shù)據(jù)庫技術(shù)。對于廣大的程序開發(fā)人員來講,使用Delphi開發(fā)應(yīng)用軟件,無疑會大大地提高編程效率,而且隨著應(yīng)用的深入,您將會發(fā)現(xiàn)編程不再是枯燥無味的工作——Delphi的每一個設(shè)計細(xì)節(jié),都將帶給您一份欣喜。
Delphi的基本形式
Delphi實際上是Pascal語言的一種版本,但它與傳統(tǒng)的Pascal語言有天壤之別。一個Delphi程序首先是應(yīng)用程序框架,而這一框架正是應(yīng)用程序的“骨架”。在骨架上即使沒有附著任何東西,仍可以嚴(yán)格地按照設(shè)計運行。您的工作只是在“骨架”中加入您的程序。缺省的應(yīng)用程序是一個空白的窗體(form),您可以運行它,結(jié)果得到一個空白的窗口。這個窗口具有Windows窗口的全部性質(zhì):可以被放大縮小、移動、最大最小化等,但您卻沒有編寫一行程序。因此,可以說應(yīng)用程序框架通過提供所有應(yīng)用程序共有的東西,為用戶應(yīng)用程序的開發(fā)打下了良好的基礎(chǔ)。
Delphi已經(jīng)為您做好了一切基礎(chǔ)工作——程序框架就是一個已經(jīng)完成的可運行應(yīng)用程序,只是不處理任何事情。您所需要做的,只是在程序中加入完成您所需功能的代碼而已。 在空白窗口的背后,應(yīng)用程序的框架正在等待用戶的輸入。由于您并未告訴它接收到用戶輸入后作何反應(yīng),窗口除了響應(yīng)Windows的基本操作(移動、縮放等)外,它只是接受用戶的輸入,然后再忽略。Delphi把Windows編程的回調(diào)、句柄處理等繁復(fù)過程都放在一個不可見的Romulam覆蓋物下面。