精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Ajax必備 開發須思考的基本原則

開發 后端
我們知道,AJAX不是一種新的編程語言,而是一種用于創建更好更快以及交互性更強的 Web 應用程序的技術。本文介紹了Ajax開發時需要思考的幾個基本原則,希望對你有幫助,一起來看。

通過 AJAX,您的 JavaScript 可使用 JavaScript 的 XMLHttpRequest 對象來直接與服務器進行通信。通過這個對象,您的 JavaScript 可在不重載頁面的情況與 Web 服務器交換數據。下面介紹Ajax開發時需要思考的幾個基本原則

我們用到的很多框架中都已經固化了基于頁面的傳統應用模式,同時這些應用模式也已經深深進入了我們的思想中。我們花幾分鐘來揭示出哪些核心概念是我們需要重新思考的,以及如何從Ajax的角度來重新思考。

一、瀏覽器中的是應用而不是內容

在傳統的基于頁面的Web應用中,瀏覽器扮演著啞終端1的角色。它對用戶處于操作流程哪一階段一無所知。這些信息全部都保存在服務器上,確切地說,就是在用戶會話上。時至今日,服務器端的用戶會話早已是司空見慣。如果你使用Java 或者.NET 編程,服務器端的用戶會話更是標準API 的一部分——還有Request、Response、MIME 類型——沒有了它們簡直不可想象。

當用戶登錄或者以其他方式初始化一個會話時,系統會創建幾個服務器端的對象。例如,電子商務類型的網站需要創建表示購物車以及用戶身份證明的對象。同時將瀏覽器站點的首頁呈現給用戶,這個HTML 標記的數據流由模板文件以及特定于該用戶的數據和內容(例如該用戶最近瀏覽的商品列表)組成。

用戶每次和服務器交互,都會獲得另一個文檔。在這個文檔中,除了特定于該用戶的數據以外,包含的其他模板文件和數據都是相同的。瀏覽器總是忠實地丟棄掉老的文檔,顯示新的文檔,因為它是啞終端,而且也不知道還可以做些什么。

當用戶選擇退出或者關閉瀏覽器的時候,應用退出,會話消失。這個時候持久層會把用戶下次登錄后需要顯示的信息存儲起來。Ajax則不同,它把一部分應用邏輯從服務器端移到了瀏覽器端。

傳統Web應用的生命周期。用戶和應用會話的所有狀態都保留在Web服務器上。用戶在會話中看到的是一系列的頁面,每次頁面切換都不可避免地要到服務器上走一個來回。

Ajax應用的生命周期。用戶登錄后,服務器交付一個客戶端應用給瀏覽器。這個應用可以獨立處理很多的用戶交互,對于自己無法獨立處理的交互,應用會以后臺方式發送請求給服務器,而不會打斷用戶的操作流程。
用戶登錄的時候,服務器交付給瀏覽器一個復雜得多的文檔,其中包含大量的JavaScript代碼。這個文檔將會在整個會話的生命周期內與用戶相伴。在這一過程中,隨著用戶與其交互,它的外觀可能會發生相當大的變化。它知道如何響應用戶的輸入,能夠決定對于這些請求,是自行處理還是傳遞給Web服務器(Web服務器再去訪問數據庫或者其他資源),或者通過兩者結合的方式進行處理。因為這個文檔在整個用戶會話中都存在,所以它可以保存狀態1。例如,購物車的內容可以保存在瀏覽器中而不是服務器的會話中。

二、服務器交付的是數據而不是內容

我們已經提到,在傳統的Web應用中,服務器在每個步驟都需要把模板文件、內容和數據混合發送給瀏覽器。但實際上,當向購物車中添加一件物品的時候,服務器真正需要響應的僅僅是更新一下購物車中的價格。

