• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于源碼模式挖掘的軟件輔助開發(fā)技術(shù)研究

    2017-04-21 00:44:12沈莉莉
    電子科技 2017年4期
    關(guān)鍵詞:項集置信度插件

    付 鵬,沈莉莉

    (上海理工大學(xué) 光電信息與計算機(jī)工程學(xué)院,上海 200093)

    基于源碼模式挖掘的軟件輔助開發(fā)技術(shù)研究

    付 鵬,沈莉莉

    (上海理工大學(xué) 光電信息與計算機(jī)工程學(xué)院,上海 200093)

    由于軟件代碼的復(fù)雜性,對于不了解框架的新手,很難利用開源社區(qū)中的代碼來開發(fā)軟件。因此,利用數(shù)據(jù)挖掘技術(shù)挖掘現(xiàn)有代碼中的編程模式成為研究熱點。文中介紹了頻繁項挖掘Apriori算法,并提出了基于源碼模式的軟件輔助開發(fā)方法。它能夠根據(jù)用戶輸入的關(guān)鍵字來智能匹配類庫中的特定父類,挖掘基于此父類的編程模式,給出優(yōu)先要重寫的方法以及關(guān)聯(lián)規(guī)則。實驗結(jié)果表明,新手可以利用這些編碼建議,快速學(xué)習(xí)一個新的框架,提高開發(fā)效率。

    源碼;數(shù)據(jù)挖掘;編程模式;軟件輔助開發(fā)

    如今開源社區(qū)受到越來越多人的關(guān)注,人們可以輕松從網(wǎng)絡(luò)上獲取各種軟件源代碼,軟件重用[1]是軟件工程的一個熱點研究方向,它可以為開發(fā)新手帶來很多好處,例如提高工作效率、減小開發(fā)成本、獲取更好的產(chǎn)品質(zhì)量以及更快的投入市場。但新手很難理解基于同一種框架而編寫的代碼,首要的問題是不知道編寫第一行代碼。

    框架作為目前軟件開發(fā)的一個重要組成部分,扮演著重要角色,然而對框架不了解的新手,要重用框架并不容易??蚣鼙緛砭褪菫榱遂`活性而設(shè)計的,因此引入了很多抽象類,這使理解框架變的更加復(fù)雜。而且,開發(fā)者單單理解一個類無法使用框架,還需要理解框架的整體架構(gòu)。盡管如此,目前還是有很多方法來解決這個問題,但存在一些弊端。例如,一些框架教程以及相應(yīng)的API[2]文檔,可以幫助開發(fā)人員學(xué)習(xí)框架,但框架開發(fā)人員編寫文檔的水平參差不齊,有些框架開發(fā)者編寫的文檔質(zhì)量不高;另外有的框架版本已更新,但文檔并沒有及時更新。文獻(xiàn)[3]提出了一種挖掘用戶類庫的重用模式的方法,可以根據(jù)用戶選擇的應(yīng)用,挖掘其中的類庫重用模式,這樣在使用特定框架時,只需已知其他開發(fā)者如何使用框架,就能以同樣的方式使用框架,這對構(gòu)建應(yīng)用有一定的幫助,但用戶首先需要挑選那些使用框架與其一致的應(yīng)用,此方法挖掘出來的關(guān)聯(lián)規(guī)則[4- 6],對于框架初學(xué)者來說,要理解這些關(guān)聯(lián)規(guī)則并應(yīng)用到自己的應(yīng)用中難度較大。文獻(xiàn)[7]提出了一種幫助開發(fā)人員理解框架的方法,這種方法可以在用戶實例化一個對象之后,挖掘現(xiàn)有代碼庫,按照置信度給出下一步應(yīng)該進(jìn)行操作的提示,這樣用戶在編寫代碼的時候就有了一定的參考,但初學(xué)者并不知道首先要實例化哪個對象。針對上述問題,文中提出了一種新的輔助開發(fā)方法CodeMining,它根據(jù)現(xiàn)有框架源碼庫,挖掘其中的編程模式,為不了解框架的新手提供編碼建議,輔助開發(fā)。

    1 Apriori算法

    基本概念:規(guī)則A->B在事務(wù)集D中成立。

    (1)支持度:P(A∩B),既A發(fā)生時B也發(fā)生的概率;

    (2)置信度:P(B|A),即在A發(fā)生的事件中同時發(fā)生B的概率P(AB)/P(A)。

    例如購物籃[8]分析:泡面?火腿腸

    例:[支持度:2%,置信度:50%]

    支持度2%:意味著2%顧客同時購買泡面和火腿腸。

    置信度50%:意味著購買泡面的顧客50%也購買火腿腸;

    (3)如果事件A中包含k個元素,那么稱這個事件A為k項集事件A滿足最小支持度閾值的事件為頻繁k項集;

    (4)同時滿足最小支持度閾值和最小置信度閾值的規(guī)則稱為強(qiáng)規(guī)則。

    Apriori算法[9-10]的主要作用是尋找所有支持度不小于最小支持度(minsup)的項集。項集的支持度是指包含該項集的事務(wù)所占所有事務(wù)的比例。頻繁項集[11-12]就是指滿足給定的最小支持度的項集。該算法會對數(shù)據(jù)集進(jìn)行多次遍歷:第一次遍歷,對所有單項集的支持度進(jìn)行計數(shù)并確定頻繁項;在后續(xù)的每次遍歷中,利用上一次遍歷所得頻繁項集作為種子項集,產(chǎn)生新的潛在頻繁項集(即候選項集),接下來就是對候選項集的支持度進(jìn)行計數(shù),在本次遍歷結(jié)束時統(tǒng)計滿足最小支持度的候選項集,則本次遍歷對應(yīng)的頻繁項集就確定了,這些頻繁項集又作為下一趟遍歷的種子。重復(fù)此遍歷過程,直到再不能發(fā)現(xiàn)新的頻繁項集,算法結(jié)束。

    其中,Apriori算法有兩個核心步驟:(1)連接步:假設(shè)Apriori算法對事務(wù)集中的項按字典順序排序,前面所說的由種子項集生成新的頻繁K項集就是通過保證事務(wù)集中不同項前K-1項相同,而第K項不同,則認(rèn)為這兩項是可連接的;(2)剪枝步:如果一個項集是非頻繁的,那么其所有超集也是非頻繁的,所以它的所有超集就沒有必要再進(jìn)行搜索了,就是把那些不滿足minsup的項集從生成的新的頻繁K項集中刪除。

    下面介紹Apriori算法的實現(xiàn),算法1給出了Apriori算法偽代碼。Apriori假設(shè)事務(wù)或項集里的各項已經(jīng)預(yù)先按詞典序進(jìn)行排列。項集里項的數(shù)量被稱為項集的大小,大小為k的項集被稱為k項集。用Fk表示大小為k的頻繁項集的集合,用Ck表示相應(yīng)候選項集的集合,F(xiàn)k和Ck都包含一個存儲支持度的字段。第一次遍歷只對每個單項的出現(xiàn)次數(shù)計數(shù)并確定頻繁1-項集。隨后的遍歷包含兩個階段,第一階段調(diào)用Apriori-gen函數(shù)從第k-1次遍歷產(chǎn)生的頻繁項集Fk-1中獲得Ck;第二階段掃描事務(wù)集D,用函數(shù)Subset對Ck中每個候選項集的支持度進(jìn)行計數(shù),將不滿足最小支持度的項集從候選項集中刪除。

    算法1 Apriori算法

    ∥頻繁1項集

    F1= {frequent 1-itemsets};

    for(k=2;Fk-1≠□) do begin

    ∥新的候選

    Ck=apriori-gen(Fk-1);

    ∥掃描D,對候選項集進(jìn)行統(tǒng)計計數(shù)foreach transactiont∈Ddo begin

    Ct=subset(Ck,t);

    foreach candidate c∈ do begin

    c.count++;

    end

    Fk= {c∈Ck∣c.count≥minsup}

    end

    returnFk=最大頻繁項集;

    Apriori算法通過剪枝來減少候選集大小來獲得良好的性能。然而,在頻繁項集很多或者最小支持度很低的情況下,算法必然產(chǎn)生數(shù)量龐大的候選項集,并且需要反復(fù)掃描事務(wù)集D來檢查數(shù)量龐大的候選項集,代價仍然較高,但是它作為經(jīng)典的數(shù)據(jù)挖掘[13-14]算法,簡單實用,能夠解決文中的問題。

    2 基于源碼的模式挖掘

    本文主要研究Jenkins插件,利用Apriori算法挖掘其中的編程模式,生成編碼建議給用戶。生成的編碼建議主要分為兩個部分:一是在用戶選擇了一個父類之后,優(yōu)先要重寫的方法頻繁項;二是這些重寫方法之間的關(guān)聯(lián)規(guī)則,例如:類A要重寫父類方法a(·)和方法b(·)之后,還要重寫方法c(·)的概率,此處的概率即置信度。

    圖1 本文工作概述

    如圖1所示,本文主要工作包括以下4個階段:第一階段:預(yù)處理階段,把相關(guān)有用的信息保存到數(shù)據(jù)庫中,減少后期代碼頻繁項挖掘[15]的時間開銷;第二階段:挖掘Jenkins插件類庫中類與類之間的繼承關(guān)系,生成樹形結(jié)構(gòu)圖;第三階段:根據(jù)用戶輸入關(guān)鍵字智能匹配樹形結(jié)構(gòu)中對應(yīng)節(jié)點;第四階段:從上一步匹配的節(jié)點為切入點,挖掘代碼中需要重寫的方法,為用戶提示要優(yōu)先重寫的方法,以及關(guān)聯(lián)規(guī)則和對應(yīng)的置信度。

    第一階段:把插件的插件名、子類名、繼承的父類名以及子類中重寫的method等信息存儲到數(shù)據(jù)庫中,方便后面挖掘插件重用的父類信息。另外還要把繼承Jenkins類庫父類的子類的類名進(jìn)行分詞,便于通過關(guān)鍵字進(jìn)行節(jié)點匹配;

    第二階段:為了從這些代碼中挖掘出相應(yīng)的父類繼承關(guān)系樹形結(jié)構(gòu)圖,通過分析Jenkins插件中繼承Jenkins類庫中父類的代碼,它們的import信息都是以import hudson開頭,或包含husdon的,先解析插件源碼中的import信息。但是并不是所有的import信息都是有用的信息,有些類不是插件繼承的父類,這部分類要剔除掉;還有些類雖然被插件中的子類繼承了,但是只有一個插件繼承過,這種父類也要剔除掉,因為挖掘頻繁項至少要有兩個事務(wù),只有一個插件繼承的父類,事務(wù)集中只有一個事務(wù)。例如圖2中所示的import信息,org.jvnet.hudson.t- est.HudsonTestCase類HudsonTestCase是Jenkins插件類庫中的一個父類,用戶在寫插件的時候可以直接繼承父類。這些代碼中的import信息就是要利用的信息,在這個階段的主要任務(wù)是生成Jenkins插件中類似的類與類之間的繼承結(jié)構(gòu)關(guān)系圖,為下一個階段中匹配對應(yīng)節(jié)點做準(zhǔn)備;

    圖2 源碼import信息

    第三階段:這個階段就是為了獲取用戶想要了解的信息,然后有針對性的挖掘,并返回給用戶有價值的信息。首先用戶輸入最能代表他想實現(xiàn)功能的關(guān)鍵字,CodeMining根據(jù)用戶的輸入的關(guān)鍵字智能匹配相應(yīng)的節(jié)點,并給出評分,分?jǐn)?shù)越高,代表關(guān)聯(lián)性越大,用戶可以很輕松的做出自己的選擇,作為編寫代碼的切入點;

    第四階段:這個階段就是利用Apriori算法進(jìn)行頻繁項挖掘,也是本文所提方法最重要的一個部分。編寫一個類繼承Jenkins插件中的一個父類,需要重寫一些方法,這里所說的頻繁項就是這些要優(yōu)先重寫的方法,設(shè)置不同的支持度和置信度參數(shù)值,會返回不同的頻繁項結(jié)果,同時給出相應(yīng)的關(guān)聯(lián)規(guī)則和對應(yīng)的置信度。用戶可以有針對性的參考這些規(guī)則,在沒有任何經(jīng)驗的情況下開始編寫Jenkins插件的第一行代碼。

    3 實驗結(jié)果與分析

    為評價本文方法,挖掘了從Github[16]上下載的1 523個Jenkins插件的代碼信息,為了減少挖掘時間,從1 523個插件代碼中隨機(jī)挑選了500個插件,這些代碼均采用Java語言編寫。本文試驗環(huán)境為:操作系統(tǒng): Windows 7 64位專業(yè)版、CPU:Intel(R)Core(TM)i3-2330 M @ 2.20 GHz、內(nèi)存8 GB。

    為展現(xiàn)本文所提方法的效果,列舉了一個以James為開發(fā)者的應(yīng)用案例,分析挖掘出來的頻繁項集以及關(guān)聯(lián)規(guī)則,以驗證本文提出的方法的可行性。

    例1 HudsonTestCase

    James想寫一個關(guān)于Hudson的測試用例,他并不知道應(yīng)該繼承哪一個類,以及從哪里入手開始寫代碼,于是他輸入了關(guān)鍵字hudson, CodeMining開始搜索之前預(yù)處理階段存儲在數(shù)據(jù)庫中的數(shù)據(jù),返回如表1數(shù)據(jù),代碼運行的時間為0.143 s。

    表1 基于關(guān)鍵字CodeMining返回的父類列表

    Count為關(guān)鍵字在所有繼承此父類的子類名中出現(xiàn)的次數(shù),F(xiàn)requency為此關(guān)鍵字在類名分詞結(jié)果中所占比例,Score為關(guān)鍵字匹配的得分,得分最高者為最匹配的那個父類。

    于是James就編寫一個類文件來繼承這個父類,在CodeMining中選擇HudsonTestCase這個父類,設(shè)置頻繁項挖掘的一些參數(shù),例如:支持度、置信度。CodeMining就可以進(jìn)行頻繁項挖掘,這里分別將支持度設(shè)置為2、3和4,置信度都設(shè)置為0.5,挖掘出的頻繁K項集K的最大值Kmax、Kmax項集對應(yīng)的支持度、關(guān)聯(lián)規(guī)則數(shù)量以及運行時間如表2所示。

    表2 置信度為0.5不同支持度下的實驗結(jié)果

    如表2所示,支持度設(shè)置過低的話,會挖掘出很多關(guān)聯(lián)規(guī)則,James可有側(cè)重性的選擇其中有價值的信息來使用,另外本文實驗運行時間很短得益于預(yù)處理階段將有用的數(shù)據(jù)存儲在數(shù)據(jù)庫中。本文限于篇幅,僅分析當(dāng)支持度為4時的實驗結(jié)果。當(dāng)支持度設(shè)置為4,置信度設(shè)置為0.5時,返回的頻繁項集如圖3所示,關(guān)聯(lián)規(guī)則如圖4所示。實驗結(jié)果簡單明了,如@Before:setup在單元測試[17]里很常見,原因是為了方便演示,但對于那些不常見的關(guān)聯(lián)規(guī)則,CodeMining也可以像挖掘那些熟悉的關(guān)聯(lián)規(guī)則一樣,將其挖掘出來。

    圖3 支持度為4的頻繁項集

    圖4 支持度為4的關(guān)聯(lián)規(guī)則

    圖3和圖4中@Override:setup表示要重寫setUp方法,@Before:setUp表示注解為@Before的setUp方法。

    圖3中頻繁1項集@Override:setup在62個插件中出現(xiàn)了,出現(xiàn)次數(shù)最多,James會優(yōu)先重寫這個方法,而@Before:

    setUp這個方法在21個插件中出現(xiàn)了,James已知這個方法也是要優(yōu)先重寫的方法,但并不像@Override:setup這個方法那么重要,有時也可以不重寫這個方法。圖3中2項集@Before:setUp; @Override:setup在12個插件中出現(xiàn)了,James會猜想這兩個方法應(yīng)該是存在某種關(guān)聯(lián),即重寫了第一個方法,有較大概率要重寫第二個方法。頻繁3項集的支持度為6,說明在6個插件中這3個方法都同時出現(xiàn)了,James重寫了3項集中任意一個方法時其他兩個方法就是優(yōu)先重寫的方法。

    圖4中由@Before:setup-> @Override: setup的置信度為0.571,這也驗證了由圖3得出的猜想,在重寫了@Before:setup這個方法后,是有很大概率要重寫@Override:setUp這個方法的。從圖4還可以發(fā)現(xiàn)由@Before:setUp;@Test:

    testBadConfig;->@Override:setUp;置信度為1.0,由@Before:setUp;@Test: testGoodConfig;->@Override:setUp;置信度也為1.0,James重寫了@Before: setUp方法之后,只要也重寫了@Test: testBadConfig這個測試或者@Test: testGoodConfig這個測試,他就有100%的概率還要再重寫@Override: setUp這個方法。

    通過James的案例分析,驗證了可以通過文中提出的CodeMining方法,根據(jù)挖掘出來的頻繁項以及關(guān)聯(lián)規(guī)則,快速的學(xué)習(xí)框架的開發(fā),寫出軟件開發(fā)的第一行代碼。

    4 結(jié)束語

    本文提出了一種挖掘源碼模式的輔助開發(fā)方法,通過實驗證明,可以挖掘出代碼中的編程模式,并有效輔助新手進(jìn)行軟件開發(fā)。但本文挖掘出的是粗粒度編程模式,沒有進(jìn)一步深入到方法中去挖掘相關(guān)的編程模式,也沒有挖掘代碼中一些其他有用的信息。下一步工作是進(jìn)一步挖掘代碼方法中的具體內(nèi)容,挖掘出更細(xì)粒度的編程模式,并加入更多維度。

    [1] 王少鋒,何志均,王克宏.軟件重用技術(shù)研究[J].計算機(jī)工程與設(shè)計,2000,21(5):10-14.

    [2] Robillard M P,Chhetri Y B. Recommendi -ng reference API documentation [J]. Empirical Software Engineering,2015,20(6):1558-1586.

    [3] Michail A.Data mining library reuse patterns in user-selected applications[C]. Hangzhou:Automated Software Engineering,14th IEEE International Conference,2000.

    [4] 趙洪英,蔡樂才,李先杰.關(guān)聯(lián)規(guī)則挖掘的Apriori算法綜述[J].四川理工學(xué)院學(xué)報:自然科學(xué)版,2011,24(1):66-70.

    [5] 崔貫勛,李梁,王柯柯,等.關(guān)聯(lián)規(guī)則挖掘中Apriori研究與改進(jìn)[J].計算機(jī)應(yīng)用,2010,30(11):2952-2955.

    [6] 劉華婷,郭仁祥,姜浩.關(guān)聯(lián)規(guī)則挖掘Apriori算法的研究與改進(jìn)[J].計算機(jī)應(yīng)用與軟件,2009,26(1):146-149.

    [7] Bruch M, Sch?fer T, Mezini M. FrUiT: IDE support for framework understanding[C]. Portland, Oregon, USA:OOPSLA Workshop on Eclipse Technology Exchange, ETX 2006.

    [8] 吳信東,Vipin Kumar.數(shù)據(jù)挖掘十大算法[M].北京:清華大學(xué)出版社,2013.

    [9] Jiang C, Coenen F,Zito M.Frequent sub -graph mining on edge weighted graphs[M].Berlin:Springer Berlin Heidelberg,2010.

    [10] 陸麗娜,陳亞萍,魏恒義,等.挖掘關(guān)聯(lián)規(guī)則中的Apriori算法的研究[J].小型微型計算機(jī)系統(tǒng),2000,21(9):940-943.

    [11] 顏躍進(jìn),李舟軍,陳火旺.基于FP-Tree有效挖掘最大頻繁項集[J].軟件學(xué)報,2005,16(2):215-222.

    [12] 高宏賓,潘谷,黃義明.基于頻繁項集特性的Apriori算法的改進(jìn)[J].計算機(jī)工程與設(shè)計,2007,28(10):2273-2275.

    [13] 賀玲,吳玲達(dá),蔡益朝.數(shù)據(jù)挖掘中的聚類算法綜述[J].計算機(jī)應(yīng)用研究,2007,24(1):10-13.

    [14] 劉紅巖,陳劍,陳國青.數(shù)據(jù)挖掘中的數(shù)據(jù)分類算法綜述[J].清華大學(xué)學(xué)報:自然科學(xué)版,2002,42(6):727-730.

    [15] 祝然威,王鵬,劉馬金.基于計數(shù)的數(shù)據(jù)流頻繁項挖掘算法[J].計算機(jī)研究與發(fā)展,2011,48(10):1803-1811.

    [16] 張智,鄭卉,蔣依伶,等.使用Github實現(xiàn)高效的團(tuán)隊協(xié)作開發(fā)[J].電腦知識與技術(shù),2015,11(7):206-208.

    [17] 白凱,崔冬華.基于JUnit自動化單元測試的研究[J].計算機(jī)與數(shù)字工程,2010,38(2):52-54.

    Based on the Source Code Pattern Mining Software Assist Development Technology Research

    FU Peng,SHEN Lili

    (School of Optical-Electrical and Computer Engineering,University of Shanghai for Science and Technology, Shanghai 200093,China)

    With the explosive growth of the open source community software code, software reuse is being more and more attention. Because of the complexity of the software code. To the novice that do not understand the framework, it is difficult to use the code from the open source community to develop software. As a result, using data mining technology to dig programming patterns from the existing code become a research hotspot. This paper mainly introduces the frequent items mining Apriori algorithm, and put forward the based on the source code pattern mining software assist development method. It can be based on user input keywords to intelligent matching to the super class, mining programming patterns based on the super class, give the methods that priority to override as well as the association rules. The experimental results show that the novice can use these coding suggestions, fast learning a new framework and improve the development efficiency.

    source code; data mining; programming patterns; software assist development

    2016- 05- 30

    沈莉莉(1992-),女,碩士研究生。研究方向:數(shù)據(jù)挖掘。

    10.16180/j.cnki.issn1007-7820.2017.04.035

    TP312

    A

    1007-7820(2017)04-140-05

    猜你喜歡
    項集置信度插件
    硼鋁復(fù)合材料硼含量置信度臨界安全分析研究
    自編插件完善App Inventor與樂高機(jī)器人通信
    電子制作(2019年22期)2020-01-14 03:16:34
    正負(fù)關(guān)聯(lián)規(guī)則兩級置信度閾值設(shè)置方法
    MapWindowGIS插件機(jī)制及應(yīng)用
    置信度條件下軸承壽命的可靠度分析
    軸承(2015年2期)2015-07-25 03:51:04
    基于Revit MEP的插件制作探討
    關(guān)聯(lián)規(guī)則中經(jīng)典的Apriori算法研究
    卷宗(2014年5期)2014-07-15 07:47:08
    一種頻繁核心項集的快速挖掘算法
    多假設(shè)用于同一結(jié)論時綜合置信度計算的新方法?
    一種新的改進(jìn)Apriori算法*
    欧美丝袜亚洲另类 | a在线观看视频网站| 国产成人免费观看mmmm| 亚洲 欧美一区二区三区| 久热爱精品视频在线9| 精品电影一区二区在线| 91精品三级在线观看| 最近最新免费中文字幕在线| 高清av免费在线| 黑人操中国人逼视频| 亚洲熟女毛片儿| 久久精品熟女亚洲av麻豆精品| 国产精品自产拍在线观看55亚洲 | 每晚都被弄得嗷嗷叫到高潮| 日本精品一区二区三区蜜桃| 一级,二级,三级黄色视频| 国产单亲对白刺激| 国产精品乱码一区二三区的特点 | 成人18禁在线播放| 9热在线视频观看99| 精品亚洲成国产av| 免费观看人在逋| 精品国产一区二区久久| 成人精品一区二区免费| 国产成人欧美| 女人久久www免费人成看片| 男人的好看免费观看在线视频 | 国产精品免费视频内射| 久久精品国产清高在天天线| 黄片大片在线免费观看| 黄色a级毛片大全视频| 一级a爱视频在线免费观看| 一a级毛片在线观看| 老汉色av国产亚洲站长工具| 国产av又大| 搡老乐熟女国产| 国产精品98久久久久久宅男小说| 国产蜜桃级精品一区二区三区 | 婷婷成人精品国产| 亚洲av美国av| 欧美日韩福利视频一区二区| 王馨瑶露胸无遮挡在线观看| 村上凉子中文字幕在线| 满18在线观看网站| 国产激情久久老熟女| 久久精品亚洲熟妇少妇任你| 亚洲片人在线观看| 在线观看午夜福利视频| 黄色a级毛片大全视频| 妹子高潮喷水视频| 国产一区二区激情短视频| 久久久国产成人免费| 91老司机精品| 18禁观看日本| 俄罗斯特黄特色一大片| 老司机福利观看| av不卡在线播放| 免费黄频网站在线观看国产| 亚洲av第一区精品v没综合| 十分钟在线观看高清视频www| 黑人操中国人逼视频| 婷婷精品国产亚洲av在线 | 女性被躁到高潮视频| 搡老岳熟女国产| 欧美激情高清一区二区三区| 夫妻午夜视频| 亚洲精品中文字幕在线视频| 亚洲人成77777在线视频| 亚洲人成伊人成综合网2020| 不卡av一区二区三区| 波多野结衣av一区二区av| 丝袜美腿诱惑在线| 国产激情久久老熟女| 欧美日韩精品网址| 亚洲成av片中文字幕在线观看| 欧美精品一区二区免费开放| 精品高清国产在线一区| 日韩成人在线观看一区二区三区| а√天堂www在线а√下载 | 国产精品二区激情视频| 国产精品秋霞免费鲁丝片| 中文字幕高清在线视频| 国产男靠女视频免费网站| 黄色视频,在线免费观看| 精品无人区乱码1区二区| 亚洲国产欧美网| av天堂在线播放| 91av网站免费观看| 丰满人妻熟妇乱又伦精品不卡| 变态另类成人亚洲欧美熟女 | tube8黄色片| 亚洲九九香蕉| 亚洲国产中文字幕在线视频| 亚洲精品成人av观看孕妇| 久久亚洲精品不卡| 超色免费av| 国产高清国产精品国产三级| 女同久久另类99精品国产91| 亚洲男人天堂网一区| 免费少妇av软件| 99国产综合亚洲精品| 18禁裸乳无遮挡动漫免费视频| 精品卡一卡二卡四卡免费| 村上凉子中文字幕在线| 国产成人精品久久二区二区91| 国产亚洲欧美精品永久| 精品福利观看| 国产av一区二区精品久久| 十八禁高潮呻吟视频| 午夜福利免费观看在线| 最新在线观看一区二区三区| 女性被躁到高潮视频| 日本五十路高清| 久久香蕉国产精品| 亚洲第一欧美日韩一区二区三区| 欧美大码av| 色老头精品视频在线观看| 亚洲美女黄片视频| 视频区欧美日本亚洲| 夜夜夜夜夜久久久久| 一级毛片女人18水好多| 波多野结衣av一区二区av| 亚洲人成77777在线视频| 少妇的丰满在线观看| 王馨瑶露胸无遮挡在线观看| 极品少妇高潮喷水抽搐| 这个男人来自地球电影免费观看| 两个人看的免费小视频| 99久久人妻综合| 一二三四社区在线视频社区8| 一区在线观看完整版| 国产高清国产精品国产三级| 两性午夜刺激爽爽歪歪视频在线观看 | 超色免费av| 中文字幕最新亚洲高清| 极品少妇高潮喷水抽搐| 中文字幕人妻丝袜制服| 久久影院123| 一级a爱视频在线免费观看| 亚洲成av片中文字幕在线观看| 亚洲精品自拍成人| 成人18禁在线播放| 黄色 视频免费看| 国产精品自产拍在线观看55亚洲 | 久久精品aⅴ一区二区三区四区| 免费看十八禁软件| 高潮久久久久久久久久久不卡| www.自偷自拍.com| 午夜福利免费观看在线| www.熟女人妻精品国产| 欧美乱码精品一区二区三区| 亚洲 国产 在线| 19禁男女啪啪无遮挡网站| 丝袜美腿诱惑在线| 国产成人av激情在线播放| 日韩中文字幕欧美一区二区| 欧美日韩亚洲综合一区二区三区_| 很黄的视频免费| av片东京热男人的天堂| 午夜激情av网站| 久久狼人影院| 桃红色精品国产亚洲av| 欧美最黄视频在线播放免费 | 国产日韩欧美亚洲二区| 男女免费视频国产| 日日夜夜操网爽| 悠悠久久av| 久久精品国产清高在天天线| 波多野结衣一区麻豆| 91老司机精品| 国产xxxxx性猛交| 欧美精品人与动牲交sv欧美| 国产99久久九九免费精品| 丝袜在线中文字幕| 久久精品国产亚洲av高清一级| 首页视频小说图片口味搜索| 两性午夜刺激爽爽歪歪视频在线观看 | 身体一侧抽搐| 亚洲av日韩精品久久久久久密| 91麻豆av在线| 又紧又爽又黄一区二区| 国产三级黄色录像| 国产单亲对白刺激| 热re99久久精品国产66热6| 免费在线观看完整版高清| 91av网站免费观看| 黄片播放在线免费| 国产精品久久久久久精品古装| 亚洲人成77777在线视频| 欧美黄色淫秽网站| 国产一区二区三区视频了| 十八禁网站免费在线| 国产精华一区二区三区| 一本大道久久a久久精品| 国产xxxxx性猛交| 欧美成狂野欧美在线观看| 精品国内亚洲2022精品成人 | 免费人成视频x8x8入口观看| 日韩欧美在线二视频| av在线蜜桃| 19禁男女啪啪无遮挡网站| 色综合欧美亚洲国产小说| 99久久九九国产精品国产免费| 国产精品一区二区三区四区久久| 很黄的视频免费| 精品久久久久久久久久免费视频| 亚洲av成人不卡在线观看播放网| 国产精品久久久久久人妻精品电影| 国产成人a区在线观看| 色哟哟哟哟哟哟| 天美传媒精品一区二区| 一本精品99久久精品77| 成人av一区二区三区在线看| 母亲3免费完整高清在线观看| 级片在线观看| 最好的美女福利视频网| 免费大片18禁| 中文在线观看免费www的网站| 97碰自拍视频| 丝袜美腿在线中文| 特大巨黑吊av在线直播| 成人特级黄色片久久久久久久| 99精品欧美一区二区三区四区| av片东京热男人的天堂| 窝窝影院91人妻| 国产乱人视频| 日韩av在线大香蕉| 日本在线视频免费播放| av在线蜜桃| 乱人视频在线观看| 精品99又大又爽又粗少妇毛片 | 一区二区三区国产精品乱码| 在线视频色国产色| 操出白浆在线播放| 韩国av一区二区三区四区| 色哟哟哟哟哟哟| 搡老妇女老女人老熟妇| 人妻久久中文字幕网| 动漫黄色视频在线观看| 亚洲av电影在线进入| 久久久久性生活片| 欧美最新免费一区二区三区 | 国产蜜桃级精品一区二区三区| 日韩高清综合在线| 天堂影院成人在线观看| 国产真实伦视频高清在线观看 | 日韩欧美精品v在线| 给我免费播放毛片高清在线观看| 欧美高清成人免费视频www| 午夜免费观看网址| 亚洲人成伊人成综合网2020| 国产亚洲精品综合一区在线观看| 床上黄色一级片| www国产在线视频色| 12—13女人毛片做爰片一| 免费看美女性在线毛片视频| 怎么达到女性高潮| 搡老岳熟女国产| 日韩有码中文字幕| 在线观看66精品国产| av在线天堂中文字幕| 国产久久久一区二区三区| 国产精品久久久久久久电影 | 99久久99久久久精品蜜桃| 国产精品久久久人人做人人爽| 欧美成狂野欧美在线观看| 亚洲av五月六月丁香网| 国产精品三级大全| 两个人看的免费小视频| 村上凉子中文字幕在线| 最近在线观看免费完整版| netflix在线观看网站| 免费电影在线观看免费观看| 非洲黑人性xxxx精品又粗又长| 国产精品久久久久久久久免 | 国产成+人综合+亚洲专区| 国产亚洲精品久久久久久毛片| 一个人免费在线观看的高清视频| 看片在线看免费视频| 丁香欧美五月| 少妇的丰满在线观看| 免费看光身美女| 国产亚洲欧美在线一区二区| 精品久久久久久成人av| 五月伊人婷婷丁香| 无人区码免费观看不卡| 两个人的视频大全免费| 69av精品久久久久久| 亚洲成av人片在线播放无| 国内揄拍国产精品人妻在线| 亚洲第一欧美日韩一区二区三区| 日韩欧美 国产精品| 男人舔女人下体高潮全视频| 夜夜夜夜夜久久久久| 在线a可以看的网站| 日日干狠狠操夜夜爽| 黑人欧美特级aaaaaa片| 91久久精品电影网| 色精品久久人妻99蜜桃| 免费无遮挡裸体视频| АⅤ资源中文在线天堂| 午夜久久久久精精品| 亚洲中文字幕日韩| 亚洲av熟女| 99久久99久久久精品蜜桃| 亚洲激情在线av| 人妻久久中文字幕网| 国产一级毛片七仙女欲春2| 亚洲精华国产精华精| 国产激情偷乱视频一区二区| 美女免费视频网站| 国产成人欧美在线观看| 精品电影一区二区在线| 好男人在线观看高清免费视频| 国产伦一二天堂av在线观看| 久久精品综合一区二区三区| 国产成人a区在线观看| 丰满的人妻完整版| 久久九九热精品免费| 成人一区二区视频在线观看| 色综合亚洲欧美另类图片| 精品午夜福利视频在线观看一区| 老熟妇仑乱视频hdxx| 国产亚洲精品久久久com| 国产欧美日韩精品一区二区| 久久中文看片网| 一级黄片播放器| 国产免费一级a男人的天堂| 51午夜福利影视在线观看| 老师上课跳d突然被开到最大视频 久久午夜综合久久蜜桃 | 欧美不卡视频在线免费观看| 19禁男女啪啪无遮挡网站| 亚洲欧美日韩高清在线视频| 日韩欧美一区二区三区在线观看| 91麻豆av在线| 久久人人精品亚洲av| 久久久久性生活片| 国产一级毛片七仙女欲春2| 午夜免费激情av| 国产精品乱码一区二三区的特点| 超碰av人人做人人爽久久 | 精品一区二区三区人妻视频| 久久6这里有精品| 特大巨黑吊av在线直播| 午夜a级毛片| 操出白浆在线播放| 久久欧美精品欧美久久欧美| 久久九九热精品免费| 欧美三级亚洲精品| 我要搜黄色片| www日本在线高清视频| 亚洲国产欧美人成| 免费av观看视频| 色在线成人网| 特大巨黑吊av在线直播| 亚洲 欧美 日韩 在线 免费| 中亚洲国语对白在线视频| 中文字幕av在线有码专区| 国产成人福利小说| 亚洲天堂国产精品一区在线| 岛国视频午夜一区免费看| 91麻豆av在线| 搡老岳熟女国产| 一级黄片播放器| 欧美又色又爽又黄视频| 国产欧美日韩一区二区精品| 日韩人妻高清精品专区| 亚洲欧美日韩高清专用| 国产爱豆传媒在线观看| 亚洲五月婷婷丁香| 欧美日韩黄片免| 免费人成视频x8x8入口观看| 脱女人内裤的视频| 亚洲内射少妇av| 日韩欧美在线二视频| 久久精品国产亚洲av香蕉五月| 国产中年淑女户外野战色| 亚洲专区中文字幕在线| 毛片女人毛片| 亚洲一区二区三区色噜噜| 亚洲aⅴ乱码一区二区在线播放| 日本熟妇午夜| 亚洲狠狠婷婷综合久久图片| 91九色精品人成在线观看| 美女黄网站色视频| 中文字幕人妻熟人妻熟丝袜美 | 综合色av麻豆| 国产成人av激情在线播放| 亚洲精品成人久久久久久| 亚洲精品456在线播放app | 日韩欧美在线二视频| 午夜a级毛片| 欧美色欧美亚洲另类二区| 午夜影院日韩av| 麻豆国产av国片精品| 亚洲一区二区三区色噜噜| 一本久久中文字幕| 不卡一级毛片| 99riav亚洲国产免费| 日本成人三级电影网站| 色播亚洲综合网| 亚洲成av人片在线播放无| 天堂动漫精品| 真人做人爱边吃奶动态| 少妇的逼好多水| 日日摸夜夜添夜夜添小说| 深夜精品福利| av专区在线播放| 亚洲,欧美精品.| 久久久精品大字幕| 亚洲18禁久久av| 国产伦精品一区二区三区四那| 99精品欧美一区二区三区四区| 脱女人内裤的视频| 亚洲精品色激情综合| 成人一区二区视频在线观看| 变态另类丝袜制服| 99久久99久久久精品蜜桃| 琪琪午夜伦伦电影理论片6080| netflix在线观看网站| 国产av不卡久久| 中文字幕av在线有码专区| 波多野结衣高清作品| 亚洲av中文字字幕乱码综合| 有码 亚洲区| 91在线观看av| 九九热线精品视视频播放| 欧美日本视频| 亚洲性夜色夜夜综合| 国产成+人综合+亚洲专区| 成年女人永久免费观看视频| 欧美绝顶高潮抽搐喷水| 偷拍熟女少妇极品色| 成人国产综合亚洲| 狠狠狠狠99中文字幕| 色综合婷婷激情| 国产不卡一卡二| 精品熟女少妇八av免费久了| 国产免费男女视频| 国产精品一及| 亚洲第一电影网av| 18禁国产床啪视频网站| 啦啦啦观看免费观看视频高清| 欧美午夜高清在线| 国产色婷婷99| 天堂√8在线中文| 免费av观看视频| 嫩草影院精品99| 又黄又爽又免费观看的视频| 亚洲七黄色美女视频| 一级黄色大片毛片| 欧美xxxx黑人xx丫x性爽| 国产国拍精品亚洲av在线观看 | 午夜福利高清视频| e午夜精品久久久久久久| 精品电影一区二区在线| 国产精品久久久久久久久免 | 亚洲国产精品久久男人天堂| 亚洲18禁久久av| 日韩欧美在线乱码| 久久久久久大精品| 又黄又爽又免费观看的视频| av视频在线观看入口| 国产亚洲精品久久久久久毛片| 亚洲精华国产精华精| av在线蜜桃| 欧美激情在线99| 亚洲国产高清在线一区二区三| 天天躁日日操中文字幕| 91久久精品电影网| 国产一区二区三区在线臀色熟女| 看免费av毛片| 午夜亚洲福利在线播放| 欧美高清成人免费视频www| 日本免费a在线| 免费在线观看日本一区| 午夜亚洲福利在线播放| 国产亚洲精品一区二区www| 偷拍熟女少妇极品色| 国产精品1区2区在线观看.| 中亚洲国语对白在线视频| 每晚都被弄得嗷嗷叫到高潮| 99在线视频只有这里精品首页| 亚洲av成人不卡在线观看播放网| 精品无人区乱码1区二区| 男女下面进入的视频免费午夜| 国产精品久久久久久久久免 | 日韩欧美一区二区三区在线观看| 亚洲久久久久久中文字幕| 十八禁网站免费在线| 国产伦精品一区二区三区四那| 国产一区二区三区在线臀色熟女| 免费无遮挡裸体视频| 母亲3免费完整高清在线观看| 三级国产精品欧美在线观看| 真人一进一出gif抽搐免费| 免费看a级黄色片| 国产亚洲欧美98| 他把我摸到了高潮在线观看| 一本精品99久久精品77| 舔av片在线| 精品久久久久久久人妻蜜臀av| 亚洲av第一区精品v没综合| 全区人妻精品视频| 十八禁人妻一区二区| 婷婷精品国产亚洲av| 日韩欧美精品免费久久 | 最新中文字幕久久久久| 尤物成人国产欧美一区二区三区| 90打野战视频偷拍视频| 成人精品一区二区免费| 国产精品 国内视频| 两性午夜刺激爽爽歪歪视频在线观看| 在线观看午夜福利视频| 欧美日韩精品网址| 国产成人影院久久av| av天堂在线播放| 国产亚洲欧美98| 国产精品一及| 精品久久久久久久久久免费视频| 免费观看人在逋| 国产伦在线观看视频一区| 成人无遮挡网站| 三级男女做爰猛烈吃奶摸视频| 99riav亚洲国产免费| 日本五十路高清| 久久久国产成人精品二区| 国产私拍福利视频在线观看| 亚洲在线自拍视频| 在线观看美女被高潮喷水网站 | 久久草成人影院| 国产一区二区三区视频了| 麻豆国产av国片精品| 3wmmmm亚洲av在线观看| 男女那种视频在线观看| 国产成人福利小说| 老司机在亚洲福利影院| 久久性视频一级片| 午夜福利18| 美女 人体艺术 gogo| 日本 av在线| 国产激情偷乱视频一区二区| 欧美性猛交╳xxx乱大交人| 在线观看免费视频日本深夜| 麻豆成人午夜福利视频| 色噜噜av男人的天堂激情| 中出人妻视频一区二区| 变态另类丝袜制服| 白带黄色成豆腐渣| a在线观看视频网站| 村上凉子中文字幕在线| 99久久综合精品五月天人人| 麻豆国产97在线/欧美| 欧美高清成人免费视频www| 99riav亚洲国产免费| 久久香蕉精品热| xxxwww97欧美| 日韩欧美三级三区| 丁香六月欧美| 亚洲五月天丁香| 又紧又爽又黄一区二区| 国内精品久久久久久久电影| www.色视频.com| 亚洲欧美日韩高清在线视频| 99国产精品一区二区蜜桃av| 日本成人三级电影网站| 欧美3d第一页| 国产成年人精品一区二区| 精品久久久久久久人妻蜜臀av| 欧美xxxx黑人xx丫x性爽| 九九在线视频观看精品| 国产97色在线日韩免费| 欧美在线黄色| 免费一级毛片在线播放高清视频| 老鸭窝网址在线观看| 日本黄色视频三级网站网址| 99热6这里只有精品| 国产三级在线视频| 精品99又大又爽又粗少妇毛片 | 一区二区三区高清视频在线| 欧美成人免费av一区二区三区| 此物有八面人人有两片| 国产又黄又爽又无遮挡在线| 天美传媒精品一区二区| 欧美不卡视频在线免费观看| 免费在线观看亚洲国产| av中文乱码字幕在线| 久久国产精品人妻蜜桃| 18禁美女被吸乳视频| 欧美日韩综合久久久久久 | 日韩精品青青久久久久久| 国产av一区在线观看免费| 在线免费观看的www视频| 搡老熟女国产l中国老女人| 欧美色视频一区免费| 伊人久久大香线蕉亚洲五| 精品久久久久久久久久久久久| 九色成人免费人妻av| 精品不卡国产一区二区三区| 亚洲第一欧美日韩一区二区三区| 国内揄拍国产精品人妻在线| 亚洲国产日韩欧美精品在线观看 | 久久国产精品影院| 亚洲精品影视一区二区三区av| 人人妻,人人澡人人爽秒播| 亚洲欧美日韩高清在线视频| 日本免费a在线| 国产乱人视频| 欧美大码av| 淫秽高清视频在线观看| 动漫黄色视频在线观看| 欧美丝袜亚洲另类 | 免费观看人在逋| 麻豆成人av在线观看| 特大巨黑吊av在线直播|