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

正文內(nèi)容

畢業(yè)論文-基于nodejs的小型框架設(shè)計與實現(xiàn)-wenkub.com

2025-01-09 12:12 本頁面
   

【正文】 )。 使用說明: 一般不需要自行引用。 在 cookie 作為某個值的索引 返回值: 若 cookie數(shù)據(jù)對象中存在 key對應(yīng)的值則返回該值,否則返回 undefined () 功能說明: 獲取當(dāng)前的 Session 數(shù)據(jù)對象的 sid 參數(shù)說 明: 無 返回值: 若當(dāng)前 cookie數(shù)據(jù)對象中存在 sid則返回該 sid,否則返回 undefined (sid) 功能說明: 在 Cookie 數(shù)據(jù)對象中存儲 sid 的值(該方法不建議自己調(diào)用) 參數(shù)說明: sid:當(dāng)前 session對象的 sid值 返回值: 無 () 功能說明: 將 Cookie數(shù)據(jù)對象寫入到 response返回數(shù)據(jù)中 參數(shù)說明: 無 返回值: 第 37 頁 共 62 頁 無 使用說明:在文件頭部通過 var cookie = required(“ ./cookie” )獲取 cookie對象 object數(shù)據(jù)對象。 主要處理 Session相關(guān)數(shù)據(jù) 靜態(tài)資源處理類 FastJsonWeb 的 API 說明及使用說明 構(gòu)造函數(shù): Cookie(request,response) 參數(shù)說明: request: HttpRequest對象 response:HttpResponse 對象 公開方法: (key,value) 功能說明: 設(shè)置一個 Cookie鍵值對。 FastJsonWeb 文件目錄介紹 基本文件包括: 圖 其中 Cookie相關(guān)數(shù)據(jù)數(shù)據(jù)。同過基礎(chǔ)框架的畫圖說明詳細(xì)介紹了各個功能實現(xiàn)細(xì)節(jié),以及數(shù)據(jù)流程。然后根據(jù)當(dāng)前系統(tǒng)時間判斷該 Session 數(shù)據(jù)對象是否過期,如果過期則清空該數(shù)據(jù)對象。經(jīng)過一系列攔截器處理后,若數(shù)據(jù)請求流程依然存在,則從請求數(shù)據(jù)數(shù)據(jù)中解析出請求參數(shù)然后合成對象,傳給路由分發(fā)器。 第 26 頁 共 62 頁 服務(wù)端監(jiān)聽示意圖 圖 主要流程: 當(dāng)服務(wù)端監(jiān)聽都客戶端數(shù)據(jù)請求時講數(shù)據(jù)請求轉(zhuǎn)發(fā)給橫向切面請求攔截器。路由分發(fā)器根據(jù)相關(guān)配置判斷請求的屬性是業(yè)務(wù)數(shù)據(jù)請求還是靜態(tài)資源請求,傳遞給相應(yīng)的處理類。 ( 5)橫向切面請求攔截功能:在請求數(shù)據(jù)到達(dá)業(yè)務(wù)邏輯前完成對請求數(shù)據(jù)的初步處理,排除非法請求等。 ( 3) Seesion功能。 第 24 頁 共 62 頁 第三章 框架的設(shè)計與實現(xiàn) 框架概述 FastJsonWeb作為以一個小型 MVC框架,用來實現(xiàn)一般的小型高并發(fā)系統(tǒng),從實際需求角度出發(fā)應(yīng)該具備以下功能: ( 1)路由映射功能。下載安裝包 Windows Intaller(msi)。如下圖所示: 圖 圖 安裝完成后可以運行命令 node v 來查看當(dāng)前 ,然后運行 node進(jìn)入到即時運行狀態(tài) 輸入輸入代碼 (“ Hello world” )。 打 開 官 方 下 載 地 址 ,獲取系統(tǒng)相應(yīng)的安裝包,由于我們使用的是 Ubuntu系統(tǒng)所以選擇 的源代碼進(jìn)行編譯安裝。因此商業(yè)軟件還是可以引用這些具有 LGPL協(xié)議的代碼庫。和 GPL 要求任何使用/修改 /衍生之 GPL 類庫的的軟件必須采用 GPL 協(xié)議不同。 第 21 頁 共 62 頁 GPL協(xié)議的主要 內(nèi)容是只要在一個軟件中使用了具有 GPL 協(xié)議的產(chǎn)品,則該軟件產(chǎn)品必須也采用 GPL 協(xié)議,既必須也是開源和免費。 Apache Licence也是對商業(yè)應(yīng)用友好的許可。 BSD 是對商業(yè)應(yīng)用非常友好的開源協(xié)議。 下面簡單介紹一下幾種常見的開源協(xié)議以 及它們適用的范圍。 開源協(xié)議介紹 由于開源軟件越來越受歡迎,跟隨著開源協(xié)議也越來越多。與其他的代 碼管理網(wǎng)站如 SourceFe 和 Google Code 提供的服務(wù)不同, GitHub 的獨特地方在于對項目進(jìn)行分支管理非常簡單,具有很高的操作性。據(jù) Git用戶調(diào)查, GitHub 是最流行的 Git存取站點。屬性繼承的本質(zhì)就是一個對象可以訪問到它的原型鏈上任何一個原型對象的屬性。這三類對象中每一類都有一個 __proto__ 屬性,它指向該對象的原型,從任何對象沿著它開始遍歷都可以追溯到 。 JavaScript 中的對象一般分為三類,它們分別是構(gòu)造函數(shù)對象,用戶創(chuàng)建的對象和原型對象。 ,因為構(gòu)造函數(shù)內(nèi)的局部變量對其中定義的函數(shù)來說也是可見的。因為在絕大多數(shù)的面向?qū)ο笳Z言中,對象是基于類的(例如 Java 和 C++ ),對象是類實例化的結(jié)果。在 JavaScript 中, call 和 apply 是兩個神奇的方法 .call 和 apply 的功能是以不同的對象作為上下文來調(diào)用某個函數(shù) 。 上下文對象 在 JavaScript 中, this 關(guān)鍵字代表語境環(huán)境的上下文,即被調(diào)用函數(shù)所處的環(huán)境。 } } 以上是一個簡單的構(gòu)造函數(shù),接下來用 new 語句來創(chuàng)建對象: 第 18 頁 共 62 頁 var xiaomin = new User(39。] = false JavaScript 提供了構(gòu)造函數(shù) 。 = 39。 JavaScript 具有函數(shù)式編程的特性, 所以函數(shù)也是一種變量,大多數(shù)時候不用與一般的數(shù)據(jù)類型區(qū)分。因為絕大多數(shù)面向?qū)ο笳Z言中的對象都是基于類的,所以容易混淆類的實例與對象的概念。 對象 第 17 頁 共 62 頁 提起面向?qū)ο蟮某绦蛟O(shè)計語言,大多數(shù)人能夠立馬想到的是 C++、 Java 等強類型語言, 以及 Python、 Ruby 等腳本語言,它們共有的特點是基于類的面向?qū)ο蟆? 閉包 閉包( closure)是函數(shù)式編程中的概念,出現(xiàn)于 20 世紀(jì) 60 年代,最早實現(xiàn)閉包的語言是 Scheme,它是 LISP 的一種方言。在函數(shù)中引用一個變量時, JavaScript 會先搜索當(dāng)前函數(shù)作用域,或者稱為“局部作用域”,如果沒有找到則搜索其上層作用域,一直到全 局作用域。滿足以下條件的變量屬于全局作用域: 第 16 頁 共 62 頁 在最外層定義的變量; 全局對象的屬性; 任何地方隱式定義的變量(未定義直接賦值的變量)。 全局作用域 在 JavaScript 中有一種特殊的對象稱為 全局對象。例如下面代碼,在大多數(shù)類 C 的語言中會出現(xiàn)變量未定義的錯誤,而在 JavaScript 中卻完全合法: if (true) { var somevar = 39。正確使用作用域可以使代碼更清晰、易懂。 圖 而 Git關(guān)心的則是文件數(shù)據(jù)的整體變化如圖 圖 git總結(jié) 第 15 頁 共 62 頁 Git的設(shè)計顛覆了傳統(tǒng)版本控制的設(shè)計思想,對于文件控制的每環(huán)節(jié)的實現(xiàn)方式提供了新的設(shè)計方 案。已提交表示該文件已經(jīng)被安全地保存在本地數(shù)據(jù)庫中了;已修改表示修改了某個文件,但還沒有提交保存;已暫存表示把已修改的文件放在下次提交時要保存的清單中。它當(dāng) 初誕生的原因是為了更好的維護Linux 內(nèi)核源代碼。版本控制系統(tǒng)可以通過比較文件細(xì)節(jié)變化找出該文件的最后修改人,同時還可以通過對比找出導(dǎo)致出現(xiàn)怪異問題所在或者某個功能缺陷等等。 git 簡介 源代碼版本控制系統(tǒng)介紹 源代碼版本控制是用來記錄若干源碼文件內(nèi)容變化,方便以后用來查看修改某特定版本代碼的系統(tǒng)。 優(yōu)點總結(jié) 相對于傳統(tǒng)的 IDE, VIM具有安裝包小,啟動快,支持純終端編輯等優(yōu)點。寫代碼的時候 手需要時刻保持在鍵盤上 ,隨機定位代碼、隨機刪除代碼、移動代碼、插入代碼的操作大大多于閱讀、翻頁操作,中間卡頓一下效率就大大降低了 。 vim的設(shè)計理念是命令的組合。 Vim 在程序員中被廣泛使用,與 Emacs 并列成為類 Unix 系統(tǒng)用戶最受歡迎的編輯器。工具有 vim和 git,平臺主要是 github與 Ubuntu。 ( 7)目前沒有任何一個官方文檔規(guī)定 的代碼風(fēng)格,為了保持框架代碼的可讀性和可維護性,需要定制某一標(biāo)準(zhǔn),方便今后的維護。 (4)缺乏有效的開發(fā)工具。二是缺乏中文資料,有關(guān)資料只能去 。 (1) 還處于高速發(fā)展階段, API 不穩(wěn)定,處在不斷更新變化中,如果采用某個固定版本,則可能存在 bug 或者無法使用新特性。 開發(fā)框架存在的問題 小型的 MVC 框架意味著該框架應(yīng)具有易用性和高效性,能夠很大程度上滿足大多數(shù)業(yè)務(wù)的邏輯。借鑒這些其他平臺上現(xiàn)有的框架結(jié)構(gòu)和功能,設(shè)計開發(fā) FastJsonWeb 框架。對于開發(fā)效率有著嚴(yán)重的制約。 開發(fā)框架的原因 ,國內(nèi)還缺少使用 。對比而言, 其單線程性的特性,如果需要充分利用多核資源則需要使用多進(jìn)程的方法才能達(dá)到 理想情況下的單線程執(zhí)行過程會將 100%利用 CPU 核心資源,所有請求須等待當(dāng)前請求處理完畢后才進(jìn)入事件循環(huán)才能響應(yīng)。 更善于處理那些邏輯簡單但訪問頻繁的任務(wù),而不適合完成邏輯十分復(fù)雜的工作。因此你無法處理罕見的字符的時候,想用 實現(xiàn)一個多語言的字典工具是不可能做到的,除非放棄使用 javascript 原有的 string 數(shù)據(jù)類型,將所有的字符當(dāng)作二進(jìn)制的 Buffer 數(shù)據(jù)來處理。這樣在通常情況下它的編碼是定長的,有利于提高運算效率并且且兼容了 UCS2編碼,缺點是它本質(zhì)還是變長編碼,在應(yīng)用程序中處理起來還是存在不便之處。最初的 Unicode 設(shè)計者認(rèn)為 65536 個字符足以表示全世界所有的文字,因 第 7 頁 共 62 頁 此那個時候兼容 Unicode 的系統(tǒng)或平臺,如 Windows、 Java 和 JavaScript 在后來都遇到這個問題。目前JavaScript 支持的是雙字節(jié)的 UCS2字符集,即兩個字節(jié)來表示一個 Unicode 字符,這樣能表示出來的字符數(shù)是 65536。而到目前為止 的線程或進(jìn)程之間的通信還不方便,因為它根本沒有資源鎖,所以號稱不會 死鎖。 ( 1)多任務(wù)的單用戶應(yīng)用 前面介紹的都是服務(wù)器端編程,設(shè)計時的情況是用戶數(shù)量很多。盡管它是高性能的,新穎的,但也不得不寫出難以理解的邏輯代碼。 由于 具有以上優(yōu)點,所以對于 web 應(yīng)用來說 是優(yōu)秀的開發(fā)平臺。 (1)大規(guī)模的社交網(wǎng)絡(luò) Web 應(yīng)用,如微博, FaceBook等。 架構(gòu)的示意圖如下 圖 12 設(shè)計 的開發(fā)者從 libev 和 libeio 庫中進(jìn)一步封裝出來出 libuv層。這樣做優(yōu)點在于能夠集中 CPU 和內(nèi)存資源快速處理某個事件,并且盡量讓耗費資源的 I/O 操作并行執(zhí)行。異步式 I/O 請求完成后將被推送到事件隊列,等待主進(jìn)程進(jìn)行處理。 最大的特點就是采用異步式 I/O 與事件驅(qū)動的架構(gòu)設(shè)計。除此之外,自帶的服務(wù)器性能足以滿足生產(chǎn)環(huán)境的要求。這是它和其他 web 語言如 PHP、 Perl 的不同所在。不同于其他的語言的線性執(zhí)行, Node采用事件驅(qū)動機制,充分利用了 CPU的時間片輪轉(zhuǎn)機制,很大程度上降低了 CPU 的空閑率,同時它異步 I/O 與事件驅(qū)動的架構(gòu)設(shè)計和單線程模型對于構(gòu)建高性能,高并發(fā),高擴展的服務(wù)器具有相當(dāng)大的優(yōu)勢。 將 javascript 從瀏覽器移植到了普通服務(wù)器上 ,它運行在 Chrome的 V8高速引擎上,實現(xiàn)了操作系統(tǒng)訪問、網(wǎng)絡(luò)通信、文件讀寫等功能。越來越多的人使用 javascript。javascript。本框架將封裝,對請求數(shù)據(jù)等提供統(tǒng)一簡潔的方式,從而較大幅度的提升開發(fā)效率。 ,國內(nèi)還比較缺少使用 做應(yīng)用開發(fā)的框架,如果直接使用 底層 API 進(jìn)行應(yīng)用開發(fā)有較大的困難,基于此點,本論文開發(fā)設(shè)計一個簡單小型的 MVC框架,簡化 的使用的同時提高開發(fā)效率。 將 javascript從瀏覽器移植到了普通服務(wù)器上。使得 javascript也能實現(xiàn)了諸如文件系統(tǒng)、操作系統(tǒng)、網(wǎng)絡(luò)通信等功能。 目前 web 應(yīng)用中,普遍使用了 MVC模式(即 ModelViewController,模型,視圖,控制器)?;趯Σ煌脚_現(xiàn)有框架分析提取出本框架的功能點。 第 2 頁 共 62 頁 ABSTRACT is not only a separate language,but a new software development platform. Just like the Python and the Ruby, they are both language and transplant the javascript from your browser to a mon server. That makes JavaScript can achieve as file systems, operating sy
點擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1