基于Ajax的購物車可以向服務器發起一個異步請求來完成這件事,這樣做顯得更聰明。模板文件、導航列表和頁面布局上的其他部分已經隨著初始頁面發送給了瀏覽器,服務器無需重發,以后每次只需要發送相關的數據就可以了。Ajax應用可以通過多種方式來做這件事情。例如,返回一段JavaScript代碼、一段純文本或者一小段XML文檔。這些方式各自的優缺點,我們將留到第5 章再詳細考察。但是,毫無疑問的是,無論返回數據采用何種格式,這些方式所傳輸的數據量都要比傳統的Web應用中一股腦返回一個大雜燴的方式少得多。

在Ajax應用中,網絡的通信流量主要是集中在加載的前期,無論如何,用戶登錄后是需要一次性地將一個大而復雜的客戶端交付給瀏覽器。但是在此之后,與服務器的通信則會有效率得多。對于瞬態應用來說,積累起來的通信流量要比以前的基于頁面的Web應用少很多。與此同時,平均的交互次數則有所增加。整體而言,Ajax應用的帶寬消耗要比傳統的Web應用低一些。

三、用戶交互變得流暢而連續

瀏覽器提供了兩種輸入機制:超鏈接和HTML 表單。超鏈接可以在服務器上創建,并預加載指向動態服務器頁面或者servlet 的CGI 參數。可以用圖片或者CSS(層疊樣式表)來裝飾超鏈接,并且當鼠標停在上面時還可以提供基本的反饋。經過合理設計,超鏈接可以變成一個很有想像力的UI 組件。表單則提供了桌面應用的一組基礎UI 組件:輸入文本框、單選按鈕和多選按鈕,還有下拉列表。但仍然缺少很多有用的UI 組件,例如,沒有可用的樹控件、可編輯的柵格、組合輸入框等。表單像超鏈接一樣,也指向服務器的一個URL 地址。

超鏈接和表單也可以指向JavaScript函數。這一技術通常用在將數據提交給服務器之前對表單輸入進行簡單的校驗,如檢驗是否有空值,數值是否越界等等。這些JavaScript函數的生存期和頁面本身是一致的,當頁面提交之后,這些函數也就不存在了。

當一個頁面已提交而下一個頁面還沒有顯示出來的時候,用戶實際上處于沒人管的狀態。老的頁面還要顯示一會兒,瀏覽器甚至還會允許用戶點擊一些鏈接。但這些點擊可能會導致一些不可預料的結果,甚至破壞服務器端會話的狀態。用戶通常應該等到頁面刷新完成,當然也可以選擇在刷新完成之前就在新頁面上做一些操作。例如,當頁面只顯示了一部分時從中選擇一條褲子放進購物車不大可能會造成什么破壞(例如,不會修改頂級的服裝分類:男裝、女裝、童裝、配飾)。我們繼續看這個購物車的例子。Ajax的購物車是通過異步方式發送數據的,用戶可以很快地把東西拖進來,就像點擊一樣快。只要客戶端購物車的代碼足夠健壯,它可以很輕松地處理這樣的負載,而用戶則可以繼續做他想做的事。

要知道,在服務器端并沒有一個真正的購物車等著裝東西,只有會話中的一個對象而已。購物的時候,用戶并不想知道會話對象,購物車對于用戶而言是一個較恰當的比喻,用現實世界中熟悉的概念來描述這里發生的事情。對于用戶來說,如果強迫他們去理解計算機領域中的術語,只會讓他們遠離網站。等待頁面的刷新,一下子就把用戶從愉快的使用體驗中拽了出來,讓他感覺到自己所面對的只不過是一臺冰冷的機器罷了。使用Ajax來實現這些應用則可以避免這些令人不快的體驗。當然了,在這個例子中的購物只是一個瞬態活動。考察一下其他的業務領域,例如,一個業務量很大的幫助中心或者一項復雜的工程任務,如果因為需要等待頁面刷新,而將工作流程打斷幾秒鐘,那肯定是不可接受的。

