欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于面向屏幕的數(shù)據(jù)流分析的方法和系統(tǒng)的制作方法_2

文檔序號:8257946閱讀:來源:國知局
模塊”或“系統(tǒng)”。此外,本發(fā)明的各個方面還可以實現(xiàn)為在一個或多個計算機可讀介質(zhì)中的計算機程序產(chǎn)品的形式,該計算機可讀介質(zhì)中包含計算機可讀的程序代碼。
[0039]可以采用一個或多個計算機可讀介質(zhì)的任意組合。計算機可讀介質(zhì)可以是計算機可讀信號介質(zhì)或者計算機可讀存儲介質(zhì)。計算機可讀存儲介質(zhì)例如可以是一但不限于一電、磁、光、電磁、紅外線、或半導體的系統(tǒng)、裝置或器件,或者上述的任意合適的組合。計算機可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個或多個導線的電連接、便攜式計算機盤、硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPR0M或閃存)、光纖、便攜式緊湊盤只讀存儲器(CD-ROM)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文件中,計算機可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結合使用。
[0040]計算機可讀的信號介質(zhì)可以包括例如在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號,其中承載了計算機可讀的程序代碼。這種傳播的數(shù)據(jù)信號可以采用多種形式,包括一但不限于一電磁信號、光信號或上述的任意合適的組合。計算機可讀的信號介質(zhì)可以是計算機可讀存儲介質(zhì)以外的任何計算機可讀介質(zhì),該計算機可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結合使用的程序。
[0041]計算機可讀介質(zhì)上包含的程序代碼可以用任何適當?shù)慕橘|(zhì)傳輸,包括一但不限于一無線、有線、光纜、RF等等,或者上述的任意合適的組合。
[0042]可以以一種或多種程序設計語言的任意組合來編寫用于執(zhí)行本發(fā)明的各個方面的操作的計算機程序代碼,所述程序設計語言包括面向?qū)ο蟮某绦蛟O計語言一諸如Java、Smalltalk、C++等,還包括常規(guī)的過程式程序設計語言一諸如“C”語言或類似的程序設計語言。程序代碼可以完全地在用戶計算機上執(zhí)行、部分地在用戶計算機上執(zhí)行、作為一個獨立的軟件包執(zhí)行、部分在用戶計算機上部分在遠程計算機上執(zhí)行、或者完全在遠程計算機或服務器上執(zhí)行。在涉及遠程計算機的情形中,遠程計算機可以通過任意種類的網(wǎng)絡一包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計算機,或者,可以連接到外部計算機(例如利用因特網(wǎng)服務提供商來通過因特網(wǎng)連接)。
[0043]下面將參照根據(jù)本發(fā)明實施例的方法、裝置(系統(tǒng))和計算機程序產(chǎn)品的流程圖和/或框圖描述本發(fā)明的各個方面。應當理解,流程圖和/或框圖的每個方框以及流程圖和/或框圖中各方框的組合,都可以由計算機程序指令實現(xiàn)。這些計算機程序指令可以提供給通用計算機、專用計算機或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機器,使得這些指令在通過計算機或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時,產(chǎn)生了實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的裝置。
[0044]也可以把這些計算機程序指令存儲在計算機可讀介質(zhì)中,這些指令使得計算機、其它可編程數(shù)據(jù)處理裝置、或其它設備以特定方式工作,從而,存儲在計算機可讀介質(zhì)中的指令就產(chǎn)生出包括實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的指令的制造品(article of manufacture)。
[0045]也可以把計算機程序指令加載到計算機、其它可編程數(shù)據(jù)處理裝置、或其它設備上,使得在計算機、其它可編程裝置或其它設備上執(zhí)行一系列操作步驟,以產(chǎn)生計算機實現(xiàn)的過程,從而使得在計算機或其它可編程裝置上執(zhí)行的指令提供實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/動作的過程。
[0046]現(xiàn)在參考圖1,其是示意性地表示根據(jù)本發(fā)明某個實施例的用于執(zhí)行計算機代碼的面向屏幕的數(shù)據(jù)流分析以便檢測不必要變量的方法的流程圖。
[0047]首先,如在101所示,提供具有多個用戶接口屏幕的計算機程序的計算機代碼。計算機程序可以是用于個人計算機、服務器計算機的應用、Web應用、硬件嵌入式應用和/或移動設備應用。
[0048]還參考圖2,其是根據(jù)本發(fā)明某些實施例的示例性購物移動應用的示意性表示圖200。所述應用允許用戶搜索、購買和銷售各種物品。程序的用戶接口屏幕是初始屏幕201、搜索結果屏幕202、物品查看屏幕203、先前購買屏幕204以及反饋屏幕205。
[0049]然后,如在102所示,將計算機代碼分為多個部分,以便所述部分的每一個包括用于導致加載和使用用戶接口屏幕之一的代碼。對于每個用戶接口屏幕,定義計算機代碼的一部分。例如,有關登錄屏幕的一部分包括用于在顯示器上呈現(xiàn)用戶名和密碼字段以及用于接收用戶輸入用戶名和密碼的代碼。例如,在圖2的購物移動應用中,負責執(zhí)行和呈現(xiàn)搜索結果屏幕202的搜索動作的計算機代碼被視為單獨部分。
[0050]然后,如在103所示,執(zhí)行變量使用分析以便檢測在每個部分中使用和/或計算哪些變量。例如,在圖2的購物移動應用中,該應用具有兩個控制流路徑。在第一控制流路徑中,當移動應用的用戶選擇在初始屏幕201上搜索物品時,初始屏幕201向搜索結果屏幕202發(fā)送變量“search(搜索)”作為用戶的搜索詞,搜索結果屏幕202使用該變量執(zhí)行和呈現(xiàn)搜索。搜索結果屏幕202向物品查看屏幕203發(fā)送變量“item(物品)”作為用戶從搜索列表中選擇的物品以便用戶查看。在第二控制流路徑中,當用戶選擇查看其先前購買時,初始屏幕201向先前購買屏幕204發(fā)送變量“id”作為用戶的標識。當用戶選擇從其先前購買中查看物品時,先前購買屏幕204向物品查看屏幕203發(fā)送變量“item”作為用戶選擇的物品。當用戶選擇提供有關其先前購買的一個物品的反饋時,先前購買屏幕204向反饋屏幕205發(fā)送變量“item”作為用戶選擇的物品以及變量“id”作為用戶的標識。如果用戶選擇查看先前購買的物品,則再次使用物品查看屏幕203,因為兩個物品查看動作很可能使用相同的代碼塊實現(xiàn)。
[0051]然后,如在104所示,構造數(shù)據(jù)依賴模型,例如控制和數(shù)據(jù)流表示圖,其定義各個部分之間的依賴性并且基于變量使用分析。數(shù)據(jù)從一個部分流向相關部分。使用觸發(fā)屏幕之間的轉(zhuǎn)變的用戶動作作為表示圖中的邊,從而表示圖中各個部分之間的轉(zhuǎn)變。每個屏幕表示為一種狀態(tài),并且移動應用中的屏幕之間的轉(zhuǎn)變表示為狀態(tài)機中的轉(zhuǎn)變。如果變量X在屏幕SI中設置并且隨后在屏幕S2中使用,則將具有標簽X的數(shù)據(jù)邊從SI添加到S2。例如,圖2的購物移動應用中的表示圖200。在初始屏幕201中進行搜索的用戶動作呈現(xiàn)為邊以便轉(zhuǎn)變到搜索結果屏幕202。
[0052]然后,如在105所示,針對數(shù)據(jù)依賴模型執(zhí)行數(shù)據(jù)流分析以便標識由屏幕加載但未在該屏幕的相應部分或依賴于該屏幕的多個相應部分中使用的不必要變量。例如,在圖2的購物移動應用中,變量“X”由初始屏幕201計算并且發(fā)送到搜索結果屏幕202,但未在初始屏幕201和/或依賴于初始屏幕201的屏幕(其是搜索結果屏幕202和物品查看屏幕203)中使用。在這種情況下,通過數(shù)據(jù)流分析標識變量“X”。
[0053]所述分析可以使用已知的程序切片技術。切片將程序分為有意義的可執(zhí)行子程序,該子程序針對一組給定變量計算的值與程序計算的值相同,如最早由M.Weiser所述(1984年)。根據(jù)屏幕和先前劃分的部分進行切片。用于計算程序切片的通用算法使用數(shù)據(jù)和控制依賴,并且屏幕的依賴模型立即提供數(shù)據(jù)依賴關系:從另一個屏幕接收數(shù)據(jù)的屏幕對另一個屏幕具有數(shù)據(jù)依賴。從所有屏幕中的所有用戶可見元素開始,切片算法向后遞歸地跟蹤數(shù)據(jù)和控制依賴關系以便收集切片。
[0054]可選地,調(diào)整標準到達定義數(shù)據(jù)流等式并使用它們進行分析。IN函數(shù)是進入屏幕S的變量集合,并被定義為從S的前體進入S的所有變量的組合,S的前體是在S之前進入控制流圖的屏幕。OUT函數(shù)是離開S的變量集合,并被定義為S的前體的所有變量減去其變量由S終止的那些到達定義,加上在S中生成的任何新定義。使用標準KILL和GEN集合,其中KILL集合是在屏幕中寫入的變量集合,并且GEN集合是讀取而未首先寫入的變量集合。
[0055]可選地,根據(jù)所述分析,從計算機代碼中刪除不必要變量。例如,在圖2的購物移動應用中,刪除變量“X”。
[0056]可選地,通過訪問遠程服務器獲得某些不必要變量,因此不必要地減慢程序與遠程服務器的通信。在這種情況下,當使用所述程序時,刪除這些不必要變量將加速通信。
[0057]現(xiàn)在參考圖3,其是根據(jù)本發(fā)明某個實施例的用于執(zhí)行計算機代碼的面向屏幕的數(shù)據(jù)流分析以便檢測不必要變量的示例性系統(tǒng)。
[0058]系統(tǒng)300包括切片模塊301,其根據(jù)用戶接口屏幕,將具有多個接口屏幕的計算機程序的計算機代碼分為多個部分。系統(tǒng)300還包括變量使用模塊302,其執(zhí)行分
當前第2頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
岳普湖县| 辽阳市| 盈江县| 同江市| 庆元县| 吐鲁番市| 石楼县| 体育| 东宁县| 伊宁市| 托克托县| 孟津县| 钦州市| 中阳县| 微山县| 桐乡市| 海门市| 凤翔县| 奉化市| 沙坪坝区| 铁岭县| 巴楚县| 色达县| 二连浩特市| 和顺县| 陈巴尔虎旗| 百色市| 吉首市| 临城县| 牡丹江市| 涿鹿县| 丹东市| 沁阳市| 海晏县| 东兴市| 麻城市| 郯城县| 涿州市| 上高县| 海口市| 永胜县|