freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于web的師生互動系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)設(shè)計外文翻譯-資料下載頁

2024-11-29 04:20本頁面

【導(dǎo)讀】WhatistheWeb?client.kindofdata—stockmarket,scientific,government,younameit.Whatwe’veeup

  

【正文】 020 屆畢業(yè)設(shè)計英文文獻(xiàn)譯文 示出來,毋需任何改動。然而,瀏覽器仍然顯得很原始,在用戶迅速增多的要求面前顯得有些力不從心。它們的交互能力不夠強(qiáng),而且對服務(wù)器和因特網(wǎng)都造成了一定程度的干擾。這是由于每次采取一些要求編程的操作時,必須將信息反饋回服務(wù)器,在服務(wù)器那一端進(jìn)行處理。所以完全可能需要等待數(shù)秒乃至數(shù)分鐘的時間才會發(fā)現(xiàn)自己剛才拼錯了一個單詞。由于 瀏覽器只是一個純粹的查看程序,所以連最簡單的計算任務(wù)都不能進(jìn)行(當(dāng)然在另一方面,它也顯得非常安全,因為不能在本機(jī)上面執(zhí)行任何程序,避開了程序錯誤或者病毒的騷擾)。 為解決這個問題,人們采取了許多不同的方法。最開始的時候,人們對圖形標(biāo)準(zhǔn)進(jìn)行了改進(jìn),使瀏覽器能顯示更好的動畫和視頻。為解決剩下的問題,唯一的辦法就是在客戶端(瀏覽器)內(nèi)運行程序。這就叫作 “ 客戶端編程 ” ,它是對傳統(tǒng)的 “ 服務(wù)器端編程 ” 的一個非常重要的拓展。 客戶端編程 Web 最初采用的 “ 服務(wù)器-瀏覽器 ” 方案可提供交互式內(nèi)容,但這種交互能力完全由服務(wù)器 提供,為服務(wù)器和因特網(wǎng)帶來了不小的負(fù)擔(dān)。服務(wù)器一般為客戶瀏覽器產(chǎn)生靜態(tài)網(wǎng)頁,由后者簡單地解釋并顯示出來。基本 HTML 語言提供了簡單的數(shù)據(jù)收集機(jī)制:文字輸入框、復(fù)選框、單選鈕、列表以及下拉列表等,另外還有一個按鈕,只能由程序規(guī)定重新設(shè)置表單中的數(shù)據(jù),以便回傳給服務(wù)器。用戶提交的信息通過所有 Web 服務(wù)器均能支持的 “ 通用網(wǎng)關(guān)接口 ” ( CGI)回傳到服務(wù)器。包含在提交數(shù)據(jù)中的文字指示 CGI 該如何操作。最常見的行動是運行位于服務(wù)器的一個程序。那個程序一般保存在一個名為 “cgi bin” 的目錄中(按下 Web頁內(nèi)的一個按鈕 時,請注意一下瀏覽器頂部的地址窗,經(jīng)常都能發(fā)現(xiàn) “cgi bin”的字樣)。大多數(shù)語言都可用來編制這些程序,但其中最常見的是 Perl。這是由于 Perl 是專為文字的處理及解釋而設(shè)計的,所以能在任何服務(wù)器上安裝和使用,無論采用的處理器或操作系統(tǒng)是什么。 今天的許多 Web 站點都嚴(yán)格地建立在 CGI 的基礎(chǔ)上,事實上幾乎所有事情都可用CGI 做到。唯一的問題就是響應(yīng)時間。 CGI 程序的響應(yīng)取決于需要傳送多少數(shù)據(jù),以及服務(wù)器和因特網(wǎng)兩方面的負(fù)擔(dān)有多重(而且 CGI 程序的啟動比較慢)。 Web的早期設(shè)計者并未預(yù)料到當(dāng)初綽綽有余的帶 寬很快就變得不夠用,這正是大量應(yīng)中北大學(xué) 2020 屆畢業(yè)設(shè)計英文文獻(xiàn)譯文 用充斥網(wǎng)上造成的結(jié)果。例如,此時任何形式的動態(tài)圖形顯示都幾乎不能連貫地顯示,因為此時必須創(chuàng)建一個 GIF 文件,再將圖形的每種變化從服務(wù)器傳遞給客戶。而且大家應(yīng)該對輸入表單上的數(shù)據(jù)校驗有著深刻的體會。原來的方法是我們按下網(wǎng)頁上的提交按鈕( Submit);數(shù)據(jù)回傳給服務(wù)器;服務(wù)器啟動一個 CGI 程序,檢查用戶輸入是否有錯;格式化一個 HTML 頁,通知可能遇到的錯誤,并將這個頁回傳給我們;隨后必須回到原先那個表單頁,再輸入一遍。這種方法不僅速度非常慢,也顯得非常繁瑣。 解決的辦法就是客戶 端的程序設(shè)計。運行 Web 瀏覽器的大多數(shù)機(jī)器都擁有足夠強(qiáng)的能力,可進(jìn)行其他大量工作。與此同時,原始的靜態(tài) HTML 方法仍然可以采用,它會一直等到服務(wù)器送回下一個頁??蛻舳司幊桃馕吨?Web 瀏覽器可獲得更充分的利用,并可有效改善 Web 服務(wù)器的交互(互動)能力。 對客戶端編程的討論與常規(guī)編程問題的討論并沒有太大的區(qū)別。采用的參數(shù)肯定是相同的,只是運行的平臺不同: Web 瀏覽器就象一個有限的操作系統(tǒng)。無論如何,我們?nèi)匀恍枰幊?,仍然會在客戶端編程中遇到大量問題,同時也有很多解決的方案。在本節(jié)剩下的部分里,我們將對這些問題 進(jìn)行一番概括,并介紹在客戶端編程中采取的對策。 朝客戶端編程邁進(jìn)的時候,最重要的一個問題就是插件的設(shè)計。利用插件,程序員可以方便地為瀏覽器添加新功能,用戶只需下載一些代碼,把它們 “ 插入 ” 瀏覽器的適當(dāng)位置即可。這些代碼的作用是告訴瀏覽器 “ 從現(xiàn)在開始,你可以進(jìn)行這些新活動了 ” (僅需下載這些插入一次)。有些快速和功能強(qiáng)大的行為是通過插件添加到瀏覽器的。但插件的編寫并不是一件簡單的任務(wù)。在我們構(gòu)建一個特定的站點時,可能并不希望涉及這方面的工作。對客戶端程序設(shè)計來說,插件的價值在于它允許專業(yè)程序員設(shè)計出一 種新的語言,并將那種語言添加到瀏覽器,同時不必經(jīng)過瀏覽器原創(chuàng)者的許可。由此可以看出,插件實際是瀏覽器的一個“ 后門 ” ,允許創(chuàng)建新的客戶端程序設(shè)計語言(盡管并非所有語言都是作為插件實現(xiàn)的)。 中北大學(xué) 2020 屆畢業(yè)設(shè)計英文文獻(xiàn)譯文 插件造成了腳本編制語言的爆炸性增長。通過這種腳本語言,可將用于自己客戶端程序的源碼直接插入 HTML 頁,而對那種語言進(jìn)行解釋的插件會在 HTML 頁顯示的時候自動激活。腳本語言一般都傾向于盡量簡化,易于理解。而且由于它們是從屬于 HTML 頁的一些簡單正文,所以只需向服務(wù)器發(fā)出對那個頁的一次請求,即可非??斓剌d入 。缺點是我們的代碼全部暴露在人們面前。另一方面,由于通常不用腳本編制語言做過份復(fù)雜的事情,所以這個問題暫且可以放在一邊。 腳本語言真正面向的是特定類型問題的解決,其中主要涉及如何創(chuàng)建更豐富、更具有互動能力的圖形用戶界面( GUI)。然而,腳本語言也許能解決客戶端編程中80%的問題。你碰到的問題可能完全就在那 80%里面。而且由于腳本編制語言的宗旨是盡可能地簡化與快速,所以在考慮其他更復(fù)雜的方案之前(如 Java 及ActiveX),首先應(yīng)想一下腳本語言是否可行。 目前討論得最多的腳本編制語言包括 JavaScript(它與 Java 沒有任何關(guān)系;之所以叫那個名字,完全是一種市場策略)、 VBScript(同 Visual Basic 很相似)以及 Tcl/Tk(來源于流行的跨平臺 GUI 構(gòu)造語言)。當(dāng)然還有其他許多語言,也有許多正在開發(fā)中。 JavaScript 也許是目常用的,它得到的支持也最全面。無論 NetscapeNavigator,Microsoft Inter Explorer,還是 Opera,目前都提供了對 JavaScript 的支持。除此以外,市面上講述 JavaScript 的書籍也要比講述其他語言的書多得多。有些工 具還能利用 JavaScript 自動產(chǎn)生網(wǎng)頁。當(dāng)然,如果你已經(jīng)有 Visual Basic或者 Tcl/Tk 的深厚功底,當(dāng)然用它們要簡單得多,起碼可以避免學(xué)習(xí)新語言的煩惱(解決 Web 方面的問題就已經(jīng)夠讓人頭痛了)。 如果說一種腳本編制語言能解決 80%的客戶端程序設(shè)計問題,那么剩下的 20%又該怎么辦呢?它們屬于一些高難度的問題嗎?目前最流行的方案就是 Java。它不僅是一種功能強(qiáng)大、高度安全、可以跨平臺使用以及國際通用的程序設(shè)計語言,也是一種具有旺盛生命力的語言。對 Java 的擴(kuò)展是不斷進(jìn)行的,提供的語言特性和庫能夠很好地解決傳統(tǒng)語言不能解決的問題,比如多線程操作、數(shù)據(jù)庫訪問、連網(wǎng)程序設(shè)計以及分布式計算等等。 Java 通過 “ 程序片 ” ( Applet)巧妙地解決了客戶端編程的問題。 中北大學(xué) 2020 屆畢業(yè)設(shè)計英文文獻(xiàn)譯文 程序片(或 “ 小應(yīng)用程序 ” )是一種非常小的程序,只能在 Web 瀏覽器中運行。作為 Web 頁的一部分,程序片代碼會自動下載回來(這和網(wǎng)頁中的圖片差不多)。激活程序片后,它會執(zhí)行一個程序。程序片的一個優(yōu)點體現(xiàn)在:通過程序片,一旦用戶需要客戶軟件,軟件就可從服務(wù)器自動下載回來。它們能自動取得客戶軟件的最新版本,不會出錯,也沒有重新安裝的麻煩。由 于 Java 的設(shè)計原理,程序員只需要創(chuàng)建程序的一個版本,那個程序能在幾乎所有計算機(jī)以及安裝了 Java解釋器的瀏覽器中運行。由于 Java 是一種全功能的編程語言,所以在向服務(wù)器發(fā)出一個請求之前,我們能先在客戶端做完盡可能多的工作。例如,再也不必通過因特網(wǎng)傳送一個請求表單,再由服務(wù)器確定其中是否存在一個拼寫或者其他參數(shù)錯誤。大多數(shù)數(shù)據(jù)校驗工作均可在客戶端完成,沒有必要坐在計算機(jī)前面焦急地等待服務(wù)器的響應(yīng)。這樣一來,不僅速度和響應(yīng)的靈敏度得到了極大的提高,對網(wǎng)絡(luò)和服務(wù)器造成的負(fù)擔(dān)也可以明顯減輕,這對保障因特網(wǎng)的暢通是 至關(guān)重要的。 與腳本程序相比, Java 程序片的另一個優(yōu)點是它采用編譯好的形式,所以客戶端看不到源碼。當(dāng)然在另一方面,反編譯 Java 程序片也并不是件難事,而且代碼的隱藏一般并不是個重要的問題。大家要注意另外兩個重要的問題。正如本書以前會講到的那樣,編譯好的 Java 程序片可能包含了許多模塊,所以要多次 “ 命中 ” (訪問)服務(wù)器以便下載(在 Java 中,這個問題得到了有效的改善 ——利用 Java 壓縮檔,即 JAR 文件 —— 它允許設(shè)計者將所有必要的模塊都封裝到一起,供用戶統(tǒng)一下載)。在另一方面,腳本程序是作為 Web 頁正 文的一部分集成到 Web 頁內(nèi)的。這種程序一般都非常小,可有效減少對服務(wù)器的點擊數(shù)。另一個因素是學(xué)習(xí)方面的問題。不管你平時聽別人怎么說, Java 都不是一種十分容易便可學(xué)會的語言。如果你以前是一名 Visual Basic 程序員,那么轉(zhuǎn)向 VBScript會是一種最快捷的方案。由于 VBScript 可以解決大多數(shù)典型的客戶機(jī)/服務(wù)器問題,所以一旦上手,就很難下定決心再去學(xué)習(xí) Java。如果對腳本編制語言比較熟,那么在轉(zhuǎn)向 Java 之前,建議先熟悉一下 JavaScript 或者 VBScript,因為它們可能已經(jīng)能夠滿足你的需要 ,不必經(jīng)歷學(xué)習(xí) Java 的艱苦過程。 自動下載和通過因特網(wǎng)運行程序聽起來就象是一個病毒制造者的夢想。在客戶端中北大學(xué) 2020 屆畢業(yè)設(shè)計英文文獻(xiàn)譯文 的編程中, ActiveX 帶來了最讓人頭痛的安全問題。點擊一個 Web 站點的時候,可能會隨同 HTML 網(wǎng)頁傳回任何數(shù)量的東西: GIF 文件、腳本代碼、編譯好的 Java代碼以及 ActiveX 組件。有些是無害的; GIF 文件不會對我們造成任何危害,而腳本編制語言通常在自己可做的事情上有著很大的限制。 Java 也設(shè)計成在一個安全 “ 沙箱 ” 里在它的程序片中運行,這樣可防止操作位于沙箱以外的磁盤或者內(nèi)存區(qū)域。 ActiveX 是所有這些里面最讓人擔(dān)心的。用 ActiveX 編寫程序就象編制 Windows應(yīng)用程序 —— 可以做自己想做的任何事情。下載回一個 ActiveX 組件后,它完全可能對我們磁盤上的文件造成破壞。當(dāng)然,對那些下載回來并不限于在 Web 瀏覽器內(nèi)部運行的程序,它們同樣也可能破壞我們的系統(tǒng)。從 BBS 下載回來的病毒一直是個大問題,但因特網(wǎng)的速度使得這個問題變得更加復(fù)雜。 目前解決的辦法是 “ 數(shù)字簽名 ” ,代碼會得到權(quán)威機(jī)構(gòu)的驗證,顯示出它的作者是誰。這一機(jī)制的基礎(chǔ)是認(rèn)為病毒之所以會傳播,是由于它的編制者匿名的緣故。所以假如去 掉了匿名的因素,所有設(shè)計者都不得不為它們的行為負(fù)責(zé)。這似乎是一個很好的主意,因為它使程序顯得更加正規(guī)。但我對它能消除惡意因素持懷疑態(tài)度,因為假如一個程序便含有 Bug,那么同樣會造成問題。 Java 通過 “ 沙箱 ” 來防止這些問題的發(fā)生。 Java 解釋器內(nèi)嵌于我們本地的 Web瀏覽器中,在程序片裝載時會檢查所有有嫌疑的指令。特別地,程序片根本沒有權(quán)力將文件寫進(jìn)磁盤,或者刪除文件(這是病毒最喜歡做的事情之一)。我們通常認(rèn)為程序片是安全的。而且由于安全對于營建一套可靠的客戶機(jī)/服務(wù)器系統(tǒng)至關(guān)重要,所以會給病毒留下漏洞的所有 錯誤都能很快得到修復(fù)(瀏覽器軟件實際需要強(qiáng)行遵守這些安全規(guī)則;而有些瀏覽器則允許我們選擇不同的安全級別,防止對系統(tǒng)不同程度的訪問)。 大家或許會懷疑這種限制是否會妨礙我們將文件寫到本地磁盤。比如,我們有時需要構(gòu)建一個本地數(shù)據(jù)庫,或?qū)?shù)據(jù)保存下來,以便日后離線使用。最早的版本似乎每個人都能在線做任何敏感的事情,但這很快就變得非常不現(xiàn)實(盡管低價“ 互聯(lián)網(wǎng)工具 ” 有一天可能會滿足大多數(shù)用戶的需要)。解決的方案是 “ 簽了名的程序片 ” ,它用公共密鑰加密算法驗證程序片確實來自它所聲稱的地方。當(dāng)然在通過驗證后,簽了名的一個程 序片仍然可以開始清除你的磁盤。但從理論上說,既然現(xiàn)在能夠找到創(chuàng)建人 “ 算帳 ” ,他們一般不會干這種蠢事。 Java 為數(shù)中北大學(xué) 2020 屆畢業(yè)設(shè)計英文文獻(xiàn)譯文 字簽名提供了一個框架,在必要時,可讓一個程序片 “ 走 ” 到沙箱的外面來。 數(shù)字簽名遺漏了一個重要的問題,那就是人們在因特網(wǎng)上移動的速度。如下載回一個錯誤百出的程序,而它很不幸地真的干了某些蠢事,需要多久的時間才能發(fā)覺這一點呢?這也許是幾天,也可能幾周之后。發(fā)現(xiàn)了之后,又如何追蹤當(dāng)初肇事的程序呢(以及它當(dāng)時的責(zé)任有多大) 。
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1