Ajax的另一個好處是,我們可以對豐富的用戶操作事件進行捕獲。類似于拖拽這樣的復雜UI 概念也不再是遙不可及的。這使得Web應用的UI 體驗可以全面提升到近乎與桌面應用的UI組件相媲美的高度。從可用性的角度來看,這很重要,不僅僅是因為它釋放了我們的想象力,而且也是因為它可以將用戶交互和服務器端的請求更加充分地混合起來。在傳統的Web應用中,與服務器交互需要點擊超鏈接或者提交表單,然后等待頁面的刷新,這打斷了用戶的工作流程。與之相對應的是,讓服務器響應鼠標移動、拖拽或者鍵盤輸入這樣的用戶事件,也就是說,服務器在用戶身邊為用戶服務,而不是擋在用戶前面,打斷他的操作。
google Suggest(www.google.com/webhp?complete=1)就是這樣一個簡單的但是很有說服力的例子。當用戶在搜索框鍵入一些字符的時候,應用從服務器取回與用戶已鍵入字符串相似的搜索條目(根據全世界其他人的搜索),并且顯示在輸入框下方的下拉列表中。

四、有紀律的嚴肅編程

現在傳統的Web應用有時候也會用到JavaScript,不過主要是用來給頁面添加一些花哨的東西。基于頁面的模型使得這樣的增強沒有辦法更進一步,限制了用戶可以得到的更加理想的交互。這種類似于第22條軍規的狀況,使得JavaScript很不公平地獲得了一種瑣碎的、自由散漫的編程語言的名聲,為那些嚴肅的開發者1所不屑。

為Ajax應用編程的情況則完全不同。提交給用戶運行的應用將會一直運行直到用戶關閉程序為止。不崩潰,不變慢,也沒有內存泄漏之類的毛病。如果我們的產品定位于獨占式應用的市場,這還意味著很多小時的密集使用。要達到這個目標,當然需要高性能的、可維護的代碼,這與服務器端應用的要求是一致的。

相比之下,Ajax的代碼庫會比傳統的Web應用大很多。對代碼庫進行良好的組織是非常重要的。編寫代碼不再是單個開發者的職責,而是整個團隊來參與。可維護性、分離關注點、共同的編程風格以及設計模式,這些都是需要考慮的問題。

從某個角度來看,Ajax應用就是用戶所使用的一塊復雜的代碼,它需要高效地與服務器進行通信。它顯然來源于傳統的基于頁面的Web應用,但是它們之間的相似性也僅限于此,兩者之間的差別就像是木馬輪和現代自行車之間的差別。在腦海中要記得它們之間的這些差別,因為只有這樣才能創造出真正引人注目的Web應用。

原文地址:http://www.yiiyaa.net/

【編輯推薦】

  1. 10大Ajax開發守則
  2. Ajax應用需要注意的事項
  3. jQuery+Ajax+PHP+MySQL實現分類列表管理
  4. 詳解struts2與Ajax的集成
  5. Ajax和WEB服務數據格式:JSON JSONP

 

責任編輯:于鐵 來源: yiiyaa.net
相關推薦

2012-03-06 09:02:41

軟件開發

2022-10-25 09:50:56

2017-04-17 20:50:50

2024-04-28 11:32:32

軟件架構開發

2010-09-28 15:07:48

JavaScript

2021-09-13 10:30:42

C++代碼設計模式

2010-08-12 10:03:21

Flex性能優化

2014-08-25 09:08:23

大數據應用開發

2020-01-08 18:27:53

七項基本原則高效漏洞管理IT

2011-04-22 16:17:53

電腦維修

2015-06-04 10:13:56

DCIM運維管理

2020-01-09 08:55:45

漏洞漏洞管理VM

2018-01-07 00:10:39

數據中心運營IT

2010-05-21 11:22:04

2010-09-09 13:59:55

CSS

2010-09-08 13:53:31

CSS

2011-06-20 16:27:06

2010-08-10 09:53:45

Flex性能優化

2014-11-21 10:17:32

響應式WEB

2010-08-25 15:50:43

點贊
收藏

51CTO技術棧公眾號

成人国产一区二区三区| 久久av资源网站| www.avtt| 日中文字幕在线| 日韩中文字幕1| 色偷偷av一区二区三区乱| 色男人天堂av| 性欧美又大又长又硬| 国产日产欧美一区| 亚洲一区二区久久久久久久| 欧美成人精品欧美一级乱黄| 成人一区而且| 日韩一区二区高清| 国产中文字幕在线免费观看| av电影在线观看网址| 国产成人在线视频网站| 欧美极度另类性三渗透| 久久婷婷五月综合| 91精品短视频| 欧美视频一区二区| 国产资源在线免费观看| 成年网站在线| 高潮精品一区videoshd| 国产精品99久久久久久人| 一区二区在线观看免费视频| 视频一区中文| 欧美精品一区视频| 欧美女同在线观看| 久热在线观看视频| 亚洲欧美aⅴ...| 天天爽天天狠久久久| 免费a视频在线观看| 秋霞电影网一区二区| 久久琪琪电影院| 一级黄色片日本| 亚洲制服欧美另类| 亚洲成人免费网站| 尤物网站在线看| yw.尤物在线精品视频| 图片区小说区国产精品视频| 伊人情人网综合| 国产三级电影在线观看| 91在线视频网址| 成人女人免费毛片| 国产视频在线观看视频| 免费黄网站欧美| 日本成熟性欧美| 国产精久久久久久| 欧美日韩一区二区高清| 久久夜色撩人精品| 99国产精品无码| 国产精品欧美在线观看| 日韩精品在线观| 手机在线成人av| 51vv免费精品视频一区二区| 欧美视频精品在线观看| 成人免费xxxxx在线视频| 亚洲一区站长工具| 亚洲午夜电影网| 免费的一级黄色片| 手机av免费在线| 亚洲男人的天堂在线aⅴ视频| 亚洲制服中文| 拍真实国产伦偷精品| 国产精品欧美一区喷水| 亚洲成色www久久网站| 成人精品福利| 欧美国产禁国产网站cc| 亚洲一区在线免费| 精品176二区| 亚洲蜜臀av乱码久久精品| 综合操久久久| gogogogo高清视频在线| 亚洲女与黑人做爰| 成人区一区二区| 制服丝袜在线播放| 亚洲一区二区3| 日韩欧美不卡在线| 在线观看的黄色| 色视频成人在线观看免| 国产高清视频网站| 91福利精品在线观看| 日本韩国欧美在线| 一起操在线视频| 一区视频网站| 亚洲精品mp4| 偷拍夫妻性生活| 成人女性视频| 欧美xxxx18性欧美| 日本少妇激情视频| 欧美亚洲一区| 成人黄色激情网| 亚洲av无码一区二区乱子伦| 成人教育av在线| 久久国产一区| 日本在线视频观看| 亚洲一区二区在线视频| 六月激情综合网| 激情久久99| 欧美大片一区二区| 特级西西人体wwwww| 日本大胆欧美| 久久在精品线影院精品国产| 国产在线拍揄自揄拍| 日韩电影一二三区| 99久久精品免费看国产四区| 亚洲av激情无码专区在线播放| 国产人久久人人人人爽| 中文字幕第50页| 黄色漫画在线免费看| 欧美日韩国产首页在线观看| 911亚洲精选| 日本电影一区二区| 欧美老少做受xxxx高潮| 欧美一区二区三区网站| 国产美女主播视频一区| 欧美大香线蕉线伊人久久国产精品| 天堂а√在线官网| 岛国av在线不卡| 亚洲理论中文字幕| 国产毛片一区二区三区| 欧美裸体xxxx极品少妇| 亚洲综合成人av| 成人app下载| 老汉色影院首页| 成人啊v在线| 亚洲黄色av网站| 日韩女优一区二区| 麻豆成人久久精品二区三区小说| 久久久久久九九九九| 182tv在线播放| 欧美日韩中文精品| 制服丝袜在线第一页| 99精品在线观看| 国产成人精品优优av| 亚洲男女视频在线观看| 国产精品国产自产拍高清av王其| 久久国产精品网| 久久久91麻豆精品国产一区| 中文字幕精品在线| 伊人久久久久久久久久久久| www.日韩av| 你真棒插曲来救救我在线观看| vam成人资源在线观看| 亚洲一区av在线播放| www.国产高清| 99精品久久久久久| 亚洲熟妇无码av在线播放| 高清久久一区| 亚洲乱码av中文一区二区| 日韩三级免费看| 成人av在线观| 欧美三级在线观看视频| 国产精品三p一区二区| 久久久999国产| 在线观看免费中文字幕| 26uuu久久综合| 国产亚洲欧美在线视频| 欧美激情极品| 日韩美女中文字幕| 可以在线观看的黄色| 色综合咪咪久久| 阿v天堂2014| 蜜桃久久久久久久| 一区二区三区四区欧美| 在线一区视频观看| 丝袜亚洲另类欧美重口| 三级网站在线播放| 国产精品麻豆99久久久久久| 黄色一级片免费的| 欧美高清日韩| 成人做爰66片免费看网站| 久久国产精品黑丝| 亚洲福利小视频| 九九九国产视频| 91美女视频网站| 国内外成人激情视频| 欧美美女在线| 国产91精品最新在线播放| 国产区视频在线| 色噜噜狠狠色综合中国| 69xxx免费| 国产精品一区免费视频| 日本欧美黄色片| 国内精品久久久久久久久电影网| 国产精品香蕉在线观看| 特级西西444www高清大视频| 中文字幕乱码一区二区免费| 国偷自产av一区二区三区麻豆| 亚洲尤物在线| youjizz.com亚洲| 全球av集中精品导航福利| 成人免费大片黄在线播放| 999av小视频在线| 国产一区二区动漫| 亚洲乱码国产乱码精品精软件| 色诱视频网站一区| 久草视频在线资源| 国产精品久久久久影院亚瑟| 丝袜熟女一区二区三区| 久久精品免费观看| 免费看一级大黄情大片| 亚洲字幕久久| 亚洲7777| 四虎5151久久欧美毛片| 亚洲a在线观看| 桃花岛成人影院| 欧美精品成人91久久久久久久| 国产福利第一视频在线播放| 精品国产a毛片| 国产片在线播放| 欧美在线一二三四区| 男人的天堂一区二区| 亚洲理论在线观看| 天堂av网手机版| 久久久久高清精品| 日本少妇xxxx| 国产91精品露脸国语对白| www.com污| 青青草97国产精品免费观看| 国产精品后入内射日本在线观看| 欧美精选一区| 自拍偷拍亚洲色图欧美| 欧美另类69xxxxx| 精品一区二区三区日本| 97久久超碰| 国产欧美日韩中文字幕在线| 97成人超碰| 日韩免费高清在线观看| 中文字幕不卡三区视频| 国内精品视频在线| 丝袜美腿av在线| 超碰日本道色综合久久综合 | 国产一级揄自揄精品视频| 日韩美女一级视频| 亚洲国产一区自拍| 天堂成人在线视频| 亚洲高清在线观看| 姝姝窝人体www聚色窝| 亚洲成人aaa| 色视频在线观看免费| 精品视频在线播放免| 四虎影视精品成人| 亚洲天堂免费观看| 超碰免费在线观看| 自拍偷拍亚洲一区| 黄视频网站在线| 欧美第一黄色网| sis001亚洲原创区| 69久久夜色精品国产69乱青草| 国产免费拔擦拔擦8x在线播放 | 男人操女人免费| 爽好久久久欧美精品| 久久久久国产一区| 久久精品国产精品青草| 久久久久久国产精品日本| 丰满放荡岳乱妇91ww| 国产又粗又长又爽| av电影在线观看一区| 一区二区三区四区免费| 中文字幕va一区二区三区| 2014亚洲天堂| 亚洲一区二区影院| 国产成人亚洲精品自产在线 | 亚洲乱码国产乱码精品精天堂| 精品国产av 无码一区二区三区| 欧美成人猛片aaaaaaa| www香蕉视频| 91精品免费在线| 四虎永久在线观看| 国产丝袜视频一区| 老司机av在线免费看| 色综合导航网站| 在线免费av导航| 68精品久久久久久欧美| 校园春色亚洲| 成人羞羞国产免费| 99a精品视频在线观看| 极品校花啪啪激情久久| jizzjizz欧美69巨大| 日本不卡一区二区三区四区| 欧美日韩综合| 虎白女粉嫩尤物福利视频| 麻豆精品在线看| 天天干天天色天天干| 成人免费看黄yyy456| 在哪里可以看毛片| 国产精品的网站| 国产亚洲欧美久久久久 | 国产女人高潮时对白| 亚洲第一区在线| 东热在线免费视频| 欧美激情精品久久久久久蜜臀| 牛牛精品一区二区| 国产色婷婷国产综合在线理论片a| 超碰成人免费| 午夜午夜精品一区二区三区文| 91精品精品| 国产成人手机视频| 国产suv精品一区二区6| 黑人巨大精品欧美| 一区二区三区蜜桃| av首页在线观看| 亚洲精品在线电影| 免费在线观看一级毛片| 色综合影院在线| 午夜影院在线观看国产主播| 成人区精品一区二区| 不卡中文字幕| 亚洲 欧美 日韩 国产综合 在线 | v天堂中文在线| 国产欧美日韩精品a在线观看| 日韩视频免费观看高清| 欧美一区二区日韩一区二区| 成年人在线观看视频| 久久国产精品久久精品| 视频精品导航| 精品国产免费久久久久久尖叫| 欧美/亚洲一区| 我要看一级黄色大片| 丁香啪啪综合成人亚洲小说| 男人与禽猛交狂配| 在线看不卡av| 日本啊v在线| 国内精品视频在线| 视频二区欧美| 热久久最新网址| 国产成人99久久亚洲综合精品| 欧美日韩日本网| 伊人成人网在线看| 在线免费观看视频黄| 99久久精品国产毛片| 北条麻妃在线观看视频| 在线欧美一区二区| 男女污视频在线观看| 26uuu国产精品视频| 国产亚洲成av人片在线观黄桃| 日韩欧美一区二区三区四区| 久久久蜜桃一区二区人| 日本道中文字幕| 亚洲成人午夜电影| 亚洲狼人综合网| 欧美激情a∨在线视频播放| 亚洲成人影音| 欧美一级中文字幕| 丁香六月综合激情| 国产在线综合网| 精品国产91亚洲一区二区三区婷婷| 成人女同在线观看| 国产91视觉| 夜夜精品视频| 久久久久9999| 精品国产999| 美国一级片在线免费观看视频| 欧美性受xxxx白人性爽| 久久99视频| 国产视频在线视频| 国产欧美日韩久久| 国产毛片毛片毛片毛片毛片| 久久人人爽亚洲精品天堂| 欧美激情精品| 欧美国产日韩激情| 成人国产精品免费观看视频| 伊人手机在线视频| 亚洲欧美日韩直播| 日韩国产大片| 日本一二三区视频在线| 国产一区二区免费在线| 国产大片中文字幕| 亚洲欧美日韩一区二区三区在线| 欧美综合社区国产| 青青视频免费在线观看| 91亚洲大成网污www| 中文字幕xxxx| 中文字幕不卡av| 中文字幕一区二区三区日韩精品 | 亚洲中文字幕一区| 色综合久久久久久久久久久| √新版天堂资源在线资源| 成人美女免费网站视频| 国产一区白浆| 91香蕉国产视频| 欧美一区二区三区四区视频| 国产理论在线| 亚洲蜜桃在线| 99久久99久久精品国产片果冻| 无码人妻aⅴ一区二区三区有奶水| 久久天堂av综合合色| 成人h动漫免费观看网站| 黄色一级片在线看| 国产精品看片你懂得| 亚洲xxx在线| 国产精品视频99| 精品69视频一区二区三区Q| 69xxx免费| 亚洲黄色www网站| 欧美日韩激情电影| 人妻少妇精品无码专区二区| 欧美国产日韩一二三区| 免费国产精品视频|