3atv精品不卡视频,97人人超碰国产精品最新,中文字幕av一区二区三区人妻少妇,久久久精品波多野结衣,日韩一区二区三区精品

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

麻省理工18年春软件构造课程阅读07“设计规格说明”

發布時間:2023/12/10 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 麻省理工18年春软件构造课程阅读07“设计规格说明” 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文內容來自MIT_6.031_sp18: Software Construction課程的Readings部分,采用CC BY-SA 4.0協議。

由于我們學校(哈工大)大二軟件構造課程的大部分素材取自此,也是推薦的閱讀材料之一,于是打算做一些翻譯工作,自己學習的同時也能幫到一些懶得看英文的朋友。另外,該課程的閱讀資料中有許多練習題,但是沒有標準答案,所給出的答案均為譯者所寫,有錯誤的地方還請指出。




譯者:李秋豪

審校:

V1.0 Tue Mar 20 00:49:34 CST 2018


本次課程的目標

  • 理解待決定(underdetermined)規格說明,并能夠辨別評估待決定的規格說明。
  • 理解聲明性的規格說明和操作性的規格說明之間的區別,并能夠寫出聲明性的規格說明。
  • 理解前置條件、后置條件、及規格說明的“強度”,并能夠比較兩個規格說明之間的強度。
  • 能夠寫出邏輯嚴密、前后連貫的規格說明。


介紹

在這篇閱讀中我們會比較相似行為的不同規格說明,并從三個維度探討它們之間的區別:

  • 這個規格說明的決定性:它對輸入輸出的空間是否有嚴格的限制?例如要求輸出只有一種可能,或者可以有多種可能性。
  • 這個規格說明的聲明性:它是否僅僅聲明了輸出應該是什么,或者還要求了實現的方法(輸出是如何計算出的)。
  • 這個規格說明的強度:它的實現方法是否僅限于一個小集合,或者有很多種滿足要求的實現方法。

對于一個特定的模塊,不同的規格說明會產生不同的效果,接下來我們就探討如何設計出最好的的規格說明。


決定性的 vs. 待決定性的規格說明

回憶之前的閱讀中我們定義的兩個find函數:

static int findFirst(int[] arr, int val) {for (int i = 0; i < arr.length; i++) {if (arr[i] == val) return i;}return arr.length; } static int findLast(int[] arr, int val) {for (int i = arr.length - 1 ; i >= 0; i--) {if (arr[i] == val) return i;}return -1; }

這里提一下,函數名中的后綴 First and Last 只是為了區分開它們實現方法,當被應用到實際的代碼中時,它們都叫做find.

以下是find的一種可能的規格說明:

static int findExactlyOne(int[] arr, int val) - requires:val occurs exactly once in arr - effects:returns index i such that arr[i] = val

這里的后綴名 ExactlyOne也僅是一種提示符,為了區分開同一模塊的不同規格說明設計。

我們說,findExactlyOne是完全決定性的(fully deterministic):當輸入滿足前置條件后,輸出能夠完全確定——僅僅只有一種可能的返回情況。不存在一個輸入對應多種輸出。

findFirst 和 findLast 的實現方法都滿足這個規格說明的要求,所以如果有一個客戶使用了這個規格說明的find模塊,我們可以用 findFirst 和 findLast 進行等價替換。

下面是find的另一種規格說明:

static int findOneOrMore,AnyIndex(int[] arr, int val) - requires:val occurs in arr - effects:returns index i such that arr[i] = val

這個規格說明就不是決定性的——當val出現多次時,它沒有要求返回哪一個的下標。即它僅僅承諾了你可以根據返回的下標找到對應的val 。對于一個輸入,這個模塊有多種輸出的可能性。

這里要注意一點,當我們說“非決定性”(underdetermined)的時候,并不是指“不確定性”(nondeterministic)。不確定性的代碼是指一會的行為是這樣,過一會又變成了那樣(即使對于同一個輸入)。有很多不確定的例子:例如一個依賴于隨機數的函數,或者一個依賴于當前時間的程序。但是一個非決定性的規格說明并不一定代表對應的模塊的行為是非確定性的,模塊可以是由完全確定行為(一個輸入就對應一個確定的輸出)的代碼寫的。

在上面的例子中,規格說明沒有要求返回值是多種可能的哪一個,我們既可以使用 findFirst 又可以使用 findLast實現這個模塊,但是這兩個實現方法本身是確定性的(譯者注:確定性在算法層面,對于同一個輸入,有同一個輸出)。甚至,我們可以使用非確定性的代碼滿足規格說明,例如每次使用隨機數決定返回多個下標中的哪一個。而使用者只會關注規格說明,他們無法確定模塊會返回哪一種結果(譯者注:決定性在使用者應用層面,他只能依賴規格說明的描述)。在大多數情況下,非決定性的規格說明會給實現者更多實現的自由,另外,一個非決定性的規格說明對應的模塊大多是用確定性的代碼實現的。

閱讀小練習

Distinguished

對于findFirst和findLast兩種對find的實現方法:

static int findFirst(int[] arr, int val) {for (int i = 0; i < arr.length; i++) {if (arr[i] == val) return i;}return arr.length; } static int findLast(int[] arr, int val) {for (int i = arr.length - 1 ; i >= 0; i--) {if (arr[i] == val) return i;}return -1; }

考慮下面這個規格說明:

static int find(int[] arr, int val) effects:returns largest index i such that arr[i] = val, or -1 if no such i

以下哪一種輸入會使findFirst 不滿足規格說明?

  • [x] [ 1, 2, 2 ], 2

  • [ ] [ 1, 2, 3 ], 2

  • [x] [ 1, 2, 2 ], 4

  • [ ] 對于以上輸入 findFirst 都可以滿足規格說明!

以下哪一種輸入會使findLast不滿足規格說明?

  • [ ] [ 1, 2, 2 ], 2

  • [ ] [ 1, 2, 3 ], 2

  • [ ] [ 1, 2, 2 ], 4

  • [x] 對于以上輸入 findLast都可以滿足規格說明!

Over/under

在上文中我們提到了 find 的一種非決定性的規格說明:

static int findOneOrMore,AnyIndex(int[] arr, int val) - requires:val occurs in arr - effects:returns index i such that arr[i] = val

當數組中含有多個val時,這個規格說明允許多種返回情況。

對于下面的每一個規格說明,判斷它的決定性大于或小于 findOneOrMore,AnyIndex 的決定性,或者它是完全決定性的。

1

static int find(int[] arr, int val) - requires:val occurs exactly once in arr - effects:returns index i such that arr[i] = val
  • [x] 完全決定性的

  • [ ] 大于 findOneOrMore,AnyIndex, 但是不是完全決定性的

  • [ ] 小于 findOneOrMore,AnyIndex

2

static int find(int[] arr, int val) effects:returns largest index i such that arr[i] = val, or -1 if no such i
  • [x] 完全決定性的

  • [ ] 大于 findOneOrMore,AnyIndex, 但是不是完全決定性的

  • [ ] 小于 findOneOrMore,AnyIndex

3

static int find(int[] arr, int val) - requires:val occurs in arr - effects:returns largest index i such that arr[i] = val
  • [x] 完全決定性的

  • [ ] 大于 findOneOrMore,AnyIndex, 但是不是完全決定性的

  • [ ] 小于 findOneOrMore,AnyIndex

18.6.16更新:這里應當是完全決定性的,xjf指出


聲明性的 vs. 操作性的規格說明

籠統的說,規格說明分為兩種:操作性的(Operational)規格說明給出了實現過程的步驟(就像偽代碼一樣),而聲明性的(Declarative)規格說明不對實現過程進行要求,它們僅僅給出最后輸出的屬性和意義,以及它們和輸入之間的關系。

在絕大多是情況下,聲明性的規格說明更合適。它們通常會更簡潔、更易懂、并且最重要的是,它們不會讓使用者嘗試依賴特定的實現方案(很多時候一個模塊的實現方案會不得不改變)。例如,如果我們想要允許多種方案來實現find ,我們就不會在規格說明要求“從數組低位開始向上遍歷搜索”。

有些時候,程序員想要給維護者(maintainer)模塊的實現信息,于是他們將實現描述寫在了規格說明中。要記住,規格說明是給使用者而非模塊的開發者使用的,如果你想要用描述模塊的實現方法,將它們注釋在模塊里面。

另外,對于一種聲明性的規格說明,可以有多種描述方法,例如下面這幾個聲明性的規格說明都是等價的:

static boolean startsWith(String str, String prefix) effects:returns true if and only if there exists String suffix such that prefix + suffix = str static boolean startsWith(String str, String prefix) effects:returns true if and only if there exists integer i such that str.substring(0, i) = prefix static boolean startsWith(String str, String prefix) effects:returns true if the first prefix.length() characters of str are the characters of prefix, false otherwise

我們要做的就是給使用者選擇一個最清晰易懂的。

閱讀小練習

Joint declaration

給出下面這個規格說明:

static String join(String delimiter, String[] elements) effects:append together the strings in elements, but at each step, if there are more elements left, insert delimiter

重寫這個規格說明,使得它是聲明性的而非操作性的。

  • [ ] effects: 將所有的元素通過 new StringJoiner(delimiter)相加

  • [ ] effects: 通過一個循環將各個元素和分隔符疊加起來

  • [x] effects: 返回一個元素的連接體(元素保持原有順序),并在各個元素中插入分隔符。


更強或更弱的規格說明

假設你想要改變一個方法——不管是它的實現方法還是規格說明本身。并且現在已經有使用者在依賴你之前的規格說明來使用方法了,你該怎么確定新的規格說明可以安全的替換原有的規格說明呢?

定義:規格說明S2強于(等于)規格說明S1,如果:

  • S2的前置條件弱于或等價于S1的
  • S2的后置條件強于或等于S1的后置條件。

如果S2強于S1,那么任何S2的實現方法都可以拿來實現S1,并且在程序中可以安全的用S2的模塊替換S1模塊。

這兩個條件實際上表現了一種思想:你可以弱化前置條件(譯者注:即更容易滿足前置條件,或者說滿足前置條件的集合擴大了),這會讓使用者的限制更少(譯者注:例如不用對模塊的輸入先進行一些檢查),也可以強化后置條件(譯者注:在使用者看來,就是模塊的返回更清晰,更有保證性,不用對多種可能情況進行處理)。

例如,對于 find的規格說明:

static int findExactlyOne(int[] a, int val) - requires:val occurs exactly once in a - effects:returns index i such that a[i] = val

可以被替換為:

static int findOneOrMore,AnyIndex(int[] a, int val) - requires:val occurs at least once in a - effects:returns index i such that a[i] = val

可以看到,他的前置條件變弱了。而這個規格說明可以繼續加強:

static int findOneOrMore,FirstIndex(int[] a, int val) - requires:val occurs at least once in a - effects:returns lowest index i such that a[i] = val

即強化了后置條件。

那么下面這個規格說明呢?

static int findCanBeMissing(int[] a, int val) - requires:nothing - effects:returns index i such that a[i] = val, or -1 if no such i

我們試著將它和 findOneOrMore,FirstIndex比較,它的前置條件更弱。但是它的后置條件也更弱——對于滿足 findOneOrMore,FirstIndex的輸入, findOneOrMore,FirstIndex承諾返回最小下標,但是findCanBeMissing沒有做任何承諾。所以它們是不可比較的

在下面的練習中我們會繼續用 findCanBeMissing 和其他的規格說明進行比較。


圖示化規格說明

I試著將Java中的全部方法想象成一個太空,太空中的每一個星星就是一個方法。在這里我們先將上面提到的 findFirst 和 findLast 畫出來。記住,對于 findFirst 和 findLast ,它們的算法/行為是固定的,不能在這個空間中表示一個范圍,所以我們用點來表示實際的方法。

而一個規格說明會在這個太空中描述出一個范圍,在這個范圍中的實現方法都滿足規格說明的要求(即前置條件和后置條件),而在范圍之外的不滿足規格說明的要求。

findFirst 和 findLast 都是滿足 findOneOrMore,AnyIndex的,所以它們都在 findOneOrMore,AnyIndex描述的范圍內:

我們可以想象使用者站在地上向天空望去:規格說明就好像星云的規定邊界一樣

  • 實現者可以自由的在一個星云中移動(即改變實現方案/代碼),例如提升原有算法的性能或修復一個bug,而不必擔心這種改變會導致使用者的不變。
  • 使用者只選取某一個星云,而不在意或依賴到底是其中的哪一個星星。他們可以自由的將模塊應用在各個環境(只要滿足規格說明)。

該如何描述兩個規格說明之間的關系呢?現在假設有S1和S2兩個規格說明,它們一開始的強度是一樣的:

  • 我們先從加強后置條件考慮,如果S2的后置條件變的強于S1的后置條件。那么S2就是強于S1的。

    想一想強化后置條件對于實現者來說意味著什么:更少的自由度,因為輸入的空間變小了。例如之前的規格說明是findOneOrMore,AnyIndex ,而更改后的規格說明變成了 findOneOrMore,FirstIndex 。所以以前在“星云”內的實現方案現在可能在新的星云之外了。

    那么,是否存在一種實現方案,它在 findOneOrMore,FirstIndex 之內但是在findOneOrMore,AnyIndex之外呢?這是不可能的,因為所有滿足findOneOrMore,FirstIndex 的實現方案都強于 findOneOrMore,AnyIndex 的要求。

  • 接著想一想弱化前置條件,這也會使S2變得更強。實現方案需要處理更多的可能輸入空間,如果之前它們沒有在意這寫數據范圍,現在可能就會暴露出一些bug。

對于一個更強的規格說明,它在圖示中能描繪的實現范圍更小,而一個更弱的規格說明描述的實現范圍更大:

在上圖中,由于findLast 是從數組的最后一個元素開始遍歷,所以它不符合findOneOrMore,FirstIndex的后置條件,即它會在findOneOrMore,FirstIndex描繪的范圍之外。

而對于一個既不強于S1也不弱于S1的規格說明S3,它和S1的范圍可能是有重疊的(即存在實現方案即滿足S1,也滿足S3),也可能是沒有重疊的。在這兩種情況下,S1和S3都是不可比較的。

閱讀小練習

Bulking up

當一個規格說明被強化后:

  • [x] 滿足它的實現方案會變少

  • [ ] 滿足它的實現方案會變多

  • [ ] 更少的使用者

  • [x] 更多的使用者

  • [ ] 以上都不是

Strength is truth

以下關于A和B規格說明的關系的描述哪一個是對的?

  • [x] A強于B,且A的前置條件更弱

  • [x] A強于B,且前置條件相同

  • [ ] A強于B,且A的前置條件更強

  • [ ] A強于B,且前置條件不可比較

  • [x] A和B不可比較

Finding findExactlyOne

下面是 find 的各種規格說明:

static int findExactlyOne(int[] a, int val) - requires:val occurs exactly once in a - effects:returns index i such that a[i] = val static int findOneOrMore,AnyIndex(int[] a, int val) - requires:val occurs at least once in a - effects:returns index i such that a[i] = val static int findOneOrMore,FirstIndex(int[] a, int val) - requires:val occurs at least once in a - effects:returns lowest index i such that a[i] = val static int findCanBeMissing(int[] a, int val) - requires:nothing - effects:returns index i such that a[i] = val, or -1 if no such i

對于前三個規格說明,下面哪一個圖的描述是正確的?

  • [ ] 1.

  • [ ] 2.

  • [x] 3.

  • [ ] 4.

Finding findCanBeMissing

findCanBeMissing和 findExactlyOne是何種關系?

  • [ ] findCanBeMissing 弱于 findExactlyOne

  • [x] findCanBeMissing 強于 findExactlyOne

  • [ ] findCanBeMissing 和 findExactlyOne 不可比較

How does findCanBeMissing compare to findOneOrMore,AnyIndex?

  • [ ] findCanBeMissing 弱于 findOneOrMore,AnyIndex

  • [x] findCanBeMissing 強于 findOneOrMore,AnyIndex

  • [ ] findCanBeMissing 和 findOneOrMore,AnyIndex 不可比較

How does findCanBeMissing compare to findOneOrMore,FirstIndex?

  • [ ] findCanBeMissing 弱于 findOneOrMore,FirstIndex

  • [ ] findCanBeMissing強于 findOneOrMore,FirstIndex

  • [x] findCanBeMissing 和 findOneOrMore,FirstIndex 不可比較

Found

下面關于 findCanBeMissing 的描述哪一個是正確的?

  • [ ] 1.

  • [ ] 2.

  • [ ] 3.

  • [x] 4.

  • [ ] 5.


設計好的規格說明

什么因素對一個方法的設計最重要?毫無疑問是初期該方法的規格說明設計。

一個好的規格設計應該簡潔清楚、結構明確、易于理解的。

但是,規格說明的具體內容是很難用一套固定的設計規則描述的,不過這里我們有一些有用的指導方針。

規格說明應該邏輯明確

規格說明不應當有很多種情況(或者if-else判斷)、也不應該有很多參數,布爾類型1的標志也是不好的。思考下面這個規格說明:

static int sumFind(int[] a, int[] b, int val) effects:returns the sum of all indices in arrays a and b at which val appears

這個設計合理嗎?可能不是:它的邏輯不明確,因為它嘗試將兩個毫不相干的事情一起完成(在兩個數組里面查找并將下標相加)。將這兩件事情用兩個分別的模塊來完成會更合理。一個在兩個數組中查找對應的下標,另一個將這兩個下標相加然后輸出結果。

下面是另外一個例子,“代碼評審”中的 countLongWords 方法:

public static int LONG_WORD_LENGTH = 5; public static String longestWord;/*** Update longestWord to be the longest element of words, and print* the number of elements with length > LONG_WORD_LENGTH to the console.* @param words list to search for long words*/ public static void countLongWords(List<String> words)

除了槽糕的使用全局變量和打印而非返回結果(譯者注:這兩個問題都在“代碼評審”這個閱讀中談到了)。這個規格說明的邏輯也是有問題的——它試著同時完成兩件事:找到最長的詞和統計符合長度要求的詞的個數。

將這兩件事情用兩個不同的方法完成不僅會更加簡單(易于理解),也會在其他的上下文中方便復用。

調用的結果應該清晰

思考下面這個規格說明,它將一個值放在一個映射中:

static V put(Map<K,V> map, K key, V val) - requires:val may be null, and map may contain null values - effects:inserts (key, val) into the mapping, overriding any existing mapping for key, and returns old value for key, unless none, in which case it returns null

注意到前置條件中并沒有規定key鍵對應值不能是null 。但是后置條件中將null作為一個特殊條件來返回。這意味著如果返回值是null ,那么使用者就不能判斷到底是這個key對應的值是null ,還是這個key值以前不存在。因此,這不是一個好的設計,它會產生歧義。

規格說明應該足夠“強”

譯者注:這里的強主要指后置條件的強度

當然,規格說明應該保證對于一般的輸入(滿足前置條件的空間)它會滿足要求,這里要說的是對于一些前置條件之外的特殊情況的處理。

例如,對于一個錯誤的輸入,拋出異常并且允許任意的更改就是毫無意義的。因為使用者無法確定模塊在拋出異常前對對象做了哪些更改。這里有一個規格說明就描述了這樣的缺項(并且它的描述是操作性的,這也不好):

static void addAll(List<T> list1, List<T> list2) effects:adds the elements of list2 to list1, unless it encounters a null element, at which point it throws a NullPointerException

如果異常 NullPointerException 被拋出,使用者就得想方設法找到是list2中的哪一個null元素導致了異常的發生(list1被做了哪些改變)。(譯者注:這些應該在拋出時進行描述)

規格說明也應該足夠“弱”

譯者注:這里的強度主要指前置條件的強度

思考下面這個規格說明,該模塊試著打開一個文件:

static File open(String filename) effects:opens a file named filename

這是一個不好的規格說明。它缺乏一些重要的細節:這個文件打開后是進行寫還是讀操作?這個文件是已經存在的嗎?(如果不存在的話,這個模塊會進行創建嗎?)并且它的強度太大了(譯者注:前置條件過弱),畢竟這個模塊是不能保證正確打開一個文件的。例如,模塊所在的進程可能沒有打開這個文件權限,或者這個文件的已經損壞了,操作系統拒絕打開它(譯者注:即有很多程序不能控制的因素決定的打開是否成功)。所以,這個規格說明應該更弱一些,例如說明使用者應該具有該文件的讀/寫權限,這個文件存在等等。

規格說明應該盡可能使用抽象的數據類型

我們之前在“Java基礎”中談到了Java的聚合類型,里面說到了對數據抽象的要求說明例如 List 和 Set 以及具體的實現方法例如 ArrayList 和 HashSet.

在規格說明中使用抽象的數據類型會給使用者和實現者更多的自由。在Java中,這通常意味著使用接口類型,例如 Map 或 Reader 而不是具體的實現類型例如 HashMap 或 FileReader 。現在考慮下面這個規格說明:

static ArrayList<T> reverse(ArrayList<T> list) effects:returns a new list which is the reversal of list, i.e. newList[i] = list[n-i-1] for all 0 ≤ i < n, where n = list.size()

這個規格說明強制使用者傳入一個 ArrayList ,并且強制實現者返回一個 ArrayList ,即使List實現方法有很多種。從描述上看,對應模塊的行為應該不會依賴于 ArrayList的實現特性。所以這里最好寫成更抽象的數據類型List 。


使用前置條件還是后置條件

另一個設計的問題就是是否使用前置條件,如果使用的話,是否需要模塊在一開始對參數進行檢查,判斷其符合前置條件后再進行后續工作。事實上,使用前置條件的一個最常見的要求就是輸入必須精確滿足前置條件,因為模塊檢查參數的資源代價可能會很大。

正如上面所提到的,“重量級”的前置條件會讓使用者不方便,因為他們必須確保輸入不違反前置條件的要求,如果違反了,從錯誤中恢復的方法將是不可預測的。所以使用者大多不喜歡前置條件,這也是為什么Java API 類趨向于(作為后置條件)在參數不合法的時候拋出一個非檢查的異常。這樣的手段使得發現bug更加容易。通常情況下,快速失敗/報錯總是更好的(即離bug越近越好),而不是讓錯誤的參數繼續參與剩下的運算。例如,atan(y, x)可能會要求輸入不能是(0,0)(但不是前置條件),但是它依然會接受這種參數并拋出一個明確的異常,而不是讓這個參數參與剩下的計算并返回一個“垃圾值”。

有時候,檢查參數是不可行的,這個時候前置條件就是必須的了。例如我們想用二分查找的辦法實現find ,我們會要求這個數組是已經排序過的了。如果強制要求模塊檢查這個數組是否已經排好序,這個帶來的線性復雜度相對于我們要實現的目標是承受不起的。

關于是否使用前置條件是一個工程上的判斷。關鍵點在于檢查需要使用的資源量以及這個模塊被使用的范圍。當這個模塊僅僅在類的內部使用時,我們設置前置條件,仔細檢查所有的調用是否合理。但是如果這個方法是公開的,并且會被其他的開發者使用,那么使用前置條件就不那么合理。像Java API一樣,你應該拋出一個異常。


關于訪問控制

閱讀: Packages

閱讀: Controlling Access

在之前的閱讀中,我們一直在使用public的方法,也沒有對此進行特別的考慮。一個方法是public還是private取決于這個類的功能。公共的方法可以被程序中其他的部分訪問。將一個方法公開就相當于你想讓方法所在的類為其他的類提供對應的服務。如果你將所有的方法設置為公開訪問的——包括那些本來只設計在內部使用的方法,未來更改這個類就會變得很困難,因為外部可能會依賴這個類的內部實現。總之,這會讓你的代碼不具備可改動性

將一個內部使用的方法設置為公開訪問也會讓類的接口變得復雜。保持內部方法私有會讓接口簡潔而且符合邏輯,這會讓你的代碼易于理解

在接下來的幾個閱讀中,當我們開始使用類的內部狀態時,我們會看到更多的使用private修飾的理由,這會讓你的代碼遠離bug


類方法和實例方法(static vs. instance)

閱讀: the static keyword

同時,我們也一直在使用static方法而沒有過多的考慮。類方法是指那些不與特定的類實例(對象)相關聯的方法(譯者注:或者說沒有this指針),而實例方法(沒有static修飾)必須通過特定的對象來調用。

實例方法的規格說明和類方法的規格說明是一樣的,但它們通常會利用實例對應的具體屬性。

例如,下面這個非常熟悉的規格說明:

static int find(int[] arr, int val) - requires:val occurs in arr - effects:returns index i such that arr[i] = val

如果這里不是使用 int[],而是一個IntArray 對象呢?那么IntArray 必須提供一個實例方法,對應的規格說明就會是:

int find(int val) - requires:val occurs in this array - effects:returns index i such that the value at index i in this array is val

在以后的課程中我們會討論很多關于實例方法的規格說明的內容。

  • 閱讀小練習

    Show me a sign

    下面哪一些選項代表了好的規格說明的屬性?

    • [x] 該規格說明是聲明性的
    • [ ] 該規格說明是操作性的
    • [ ] 規格說明的強度應該越大越好
    • [ ] 規格說明的強度應該越弱越好
    • [ ] 模塊的實現應該允許忽略錯誤的參數
    • [x] 模塊的實現應該允許根據具體的參數選擇不同的算法
    • [ ] 規格說明應該強調使用者對于模塊具體實現的理解

    That’s an odd way of looking at it

public static int secondToLastIndexOf(int[] arr, int val)- requires:val appears in arr an odd number of times- effects:returns the 2nd-largest i such that arr[i] == val

關于上面這個規格說明,以下哪一些批評是合理的?

  • [x] 這個規格說明的定義有問題,我們無法實現它(譯者注:當輸入的數組只有一個元素的時候)
  • [x] 這個規格說明的邏輯不對(譯者注:odd number、2nd-largest都不合理,應該使用更一般化的要求)
  • [ ] 這個規格說明不是決定性的
  • [ ] 這個規格說明不是操作性的

Behavioral oddities

public static int secondToLastIndexOf(int[] arr, int val)- requires:val appears in arr an odd number of times- effects:returns the 2nd-largest i such that arr[i] == val

思考下面這些對于 secondToLastIndexOf的測試用例:

[ 1, 3, 4 ], 3 返回 1

  • [ ] 合理的測試用例
  • [ ] 如果前置條件變弱,這個測試用例就是合理的
  • [ ] 如果前置條件變弱,后置條件變強,這個測試用例就是合理的
  • [x] 如果后置條件變弱,這個測試用例就是合理的

[ 1, 3, 3, 4 ], 3 返回 1

  • [ ] 合理的測試用例
  • [x] 如果前置條件變弱,這個測試用例就是合理的
  • [ ] 如果前置條件變弱,后置條件變強,這個測試用例就是合理的
  • [ ] 如果后置條件變弱,這個測試用例就是合理的

[ 1, 3, 3, 3, 4 ], 3 返回 2

  • [x] 合理的測試用例
  • [ ] 如果前置條件變弱,這個測試用例就是合理的
  • [ ] 如果前置條件變弱,后置條件變強,這個測試用例就是合理的
  • [ ] 如果后置條件變弱,這個測試用例就是合理的

[ 3, 3, 3, 3 ], 3 拋出一個異常

  • [ ] 合理的測試用例
  • [ ] 如果前置條件變弱,這個測試用例就是合理的
  • [x] 如果前置條件變弱,后置條件改變,這個測試用例就是合理的
  • [ ] 如果后置條件變弱,這個測試用例就是合理的

Odd doc

public static int secondToLastIndexOf(int[] arr, int val)- requires:val appears in arr an odd number of times- effects:returns the 2nd-largest i such that arr[i] == val

(首先這是一個糟糕的規格說明)在下面選取合適的行組成這個規格說明在代碼中的注釋:

  • [x] /*
  • [ ] /**
  • [x] * Finds the second-to-last occurrence of a value in an array.
  • [ ] * Find j, the largest index such that arr[j] == val.
  • [ ] * Then find i, the largest index such that i < j and arr[i] == val.
  • [x] * @param arr array to search
  • [ ] * @param arr fixed-size array of integers to search
  • [ ] * @param val value to search for
  • [x] * @param val value to search for, requires val appears in arr an odd number of times
  • [ ] * @return index i
  • [x] * @return second-largest index i such that arr[i] == val
  • [x] */


總結

規格說明在使用者和實現者之間起著一道防火墻的作用——對于人和代碼之間也是一樣。正如上篇閱讀談到的(譯者注:“規格說明”),這使得獨立開發成為可能:使用者可以在不閱讀模塊源碼的情況下將源碼應用到各個地方,使用者可以不在意模塊被使用的環境(只要他們都遵循規格說明的要求)。

在實際使用中,聲明性的規格說明是最重要的。前置條件(弱化規格說明)使得使用者更困難(確保輸入合法),但是合理的使用會使得實現者能夠做出一些假設,從而選擇更合適的實現方案。

和往常一樣,試著將這篇閱讀的知識點和我們的三個目標聯系起來:

  • 遠離bug. 如果沒有規格說明,即使是最小的更改都有可能使得整個程序崩潰,改動起來也是很麻煩的。一個結構良好、邏輯明確的規格說明會最小化使用者和實現者之間的誤解,并幫助我們進行靜態檢查、測試、代碼評審等等。
  • 易于理解. 一個好的規格說明會讓使用者不必去閱讀源碼也能正確安全地使用模塊。例如,你可能永遠不會去閱讀Python dict.update ,但是通過閱讀對應的聲明性規格說明你就能很好的應用它。
  • 可改動性. 一個合理的“弱”規格說明會給實現者一定的自由,而一個“強”的規格說明會給使用者一定的自由。我們甚至可以改變規格說明本身:只要我們是加強了它而不是削弱了它(減弱前置條件或者增強后置條件)。

轉載于:https://www.cnblogs.com/liqiuhao/p/8606687.html

總結

以上是生活随笔為你收集整理的麻省理工18年春软件构造课程阅读07“设计规格说明”的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

精品久久久久久亚洲精品 | 成人精品视频一区二区 | 国产免费久久精品国产传媒 | 樱花草在线播放免费中文 | 精品aⅴ一区二区三区 | 国精品人妻无码一区二区三区蜜柚 | 成在人线av无码免观看麻豆 | 成年美女黄网站色大免费全看 | 高潮毛片无遮挡高清免费 | 丰满妇女强制高潮18xxxx | 18禁黄网站男男禁片免费观看 | 一本精品99久久精品77 | 青草视频在线播放 | 丁香啪啪综合成人亚洲 | a在线亚洲男人的天堂 | 中文字幕无码热在线视频 | 亚洲成色www久久网站 | 精品国产青草久久久久福利 | 成人一在线视频日韩国产 | 99麻豆久久久国产精品免费 | 亚洲春色在线视频 | 男女下面进入的视频免费午夜 | 免费观看黄网站 | 18黄暴禁片在线观看 | 久久久久久av无码免费看大片 | 亚洲精品国产品国语在线观看 | 欧美日韩人成综合在线播放 | 成人无码影片精品久久久 | 中文字幕 亚洲精品 第1页 | 国产97人人超碰caoprom | 亚洲一区二区三区香蕉 | 无码国产色欲xxxxx视频 | 暴力强奷在线播放无码 | 久久久久人妻一区精品色欧美 | 麻豆成人精品国产免费 | 日韩精品a片一区二区三区妖精 | 色综合久久久无码中文字幕 | 老熟妇仑乱视频一区二区 | 亚洲中文无码av永久不收费 | 在教室伦流澡到高潮hnp视频 | 丝袜足控一区二区三区 | 国产午夜无码视频在线观看 | 狠狠色欧美亚洲狠狠色www | 久久久无码中文字幕久... | 欧美猛少妇色xxxxx | 国产做国产爱免费视频 | 少妇厨房愉情理9仑片视频 | 亚洲男人av天堂午夜在 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 夜夜夜高潮夜夜爽夜夜爰爰 | 免费无码一区二区三区蜜桃大 | 国产性生大片免费观看性 | 动漫av网站免费观看 | 77777熟女视频在线观看 а天堂中文在线官网 | 国产乱人伦偷精品视频 | 中文字幕无线码免费人妻 | 国产麻豆精品一区二区三区v视界 | 精品国产国产综合精品 | 亚洲国产日韩a在线播放 | 在线视频网站www色 | 日本熟妇人妻xxxxx人hd | 免费视频欧美无人区码 | 美女扒开屁股让男人桶 | 中文字幕无码av激情不卡 | 东京一本一道一二三区 | 无遮挡啪啪摇乳动态图 | 成 人 免费观看网站 | 亚洲热妇无码av在线播放 | 131美女爱做视频 | 成人欧美一区二区三区 | 在线观看欧美一区二区三区 | 日韩精品成人一区二区三区 | 国语自产偷拍精品视频偷 | 亚洲狠狠婷婷综合久久 | 亚洲午夜无码久久 | 亚洲乱码中文字幕在线 | 免费男性肉肉影院 | 欧美freesex黑人又粗又大 | 色婷婷综合激情综在线播放 | 麻豆人妻少妇精品无码专区 | 成人欧美一区二区三区黑人免费 | 18禁止看的免费污网站 | 国产精品毛片一区二区 | 日本xxxx色视频在线观看免费 | 久久久无码中文字幕久... | 国语自产偷拍精品视频偷 | 精品无码av一区二区三区 | 美女毛片一区二区三区四区 | 伊人久久大香线蕉亚洲 | 久久www免费人成人片 | 亚洲成a人片在线观看无码3d | 麻豆md0077饥渴少妇 | 亚洲毛片av日韩av无码 | 成年女人永久免费看片 | 欧美日韩一区二区免费视频 | 欧美国产日产一区二区 | 美女张开腿让人桶 | 又大又硬又爽免费视频 | 嫩b人妻精品一区二区三区 | 激情国产av做激情国产爱 | 人人妻人人澡人人爽欧美精品 | 激情国产av做激情国产爱 | 偷窥日本少妇撒尿chinese | 精品厕所偷拍各类美女tp嘘嘘 | 妺妺窝人体色www在线小说 | 好男人www社区 | 少妇性荡欲午夜性开放视频剧场 | 综合激情五月综合激情五月激情1 | 成人欧美一区二区三区黑人免费 | 精品无码国产自产拍在线观看蜜 | 亚洲人成网站在线播放942 | 日日噜噜噜噜夜夜爽亚洲精品 | 一本久道久久综合狠狠爱 | 亚洲成av人影院在线观看 | 荡女精品导航 | 波多野结衣av在线观看 | 天堂а√在线中文在线 | 久久国语露脸国产精品电影 | 久久天天躁夜夜躁狠狠 | 色狠狠av一区二区三区 | 久激情内射婷内射蜜桃人妖 | 国产猛烈高潮尖叫视频免费 | 狠狠cao日日穞夜夜穞av | 国产亚洲精品久久久闺蜜 | 澳门永久av免费网站 | 久久99精品久久久久婷婷 | 日本精品人妻无码免费大全 | 欧美黑人巨大xxxxx | 国产又粗又硬又大爽黄老大爷视 | 日本熟妇浓毛 | 国产高清av在线播放 | 亚洲精品国偷拍自产在线观看蜜桃 | 香蕉久久久久久av成人 | 中文毛片无遮挡高清免费 | 伊在人天堂亚洲香蕉精品区 | 日韩av无码中文无码电影 | 在线欧美精品一区二区三区 | 欧美刺激性大交 | 亚洲精品国产品国语在线观看 | 野外少妇愉情中文字幕 | 人妻aⅴ无码一区二区三区 | 激情五月综合色婷婷一区二区 | 中文字幕乱码中文乱码51精品 | 久久www免费人成人片 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 亚洲综合无码一区二区三区 | 午夜丰满少妇性开放视频 | 97久久精品无码一区二区 | 大地资源网第二页免费观看 | 国产人妻精品一区二区三区不卡 | 成人精品天堂一区二区三区 | 色一情一乱一伦一视频免费看 | 色婷婷香蕉在线一区二区 | 成年女人永久免费看片 | 性欧美疯狂xxxxbbbb | 中文字幕无码日韩欧毛 | 鲁鲁鲁爽爽爽在线视频观看 | 日本熟妇人妻xxxxx人hd | 国产精品久久福利网站 | 免费乱码人妻系列无码专区 | 国产尤物精品视频 | 成熟妇人a片免费看网站 | 亚洲人交乣女bbw | 国产精品二区一区二区aⅴ污介绍 | 亚洲欧洲日本无在线码 | 欧美丰满熟妇xxxx | 精品人妻人人做人人爽 | 亚洲男女内射在线播放 | 天堂一区人妻无码 | 亚洲中文字幕在线观看 | 十八禁真人啪啪免费网站 | 狠狠色丁香久久婷婷综合五月 | 女人高潮内射99精品 | 男人扒开女人内裤强吻桶进去 | 国产麻豆精品一区二区三区v视界 | 99精品国产综合久久久久五月天 | 久久久www成人免费毛片 | 欧美激情一区二区三区成人 | 精品国产一区av天美传媒 | 亚洲色成人中文字幕网站 | 国产亚洲欧美在线专区 | 又湿又紧又大又爽a视频国产 | 久久午夜无码鲁丝片午夜精品 | 久久国产劲爆∧v内射 | 国产精品理论片在线观看 | 色妞www精品免费视频 | 狠狠色丁香久久婷婷综合五月 | 伊人色综合久久天天小片 | 国产肉丝袜在线观看 | 精品国产一区二区三区av 性色 | 国产特级毛片aaaaaaa高清 | 在线观看免费人成视频 | 伊人久久大香线蕉av一区二区 | 欧美熟妇另类久久久久久多毛 | 无码一区二区三区在线观看 | 精品人妻人人做人人爽 | 激情国产av做激情国产爱 | 国产成人亚洲综合无码 | 少妇无码av无码专区在线观看 | 国产精品va在线观看无码 | 少妇性荡欲午夜性开放视频剧场 | 中国大陆精品视频xxxx | 国产午夜无码视频在线观看 | 精品少妇爆乳无码av无码专区 | 婷婷综合久久中文字幕蜜桃三电影 | 亚洲 日韩 欧美 成人 在线观看 | 中文字幕乱码亚洲无线三区 | 亚洲人成影院在线观看 | 欧美 丝袜 自拍 制服 另类 | 国産精品久久久久久久 | 婷婷色婷婷开心五月四房播播 | 77777熟女视频在线观看 а天堂中文在线官网 | 奇米影视888欧美在线观看 | 成人性做爰aaa片免费看不忠 | 大屁股大乳丰满人妻 | 成熟人妻av无码专区 | 亚洲精品一区二区三区在线 | 午夜精品一区二区三区在线观看 | 国产精品久久久 | 亚洲va中文字幕无码久久不卡 | 大肉大捧一进一出视频出来呀 | 亚洲欧洲中文日韩av乱码 | 亚洲理论电影在线观看 | 亚洲精品www久久久 | 男女下面进入的视频免费午夜 | 又粗又大又硬又长又爽 | 久久久国产一区二区三区 | 一本久道久久综合婷婷五月 | 欧美日韩综合一区二区三区 | 日本在线高清不卡免费播放 | 男人扒开女人内裤强吻桶进去 | 亚洲乱亚洲乱妇50p | 2020久久超碰国产精品最新 | 99久久婷婷国产综合精品青草免费 | 99精品国产综合久久久久五月天 | 国产精品人人爽人人做我的可爱 | 国产高清av在线播放 | 暴力强奷在线播放无码 | 欧美精品一区二区精品久久 | 综合激情五月综合激情五月激情1 | 婷婷色婷婷开心五月四房播播 | 欧美日韩一区二区三区自拍 | 国产精品亚洲五月天高清 | 久9re热视频这里只有精品 | 成人亚洲精品久久久久软件 | 乌克兰少妇性做爰 | 青草青草久热国产精品 | 风流少妇按摩来高潮 | 国产婷婷色一区二区三区在线 | 欧美猛少妇色xxxxx | 亚洲狠狠婷婷综合久久 | 一区二区三区乱码在线 | 欧洲 | 国产明星裸体无码xxxx视频 | 嫩b人妻精品一区二区三区 | 在线a亚洲视频播放在线观看 | 国内揄拍国内精品少妇国语 | 人妻中文无码久热丝袜 | 久久无码中文字幕免费影院蜜桃 | 真人与拘做受免费视频一 | 亚洲无人区午夜福利码高清完整版 | 欧美亚洲国产一区二区三区 | 日产精品99久久久久久 | 人妻有码中文字幕在线 | 欧美变态另类xxxx | 撕开奶罩揉吮奶头视频 | 日韩在线不卡免费视频一区 | 欧美老人巨大xxxx做受 | 国产在线一区二区三区四区五区 | 国产精品无码一区二区三区不卡 | 2019午夜福利不卡片在线 | 大肉大捧一进一出好爽视频 | √天堂资源地址中文在线 | 亚洲精品欧美二区三区中文字幕 | 99riav国产精品视频 | 国产激情一区二区三区 | 亚欧洲精品在线视频免费观看 | 亚洲综合无码久久精品综合 | 国产亚洲精品久久久久久 | 亚洲s码欧洲m码国产av | 又湿又紧又大又爽a视频国产 | 亚洲综合精品香蕉久久网 | 欧美亚洲日韩国产人成在线播放 | 曰本女人与公拘交酡免费视频 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 又粗又大又硬毛片免费看 | 国产偷国产偷精品高清尤物 | 国产小呦泬泬99精品 | 乱人伦人妻中文字幕无码 | 噜噜噜亚洲色成人网站 | 国产成人午夜福利在线播放 | 东北女人啪啪对白 | 婷婷综合久久中文字幕蜜桃三电影 | 一个人看的www免费视频在线观看 | 欧洲vodafone精品性 | 亚洲欧美国产精品专区久久 | 在线 国产 欧美 亚洲 天堂 | 国产九九九九九九九a片 | 99久久精品国产一区二区蜜芽 | 日本www一道久久久免费榴莲 | 偷窥日本少妇撒尿chinese | 日本一本二本三区免费 | 国产亚洲精品久久久ai换 | 激情五月综合色婷婷一区二区 | 爽爽影院免费观看 | 久久无码中文字幕免费影院蜜桃 | 乌克兰少妇xxxx做受 | 东京热男人av天堂 | 午夜无码区在线观看 | 色情久久久av熟女人妻网站 | 无遮无挡爽爽免费视频 | 亚洲の无码国产の无码影院 | 久久久久久久久888 | 欧美野外疯狂做受xxxx高潮 | 精品国产精品久久一区免费式 | 久久久久久av无码免费看大片 | 亚洲欧洲中文日韩av乱码 | 99在线 | 亚洲 | 18禁黄网站男男禁片免费观看 | 亚洲成av人综合在线观看 | 大乳丰满人妻中文字幕日本 | 国产乱人伦偷精品视频 | 少妇性俱乐部纵欲狂欢电影 | 蜜臀aⅴ国产精品久久久国产老师 | 午夜理论片yy44880影院 | 精品成人av一区二区三区 | 精品久久久久香蕉网 | 久久久精品国产sm最大网站 | 精品少妇爆乳无码av无码专区 | 99精品久久毛片a片 | 99久久人妻精品免费二区 | 成人试看120秒体验区 | 亚洲国产欧美国产综合一区 | 丝袜人妻一区二区三区 | 任你躁国产自任一区二区三区 | 伊人久久大香线蕉亚洲 | 亚洲欧美综合区丁香五月小说 | 亚洲日韩精品欧美一区二区 | av香港经典三级级 在线 | 国产高清av在线播放 | 色婷婷香蕉在线一区二区 | 亚洲а∨天堂久久精品2021 | 国内精品久久毛片一区二区 | 少妇太爽了在线观看 | 四十如虎的丰满熟妇啪啪 | 性做久久久久久久免费看 | 久久久www成人免费毛片 | 国产又爽又黄又刺激的视频 | 日本在线高清不卡免费播放 | 九月婷婷人人澡人人添人人爽 | 精品无码av一区二区三区 | 国产成人精品久久亚洲高清不卡 | 国产精品久久久久久亚洲影视内衣 | 中文字幕 亚洲精品 第1页 | 午夜精品久久久内射近拍高清 | 夜夜夜高潮夜夜爽夜夜爰爰 | 欧美乱妇无乱码大黄a片 | 无套内谢的新婚少妇国语播放 | 人人妻人人藻人人爽欧美一区 | 99久久婷婷国产综合精品青草免费 | 日日橹狠狠爱欧美视频 | 精品乱码久久久久久久 | 精品乱子伦一区二区三区 | 性欧美牲交在线视频 | 精品久久久久香蕉网 | 亚洲精品国偷拍自产在线观看蜜桃 | 少妇性l交大片欧洲热妇乱xxx | 精品无码国产一区二区三区av | 51国偷自产一区二区三区 | 久久人人97超碰a片精品 | 中文字幕乱妇无码av在线 | 亚洲精品一区三区三区在线观看 | 在线观看欧美一区二区三区 | 大地资源网第二页免费观看 | 特黄特色大片免费播放器图片 | 日韩精品无码免费一区二区三区 | 欧洲vodafone精品性 | 欧美精品免费观看二区 | 中文字幕无码人妻少妇免费 | 无码人妻精品一区二区三区下载 | 国产av无码专区亚洲awww | 成人av无码一区二区三区 | 亚洲一区二区三区国产精华液 | 久久精品中文闷骚内射 | 国产特级毛片aaaaaa高潮流水 | 国产成人无码区免费内射一片色欲 | 强辱丰满人妻hd中文字幕 | 国产精品久久国产三级国 | 男女爱爱好爽视频免费看 | 午夜时刻免费入口 | 最新国产麻豆aⅴ精品无码 | 无码人妻精品一区二区三区不卡 | 久久99精品国产麻豆 | 日韩精品无码免费一区二区三区 | 国产精品无套呻吟在线 | 久久久成人毛片无码 | 久久久久亚洲精品中文字幕 | 四虎4hu永久免费 | 丁香花在线影院观看在线播放 | 久久综合色之久久综合 | 97无码免费人妻超级碰碰夜夜 | 欧美精品无码一区二区三区 | 久久久久久亚洲精品a片成人 | 欧美性生交xxxxx久久久 | 国产99久久精品一区二区 | 国产偷国产偷精品高清尤物 | 亚洲国产精品成人久久蜜臀 | 国产人妻精品午夜福利免费 | 欧美人妻一区二区三区 | 国内揄拍国内精品人妻 | 亚洲色大成网站www国产 | 国产亚av手机在线观看 | 日韩无码专区 | 亚洲国产成人av在线观看 | 美女毛片一区二区三区四区 | 18禁止看的免费污网站 | 国产乱子伦视频在线播放 | 无码播放一区二区三区 | 国产人成高清在线视频99最全资源 | 国产香蕉尹人视频在线 | 国产精品久久久久影院嫩草 | 中文字幕av无码一区二区三区电影 | 国产亚洲精品久久久ai换 | 亚洲七七久久桃花影院 | 精品欧美一区二区三区久久久 | 国色天香社区在线视频 | 国产小呦泬泬99精品 | 国产乱码精品一品二品 | 国产午夜无码视频在线观看 | 婷婷五月综合缴情在线视频 | 亚洲国产综合无码一区 | 人人爽人人爽人人片av亚洲 | 亚洲精品国产a久久久久久 | 国产人妻久久精品二区三区老狼 | 精品乱子伦一区二区三区 | 亚洲一区二区观看播放 | 人人妻人人澡人人爽人人精品 | 精品偷拍一区二区三区在线看 | 欧美午夜特黄aaaaaa片 | 色欲综合久久中文字幕网 | 久久天天躁夜夜躁狠狠 | 女人被爽到呻吟gif动态图视看 | 亚洲精品午夜国产va久久成人 | 日本va欧美va欧美va精品 | 午夜福利一区二区三区在线观看 | 妺妺窝人体色www婷婷 | 婷婷丁香五月天综合东京热 | 国产手机在线αⅴ片无码观看 | 国产一区二区三区四区五区加勒比 | 国产成人无码av一区二区 | 国产成人无码午夜视频在线观看 | 狂野欧美性猛xxxx乱大交 | 亚洲国产精品一区二区第一页 | 亚洲日韩精品欧美一区二区 | 久久久成人毛片无码 | 一本大道伊人av久久综合 | 久久精品国产大片免费观看 | 午夜福利不卡在线视频 | 亚洲精品美女久久久久久久 | 亚洲小说春色综合另类 | 免费观看的无遮挡av | 中文字幕日韩精品一区二区三区 | 免费观看的无遮挡av | 牲欲强的熟妇农村老妇女视频 | 强辱丰满人妻hd中文字幕 | 精品国产一区二区三区四区 | 欧美老妇交乱视频在线观看 | 欧美国产亚洲日韩在线二区 | 亚洲一区二区三区四区 | 特级做a爰片毛片免费69 | 亚洲精品国产a久久久久久 | 高潮毛片无遮挡高清免费 | 成人动漫在线观看 | 精品无码成人片一区二区98 | 性欧美疯狂xxxxbbbb | 免费观看的无遮挡av | 人人妻人人澡人人爽欧美一区 | 国产av剧情md精品麻豆 | 婷婷色婷婷开心五月四房播播 | 天堂无码人妻精品一区二区三区 | 黑人大群体交免费视频 | 亚洲伊人久久精品影院 | 久久精品视频在线看15 | 国产人妖乱国产精品人妖 | 免费中文字幕日韩欧美 | 午夜福利一区二区三区在线观看 | 亚洲精品成a人在线观看 | 丰满少妇熟乱xxxxx视频 | 亚洲综合久久一区二区 | 亚洲爆乳大丰满无码专区 | 欧美日韩一区二区免费视频 | 国产va免费精品观看 | 日本va欧美va欧美va精品 | 一本久道高清无码视频 | 国产精品鲁鲁鲁 | 国产亚洲精品久久久久久 | 精品欧洲av无码一区二区三区 | 久久综合色之久久综合 | 欧美肥老太牲交大战 | 牲欲强的熟妇农村老妇女 | 成人性做爰aaa片免费看不忠 | 永久免费观看国产裸体美女 | 伦伦影院午夜理论片 | 中文字幕+乱码+中文字幕一区 | 国产熟妇另类久久久久 | 亚洲欧洲中文日韩av乱码 | 国产精品高潮呻吟av久久 | 粉嫩少妇内射浓精videos | 久久久久国色av免费观看性色 | 少妇性l交大片欧洲热妇乱xxx | 国产亚洲精品精品国产亚洲综合 | av香港经典三级级 在线 | 国产明星裸体无码xxxx视频 | 欧美日韩一区二区综合 | 99精品国产综合久久久久五月天 | 好男人www社区 | 无码精品人妻一区二区三区av | 国产精品久久久久久久影院 | 丰腴饱满的极品熟妇 | 领导边摸边吃奶边做爽在线观看 | 成人无码精品1区2区3区免费看 | 人人妻人人澡人人爽欧美精品 | 亚洲精品成人福利网站 | 国产性生大片免费观看性 | 无套内谢的新婚少妇国语播放 | 99er热精品视频 | 亚洲精品中文字幕久久久久 | 7777奇米四色成人眼影 | 无遮挡啪啪摇乳动态图 | 一个人看的视频www在线 | 日韩欧美中文字幕在线三区 | 中文字幕久久久久人妻 | 天天摸天天透天天添 | 色欲久久久天天天综合网精品 | 亚洲中文字幕无码一久久区 | 风流少妇按摩来高潮 | 麻豆成人精品国产免费 | 国产va免费精品观看 | 亚洲日韩乱码中文无码蜜桃臀网站 | 欧美丰满老熟妇xxxxx性 | 婷婷综合久久中文字幕蜜桃三电影 | 国产精品视频免费播放 | 丁香花在线影院观看在线播放 | 东京热无码av男人的天堂 | 色欲综合久久中文字幕网 | 精品欧美一区二区三区久久久 | 中文字幕中文有码在线 | 波多野结衣av一区二区全免费观看 | 天堂一区人妻无码 | 日日碰狠狠躁久久躁蜜桃 | 日韩欧美中文字幕在线三区 | 亚洲自偷精品视频自拍 | 亚洲成a人片在线观看无码3d | 国产另类ts人妖一区二区 | 无码精品国产va在线观看dvd | 久久精品丝袜高跟鞋 | 亚洲欧美精品aaaaaa片 | 亚洲日韩中文字幕在线播放 | 国产又爽又猛又粗的视频a片 | 日日摸夜夜摸狠狠摸婷婷 | 久久久久免费看成人影片 | 黑森林福利视频导航 | 久久久精品成人免费观看 | 国产激情精品一区二区三区 | 亚洲综合精品香蕉久久网 | 欧美猛少妇色xxxxx | 国产精品久久久久久久影院 | 成人性做爰aaa片免费看不忠 | 性色欲网站人妻丰满中文久久不卡 | 无码人妻精品一区二区三区不卡 | 人人妻在人人 | 亚洲 a v无 码免 费 成 人 a v | 亚洲国产综合无码一区 | 欧美自拍另类欧美综合图片区 | 亚洲精品中文字幕久久久久 | 欧美日本日韩 | 日本免费一区二区三区最新 | 国语精品一区二区三区 | 国产办公室秘书无码精品99 | aⅴ亚洲 日韩 色 图网站 播放 | 欧美 亚洲 国产 另类 | 亚洲另类伦春色综合小说 | 国产精品视频免费播放 | 中文字幕av伊人av无码av | 无人区乱码一区二区三区 | 欧美刺激性大交 | 99在线 | 亚洲 | 国产精品久久久久久久9999 | 少妇无码吹潮 | 国产一区二区三区精品视频 | 无码乱肉视频免费大全合集 | 久久精品人妻少妇一区二区三区 | 97se亚洲精品一区 | 国产精品亚洲а∨无码播放麻豆 | 久青草影院在线观看国产 | 少妇人妻偷人精品无码视频 | 最近中文2019字幕第二页 | 99久久久国产精品无码免费 | 久久99热只有频精品8 | 婷婷五月综合激情中文字幕 | 国产精品亚洲综合色区韩国 | 六十路熟妇乱子伦 | 国产成人亚洲综合无码 | 精品国产乱码久久久久乱码 | av在线亚洲欧洲日产一区二区 | 国产精品美女久久久网av | 真人与拘做受免费视频一 | 色五月五月丁香亚洲综合网 | 久久精品国产大片免费观看 | 美女扒开屁股让男人桶 | 人人爽人人澡人人人妻 | 男女超爽视频免费播放 | 免费国产成人高清在线观看网站 | 性生交大片免费看女人按摩摩 | 曰本女人与公拘交酡免费视频 | 中文久久乱码一区二区 | 在线观看欧美一区二区三区 | 国产熟妇高潮叫床视频播放 | 丝袜 中出 制服 人妻 美腿 | 久久aⅴ免费观看 | 成人无码影片精品久久久 | 久久99精品久久久久婷婷 | 97久久超碰中文字幕 | 乌克兰少妇xxxx做受 | 亚洲男人av香蕉爽爽爽爽 | 丰满人妻被黑人猛烈进入 | 学生妹亚洲一区二区 | 国产超碰人人爽人人做人人添 | 国产两女互慰高潮视频在线观看 | 熟女少妇人妻中文字幕 | 亚洲国产高清在线观看视频 | 丰满护士巨好爽好大乳 | 亚洲色偷偷男人的天堂 | 好屌草这里只有精品 | 亚洲熟妇自偷自拍另类 | 国产精品亚洲综合色区韩国 | 国产精品嫩草久久久久 | 国产亚洲精品久久久闺蜜 | 精品国产麻豆免费人成网站 | 日日噜噜噜噜夜夜爽亚洲精品 | 亚洲精品成a人在线观看 | 强伦人妻一区二区三区视频18 | 久久精品国产精品国产精品污 | 欧美三级不卡在线观看 | 99麻豆久久久国产精品免费 | 天堂在线观看www | 成在人线av无码免观看麻豆 | 人人妻人人藻人人爽欧美一区 | 国产乱人伦av在线无码 | 全黄性性激高免费视频 | 精品国产一区二区三区四区在线看 | 国产亚洲人成a在线v网站 | 国内综合精品午夜久久资源 | 2019nv天堂香蕉在线观看 | 国产精品久久久午夜夜伦鲁鲁 | 亚洲国产av美女网站 | 蜜桃视频韩日免费播放 | 精品国产一区av天美传媒 | 久久综合九色综合97网 | 亚洲熟悉妇女xxx妇女av | 大地资源中文第3页 | 人人妻人人澡人人爽欧美一区九九 | 欧美日本精品一区二区三区 | 免费人成在线观看网站 | 人人妻人人澡人人爽欧美精品 | 自拍偷自拍亚洲精品10p | 中文字幕无码人妻少妇免费 | 扒开双腿吃奶呻吟做受视频 | 精品国产aⅴ无码一区二区 | 久久aⅴ免费观看 | www成人国产高清内射 | 国内少妇偷人精品视频免费 | 无码播放一区二区三区 | 久久99精品国产麻豆蜜芽 | 丝袜 中出 制服 人妻 美腿 | 亚洲高清偷拍一区二区三区 | 丰满少妇女裸体bbw | 亚洲无人区一区二区三区 | 美女张开腿让人桶 | 中文字幕av日韩精品一区二区 | 亚洲国产av美女网站 | 国产精品久久国产精品99 | 牲欲强的熟妇农村老妇女 | 荫蒂被男人添的好舒服爽免费视频 | 亚洲一区二区观看播放 | 在线观看国产午夜福利片 | 亚洲精品一区二区三区大桥未久 | 日本爽爽爽爽爽爽在线观看免 | 成人精品一区二区三区中文字幕 | 成人免费视频在线观看 | 精品国产国产综合精品 | 亚洲欧洲日本综合aⅴ在线 | 九九热爱视频精品 | 国产精品亚洲а∨无码播放麻豆 | 在线精品国产一区二区三区 | 噜噜噜亚洲色成人网站 | 一本色道久久综合狠狠躁 | 无码纯肉视频在线观看 | av在线亚洲欧洲日产一区二区 | 国产亚洲精品久久久久久大师 | 久精品国产欧美亚洲色aⅴ大片 | 粉嫩少妇内射浓精videos | 久久久无码中文字幕久... | 狂野欧美激情性xxxx | 日韩精品a片一区二区三区妖精 | 亚洲国产精品无码久久久久高潮 | 成熟人妻av无码专区 | 无码人妻丰满熟妇区五十路百度 | 午夜精品久久久久久久 | 亚洲一区二区三区含羞草 | 一本久久a久久精品vr综合 | 国产人妻大战黑人第1集 | 又色又爽又黄的美女裸体网站 | 人妻无码αv中文字幕久久琪琪布 | 性欧美大战久久久久久久 | 国产熟女一区二区三区四区五区 | 免费观看又污又黄的网站 | 丁香啪啪综合成人亚洲 | 亚洲精品国产第一综合99久久 | 国产精品久久久 | 荫蒂添的好舒服视频囗交 | 无码国产色欲xxxxx视频 | 性开放的女人aaa片 | 日本熟妇人妻xxxxx人hd | 中文字幕无码免费久久99 | www一区二区www免费 | 成熟人妻av无码专区 | 久久精品一区二区三区四区 | 国内精品久久毛片一区二区 | 一本色道久久综合亚洲精品不卡 | 精品久久久久香蕉网 | 久久亚洲中文字幕无码 | 无遮挡啪啪摇乳动态图 | 久久精品女人的天堂av | 日日噜噜噜噜夜夜爽亚洲精品 | 久久亚洲国产成人精品性色 | 波多野结衣高清一区二区三区 | 国产无遮挡又黄又爽又色 | 男人扒开女人内裤强吻桶进去 | 日日摸日日碰夜夜爽av | 午夜无码区在线观看 | 亚洲日韩av一区二区三区四区 | 美女毛片一区二区三区四区 | 香港三级日本三级妇三级 | 天天爽夜夜爽夜夜爽 | 少妇人妻av毛片在线看 | 夫妻免费无码v看片 | 精品无码一区二区三区爱欲 | 水蜜桃av无码 | 又大又硬又黄的免费视频 | 人妻少妇精品无码专区二区 | 国产激情艳情在线看视频 | 人妻中文无码久热丝袜 | 成人精品一区二区三区中文字幕 | 国产 浪潮av性色四虎 | 少妇的肉体aa片免费 | 欧美人与牲动交xxxx | 成人片黄网站色大片免费观看 | 国产午夜手机精彩视频 | 又大又紧又粉嫩18p少妇 | 好男人www社区 | 国产av久久久久精东av | 乱码午夜-极国产极内射 | 4hu四虎永久在线观看 | 亚洲日韩av一区二区三区中文 | 秋霞成人午夜鲁丝一区二区三区 | 无码国产激情在线观看 | 国产精品亚洲а∨无码播放麻豆 | 四虎永久在线精品免费网址 | 成人精品视频一区二区三区尤物 | 天堂无码人妻精品一区二区三区 | 无码人妻av免费一区二区三区 | 国产激情综合五月久久 | 丰满少妇熟乱xxxxx视频 | 日日天日日夜日日摸 | 福利一区二区三区视频在线观看 | 18无码粉嫩小泬无套在线观看 | 久久视频在线观看精品 | 国内少妇偷人精品视频 | 亚洲第一无码av无码专区 | 天堂亚洲2017在线观看 | 熟妇人妻无码xxx视频 | 在线а√天堂中文官网 | 俺去俺来也在线www色官网 | 欧美日韩一区二区免费视频 | 高清国产亚洲精品自在久久 | 红桃av一区二区三区在线无码av | 性做久久久久久久久 | 日韩视频 中文字幕 视频一区 | 领导边摸边吃奶边做爽在线观看 | 成人精品天堂一区二区三区 | 亚洲gv猛男gv无码男同 | 蜜臀av在线播放 久久综合激激的五月天 | 国产精品成人av在线观看 | 日本一卡二卡不卡视频查询 | 丰满少妇弄高潮了www | 中文字幕无码视频专区 | 久久久久久久久888 | 亚洲成av人片在线观看无码不卡 | 无码精品国产va在线观看dvd | 久久久久久九九精品久 | 国产免费久久精品国产传媒 | 久久久婷婷五月亚洲97号色 | 亚洲毛片av日韩av无码 | 色欲久久久天天天综合网精品 | 色欲av亚洲一区无码少妇 | 日韩成人一区二区三区在线观看 | 精品厕所偷拍各类美女tp嘘嘘 | 国产乱人无码伦av在线a | 人人妻人人澡人人爽精品欧美 | 免费观看又污又黄的网站 | 97人妻精品一区二区三区 | 亚洲色大成网站www国产 | 麻豆蜜桃av蜜臀av色欲av | 成熟人妻av无码专区 | 蜜臀av无码人妻精品 | 午夜精品一区二区三区在线观看 | 国产网红无码精品视频 | 亚洲色大成网站www国产 | 男人的天堂2018无码 | 精品欧洲av无码一区二区三区 | 欧美丰满老熟妇xxxxx性 | 人妻体内射精一区二区三四 | 波多野42部无码喷潮在线 | 自拍偷自拍亚洲精品10p | 桃花色综合影院 | 国产两女互慰高潮视频在线观看 | 色一情一乱一伦一视频免费看 | 欧美老人巨大xxxx做受 | 欧美 日韩 人妻 高清 中文 | 在线播放无码字幕亚洲 | 无码人妻av免费一区二区三区 | 国产精品免费大片 | 精品无码成人片一区二区98 | 1000部啪啪未满十八勿入下载 | 色一情一乱一伦一视频免费看 | 丰满妇女强制高潮18xxxx | 亚洲中文字幕无码中字 | 亚洲乱码国产乱码精品精 | 久久精品女人天堂av免费观看 | 日韩 欧美 动漫 国产 制服 | 久久综合九色综合97网 | 国产97在线 | 亚洲 | 青草视频在线播放 | 婷婷综合久久中文字幕蜜桃三电影 | 欧美自拍另类欧美综合图片区 | a国产一区二区免费入口 | 理论片87福利理论电影 | 夜夜高潮次次欢爽av女 | 中文字幕日韩精品一区二区三区 | 成在人线av无码免费 | 亚洲国产av精品一区二区蜜芽 | 久久亚洲a片com人成 | a片免费视频在线观看 | 亚洲熟妇自偷自拍另类 | a片在线免费观看 | 国产精品美女久久久网av | 日韩亚洲欧美中文高清在线 | 欧美日韩精品 | 久久亚洲国产成人精品性色 | 欧美 日韩 亚洲 在线 | 亚洲中文字幕成人无码 | 久久久中文久久久无码 | 国产sm调教视频在线观看 | 亚洲啪av永久无码精品放毛片 | 亚洲人成影院在线无码按摩店 | 福利一区二区三区视频在线观看 | 亚洲色成人中文字幕网站 | 高清不卡一区二区三区 | 国产手机在线αⅴ片无码观看 | 国产精品香蕉在线观看 | 成人三级无码视频在线观看 | 成人无码精品1区2区3区免费看 | 少妇被粗大的猛进出69影院 | 美女极度色诱视频国产 | 亚洲 日韩 欧美 成人 在线观看 | 成人精品视频一区二区三区尤物 | 国产va免费精品观看 | 国产精品毛多多水多 | 55夜色66夜色国产精品视频 | 成人无码视频免费播放 | 国产精品久久久久9999小说 | 无码人妻丰满熟妇区五十路百度 | 精品国产麻豆免费人成网站 | 性做久久久久久久免费看 | 女高中生第一次破苞av | 狠狠噜狠狠狠狠丁香五月 | 人妻少妇精品久久 | av无码不卡在线观看免费 | 亚洲中文字幕在线无码一区二区 | 日本xxxx色视频在线观看免费 | 中文无码精品a∨在线观看不卡 | 精品无码一区二区三区的天堂 | 一本大道伊人av久久综合 | 欧美真人作爱免费视频 | 久久精品人妻少妇一区二区三区 | 纯爱无遮挡h肉动漫在线播放 | 亚洲成av人片天堂网无码】 | 图片小说视频一区二区 | 欧美日韩一区二区综合 | 婷婷六月久久综合丁香 | 性欧美大战久久久久久久 | 国产亚洲精品精品国产亚洲综合 | 300部国产真实乱 | 国产精华av午夜在线观看 | 美女毛片一区二区三区四区 | 国产精品无码一区二区桃花视频 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 美女毛片一区二区三区四区 | 国产精品久久久久无码av色戒 | 玩弄少妇高潮ⅹxxxyw | 亚洲日韩乱码中文无码蜜桃臀网站 | 伊人久久婷婷五月综合97色 | 亚洲国产精品一区二区美利坚 | 亚洲s码欧洲m码国产av | 男女性色大片免费网站 | 丰满少妇人妻久久久久久 | 福利一区二区三区视频在线观看 | 粗大的内捧猛烈进出视频 | 又大又硬又爽免费视频 | 国产精品亚洲lv粉色 | 成 人 网 站国产免费观看 | 伊人色综合久久天天小片 | 高潮毛片无遮挡高清免费视频 | 国产肉丝袜在线观看 | 国产精品丝袜黑色高跟鞋 | 99久久婷婷国产综合精品青草免费 | 最新版天堂资源中文官网 | 乱人伦人妻中文字幕无码 | 精品一区二区不卡无码av | 婷婷丁香五月天综合东京热 | 97无码免费人妻超级碰碰夜夜 | 4hu四虎永久在线观看 | 蜜臀aⅴ国产精品久久久国产老师 | 久久久久久久人妻无码中文字幕爆 | 性欧美大战久久久久久久 | 亚洲日韩一区二区三区 | 日韩成人一区二区三区在线观看 | 精品午夜福利在线观看 | 丰满人妻翻云覆雨呻吟视频 | 水蜜桃亚洲一二三四在线 | 国产欧美精品一区二区三区 | 国产无套内射久久久国产 | 国产 精品 自在自线 | 97无码免费人妻超级碰碰夜夜 | 男女作爱免费网站 | 国色天香社区在线视频 | 成人亚洲精品久久久久 | 成人免费视频一区二区 | 亚洲毛片av日韩av无码 | 精品午夜福利在线观看 | 日韩av无码中文无码电影 | 免费男性肉肉影院 | 欧美日韩视频无码一区二区三 | 黑人巨大精品欧美黑寡妇 | 强辱丰满人妻hd中文字幕 | 亚洲中文字幕无码中文字在线 | 一个人看的www免费视频在线观看 | 成人片黄网站色大片免费观看 | 精品国产成人一区二区三区 | 精品午夜福利在线观看 | 国产三级久久久精品麻豆三级 | 人妻人人添人妻人人爱 | 欧美zoozzooz性欧美 | 人妻有码中文字幕在线 | 国产亚洲视频中文字幕97精品 | 午夜福利试看120秒体验区 | 国产办公室秘书无码精品99 | 久久www免费人成人片 | 色欲久久久天天天综合网精品 | 欧美日韩视频无码一区二区三 | 国产精品va在线播放 | 午夜无码区在线观看 | 日韩人妻无码中文字幕视频 | 欧美黑人乱大交 | 国产精品久久久久久久影院 | 国产激情艳情在线看视频 | 台湾无码一区二区 | 又色又爽又黄的美女裸体网站 | 日韩av无码一区二区三区 | 欧美激情一区二区三区成人 | 中文无码精品a∨在线观看不卡 | 日本在线高清不卡免费播放 | 免费国产成人高清在线观看网站 | 日韩亚洲欧美精品综合 | 国产无av码在线观看 | 在线播放亚洲第一字幕 | 麻豆成人精品国产免费 | 欧美日韩一区二区三区自拍 | 久在线观看福利视频 | 欧美激情一区二区三区成人 | 国产人妻人伦精品 | 欧美人与物videos另类 | 国内少妇偷人精品视频 | 亚洲色大成网站www国产 | 少妇邻居内射在线 | 欧美日韩一区二区综合 | 中文字幕无码av激情不卡 | 少妇被粗大的猛进出69影院 | 领导边摸边吃奶边做爽在线观看 | 亚洲欧美日韩国产精品一区二区 | 中文精品无码中文字幕无码专区 | 国产电影无码午夜在线播放 | 天干天干啦夜天干天2017 | 丝袜美腿亚洲一区二区 | 成人精品视频一区二区 | 未满成年国产在线观看 | 午夜福利不卡在线视频 | 亚洲精品中文字幕久久久久 | 色妞www精品免费视频 | 激情亚洲一区国产精品 | 国产人妻精品一区二区三区不卡 | 亚洲色在线无码国产精品不卡 | 久久午夜无码鲁丝片午夜精品 | 在线成人www免费观看视频 | 漂亮人妻洗澡被公强 日日躁 | 蜜臀aⅴ国产精品久久久国产老师 | 1000部啪啪未满十八勿入下载 | 精品久久久久久亚洲精品 | 亚洲伊人久久精品影院 | 精品久久8x国产免费观看 | 久久久久99精品成人片 | 99视频精品全部免费免费观看 | 国产艳妇av在线观看果冻传媒 | 色综合久久中文娱乐网 | 女人被爽到呻吟gif动态图视看 | 夜夜躁日日躁狠狠久久av | 高清国产亚洲精品自在久久 | 熟妇人妻中文av无码 | 精品久久久无码中文字幕 | 欧美黑人性暴力猛交喷水 | 亚洲精品久久久久avwww潮水 | 精品aⅴ一区二区三区 | 狠狠色噜噜狠狠狠狠7777米奇 | 国产精品美女久久久久av爽李琼 | 99久久99久久免费精品蜜桃 | 亚洲精品成人av在线 | 乱码av麻豆丝袜熟女系列 | 少妇高潮喷潮久久久影院 | 亚洲日本一区二区三区在线 | 内射白嫩少妇超碰 | 国产真人无遮挡作爱免费视频 | 国产一区二区三区影院 | 76少妇精品导航 | 国产亚洲美女精品久久久2020 | 欧美丰满少妇xxxx性 | 国产午夜亚洲精品不卡 | 亚洲狠狠婷婷综合久久 | 大肉大捧一进一出好爽视频 | 亚洲s色大片在线观看 | 欧美三级a做爰在线观看 | 色婷婷综合中文久久一本 | 日本免费一区二区三区最新 | 国精品人妻无码一区二区三区蜜柚 | 丰满人妻精品国产99aⅴ | 对白脏话肉麻粗话av | 丰满人妻被黑人猛烈进入 | 国产内射爽爽大片视频社区在线 | 亚洲精品中文字幕 | 亚洲日本va中文字幕 | 99久久99久久免费精品蜜桃 | 日欧一片内射va在线影院 | 亚洲色欲色欲欲www在线 | 影音先锋中文字幕无码 | 成人三级无码视频在线观看 | 女高中生第一次破苞av | 丁香啪啪综合成人亚洲 | 亚洲日本va中文字幕 | 久久久久99精品国产片 | 熟女少妇人妻中文字幕 | 曰韩无码二三区中文字幕 | 人妻少妇被猛烈进入中文字幕 | 欧美成人午夜精品久久久 | 人妻少妇精品视频专区 | 麻豆md0077饥渴少妇 | 青青青爽视频在线观看 | 对白脏话肉麻粗话av | 成人无码影片精品久久久 | 风流少妇按摩来高潮 | 国产人妻人伦精品1国产丝袜 | 婷婷五月综合激情中文字幕 | 国产精品嫩草久久久久 | 国产性生大片免费观看性 | 精品欧洲av无码一区二区三区 | 久久久av男人的天堂 | 亚洲精品美女久久久久久久 | 97色伦图片97综合影院 | 国产九九九九九九九a片 | 国产亚洲精品久久久久久大师 | 丁香花在线影院观看在线播放 | 国产成人精品优优av | 99麻豆久久久国产精品免费 | 狠狠cao日日穞夜夜穞av | 中文字幕无码热在线视频 | 7777奇米四色成人眼影 | 97人妻精品一区二区三区 | 十八禁视频网站在线观看 | 亚洲乱码国产乱码精品精 | 又紧又大又爽精品一区二区 | 在线播放免费人成毛片乱码 | 少妇高潮喷潮久久久影院 | 日日夜夜撸啊撸 | 国产精品高潮呻吟av久久4虎 | 久精品国产欧美亚洲色aⅴ大片 | 成人aaa片一区国产精品 | 色综合久久网 | 亚洲精品成人福利网站 | 无码毛片视频一区二区本码 | 国产人妻久久精品二区三区老狼 | 老熟妇仑乱视频一区二区 | 久久亚洲日韩精品一区二区三区 | 免费网站看v片在线18禁无码 | 国产精品国产自线拍免费软件 | 色婷婷欧美在线播放内射 | 国产69精品久久久久app下载 | 男人的天堂2018无码 | 色五月五月丁香亚洲综合网 | 国产精品久久久 | 99精品视频在线观看免费 | 少妇一晚三次一区二区三区 | 久久久久国色av免费观看性色 | 牛和人交xxxx欧美 | 国产极品视觉盛宴 | 久久久国产一区二区三区 | 精品无人国产偷自产在线 | 亚洲熟悉妇女xxx妇女av | 纯爱无遮挡h肉动漫在线播放 | 成人毛片一区二区 | а√天堂www在线天堂小说 | 久久久久久久久888 | 99久久无码一区人妻 | 任你躁国产自任一区二区三区 | 精品国产麻豆免费人成网站 | 中文字幕精品av一区二区五区 | 在线欧美精品一区二区三区 | 国产精品美女久久久久av爽李琼 | 人妻夜夜爽天天爽三区 | 青春草在线视频免费观看 | 亚洲欧美精品伊人久久 | 无码人妻少妇伦在线电影 | 性欧美疯狂xxxxbbbb | 国产特级毛片aaaaaa高潮流水 | 亚洲精品一区二区三区在线观看 | 久久久亚洲欧洲日产国码αv | 日韩成人一区二区三区在线观看 | 人妻无码久久精品人妻 | 亚洲日韩av一区二区三区四区 | 国产精品第一国产精品 | 国产熟妇高潮叫床视频播放 | 国语自产偷拍精品视频偷 | 国产黄在线观看免费观看不卡 | 日韩av无码一区二区三区 | 男女作爱免费网站 | 99久久精品无码一区二区毛片 | 国产另类ts人妖一区二区 | 久久成人a毛片免费观看网站 | 国产黄在线观看免费观看不卡 | 日韩精品久久久肉伦网站 | 国产九九九九九九九a片 | 亚洲国产欧美国产综合一区 | 国内揄拍国内精品少妇国语 | 波多野结衣aⅴ在线 | 亚洲日本va午夜在线电影 | 精品国产一区二区三区av 性色 | 国产香蕉97碰碰久久人人 | 亚洲熟妇色xxxxx欧美老妇 | 高潮喷水的毛片 | 大地资源网第二页免费观看 | 爆乳一区二区三区无码 | 欧美阿v高清资源不卡在线播放 | 亚洲自偷自拍另类第1页 | 国产精品美女久久久网av | 国产亚洲欧美日韩亚洲中文色 | 国产在热线精品视频 | 久久这里只有精品视频9 | 麻豆精品国产精华精华液好用吗 | 久久99国产综合精品 | 午夜成人1000部免费视频 | 国产性生大片免费观看性 | 中文字幕乱码人妻二区三区 | 帮老师解开蕾丝奶罩吸乳网站 | 日本精品人妻无码免费大全 | 久久国产精品萌白酱免费 | 最近免费中文字幕中文高清百度 | 2020久久超碰国产精品最新 | 两性色午夜免费视频 | 日本一本二本三区免费 | 无码av最新清无码专区吞精 | 亚洲欧美国产精品久久 | 天堂无码人妻精品一区二区三区 | 国产凸凹视频一区二区 | 色综合天天综合狠狠爱 | 久久精品无码一区二区三区 | 中文字幕av日韩精品一区二区 | 中文字幕无码日韩欧毛 | 波多野结衣av一区二区全免费观看 | 丝袜人妻一区二区三区 | 国产欧美熟妇另类久久久 | 国产亚洲精品久久久久久国模美 | 97夜夜澡人人爽人人喊中国片 | 99久久人妻精品免费一区 | 亚洲色欲色欲欲www在线 | 激情亚洲一区国产精品 | 亚洲无人区午夜福利码高清完整版 | 中文字幕无码乱人伦 | 久久综合九色综合欧美狠狠 | 综合激情五月综合激情五月激情1 | 中文字幕乱码中文乱码51精品 | 捆绑白丝粉色jk震动捧喷白浆 | 装睡被陌生人摸出水好爽 | 亚洲欧洲日本无在线码 | 熟妇人妻中文av无码 | 国产精品亚洲五月天高清 | 未满成年国产在线观看 | 国产人妻人伦精品 | 亚洲日韩av一区二区三区四区 | 久久亚洲日韩精品一区二区三区 | 国产艳妇av在线观看果冻传媒 | 99久久精品日本一区二区免费 | 午夜肉伦伦影院 | 国产成人综合在线女婷五月99播放 | 97夜夜澡人人爽人人喊中国片 | 色综合久久久久综合一本到桃花网 | 日本熟妇乱子伦xxxx | 水蜜桃色314在线观看 | 最近的中文字幕在线看视频 | 亚洲毛片av日韩av无码 | 对白脏话肉麻粗话av | 老子影院午夜精品无码 | 18黄暴禁片在线观看 | 99久久精品午夜一区二区 | 97se亚洲精品一区 | 乱中年女人伦av三区 | 日本肉体xxxx裸交 | 青春草在线视频免费观看 | a在线亚洲男人的天堂 | 大胆欧美熟妇xx | 性做久久久久久久免费看 | 中文字幕日韩精品一区二区三区 | 国产精品沙发午睡系列 | 国产av无码专区亚洲awww | 午夜精品一区二区三区在线观看 | 麻豆人妻少妇精品无码专区 | 久久99久久99精品中文字幕 | 国产明星裸体无码xxxx视频 | 国产超级va在线观看视频 | 国产精品18久久久久久麻辣 | 久久国产精品_国产精品 | 亚洲国产精品久久久久久 | 国产sm调教视频在线观看 | 亚洲午夜久久久影院 | 欧美怡红院免费全部视频 | 精品欧洲av无码一区二区三区 | 99麻豆久久久国产精品免费 | www一区二区www免费 | 国产午夜福利100集发布 | 99国产欧美久久久精品 | 欧美日韩一区二区免费视频 | 中文字幕人妻无码一夲道 | 1000部夫妻午夜免费 | 国产内射老熟女aaaa | 丰满护士巨好爽好大乳 | 久久综合给合久久狠狠狠97色 | 亚洲午夜福利在线观看 | 大色综合色综合网站 | 蜜桃视频插满18在线观看 | 国产精品免费大片 | 久久午夜夜伦鲁鲁片无码免费 | 大地资源中文第3页 | 国产精品久久国产精品99 | www成人国产高清内射 | 久久无码人妻影院 | 日韩少妇白浆无码系列 | 麻豆国产丝袜白领秘书在线观看 | 久久久久免费看成人影片 | 亚洲综合精品香蕉久久网 | 国产亚av手机在线观看 | 中文字幕人妻无码一区二区三区 | 欧美日韩人成综合在线播放 | 桃花色综合影院 | 国产卡一卡二卡三 | 婷婷色婷婷开心五月四房播播 | 久久精品一区二区三区四区 | 精品偷拍一区二区三区在线看 | 国产人成高清在线视频99最全资源 | 色偷偷人人澡人人爽人人模 | 日日碰狠狠躁久久躁蜜桃 | 国产精品99久久精品爆乳 | 久久久久久久人妻无码中文字幕爆 | 中文字幕无码热在线视频 | 色五月五月丁香亚洲综合网 | 色欲久久久天天天综合网精品 | 国产精品美女久久久网av | 少妇无套内谢久久久久 | 久久久无码中文字幕久... | 欧美黑人乱大交 | 精品国产精品久久一区免费式 | www国产精品内射老师 | 国产午夜无码视频在线观看 | 亚洲日韩精品欧美一区二区 | 久久精品人人做人人综合试看 | 亚洲精品午夜国产va久久成人 | 免费人成在线观看网站 | 日日噜噜噜噜夜夜爽亚洲精品 | 蜜桃臀无码内射一区二区三区 | 亚洲欧美国产精品久久 | 无套内射视频囯产 | 中文无码成人免费视频在线观看 | 亚洲区小说区激情区图片区 | 久久精品人人做人人综合试看 | 少妇性荡欲午夜性开放视频剧场 | 国产精品久久久av久久久 | 国产精品国产三级国产专播 | 亚洲天堂2017无码 | 国产成人午夜福利在线播放 | 精品国偷自产在线视频 | 精品国产成人一区二区三区 | 国产精品永久免费视频 | 日韩无套无码精品 | 国产精品久久久午夜夜伦鲁鲁 | 精品久久综合1区2区3区激情 | 国产精品国产三级国产专播 | 国产成人精品三级麻豆 | 波多野结衣av在线观看 | 国产精品久久国产精品99 | 18禁黄网站男男禁片免费观看 | 久久亚洲日韩精品一区二区三区 | 亚洲色欲色欲欲www在线 | 国产人成高清在线视频99最全资源 | 成人亚洲精品久久久久软件 | 国产午夜手机精彩视频 | 麻豆果冻传媒2021精品传媒一区下载 | 色欲久久久天天天综合网精品 | 九九综合va免费看 | 久久熟妇人妻午夜寂寞影院 | 国产av人人夜夜澡人人爽麻豆 | 亚洲区欧美区综合区自拍区 | 亚洲七七久久桃花影院 | 在线成人www免费观看视频 | 久久精品国产亚洲精品 | 欧美真人作爱免费视频 | 色情久久久av熟女人妻网站 | 久久久久久久久蜜桃 | 一个人看的视频www在线 | aⅴ亚洲 日韩 色 图网站 播放 | 国产深夜福利视频在线 | 激情爆乳一区二区三区 | 少妇一晚三次一区二区三区 | 中文字幕av伊人av无码av | 三级4级全黄60分钟 | 亚洲啪av永久无码精品放毛片 | 久久99精品国产.久久久久 | 亚洲色偷偷偷综合网 | 女人和拘做爰正片视频 | 无遮挡啪啪摇乳动态图 | 性欧美videos高清精品 | 少妇无码av无码专区在线观看 | 亚洲aⅴ无码成人网站国产app | 欧美成人免费全部网站 | 午夜福利一区二区三区在线观看 | 久久国内精品自在自线 | 夜夜夜高潮夜夜爽夜夜爰爰 | 久久久国产精品无码免费专区 | 国产人妖乱国产精品人妖 | 精品无码国产一区二区三区av | 成人免费视频在线观看 | 国产成人一区二区三区在线观看 | 成人影院yy111111在线观看 | 精品人妻人人做人人爽 | 无码人妻丰满熟妇区毛片18 | 国产av久久久久精东av | 无码一区二区三区在线 | 亚洲天堂2017无码中文 | 中文字幕无码日韩专区 | 欧美放荡的少妇 | 久久伊人色av天堂九九小黄鸭 | 少妇人妻偷人精品无码视频 | 中文字幕 人妻熟女 | 国产美女极度色诱视频www | 永久黄网站色视频免费直播 | 亚洲国产成人av在线观看 | 中国女人内谢69xxxxxa片 | 亚洲热妇无码av在线播放 | 亚洲经典千人经典日产 | 国产无av码在线观看 | 国产亚洲欧美日韩亚洲中文色 | 在线亚洲高清揄拍自拍一品区 | 在线视频网站www色 | 成人亚洲精品久久久久软件 | 免费中文字幕日韩欧美 | 人人超人人超碰超国产 | 四虎4hu永久免费 | 精品成在人线av无码免费看 | 亚洲国产成人a精品不卡在线 | 欧美真人作爱免费视频 | 窝窝午夜理论片影院 | 国产成人av免费观看 | 波多野结衣av在线观看 | 好男人www社区 | 偷窥日本少妇撒尿chinese | 少女韩国电视剧在线观看完整 | 一本久久伊人热热精品中文字幕 | 一本久久a久久精品vr综合 | 亚洲中文无码av永久不收费 | 午夜性刺激在线视频免费 | 在线观看国产午夜福利片 | 麻豆果冻传媒2021精品传媒一区下载 | 日韩欧美中文字幕在线三区 | 99riav国产精品视频 | 色噜噜亚洲男人的天堂 | 精品无码国产自产拍在线观看蜜 | 人妻有码中文字幕在线 | 麻豆国产人妻欲求不满 | 国产精品99爱免费视频 | 国产成人亚洲综合无码 | 亚洲理论电影在线观看 | 欧美日韩人成综合在线播放 | 少妇人妻av毛片在线看 | 亚洲小说春色综合另类 | 国产精品18久久久久久麻辣 | 亚洲第一无码av无码专区 | 高清不卡一区二区三区 | 亚洲娇小与黑人巨大交 | 国产69精品久久久久app下载 | 88国产精品欧美一区二区三区 | 成人无码视频在线观看网站 | 欧美丰满熟妇xxxx性ppx人交 | 日日干夜夜干 | 中文字幕中文有码在线 | 欧美午夜特黄aaaaaa片 | 欧美丰满熟妇xxxx | 久久久精品人妻久久影视 | 欧美国产日韩久久mv | 亚洲色偷偷男人的天堂 | 强伦人妻一区二区三区视频18 | 成人三级无码视频在线观看 | 人人妻人人澡人人爽人人精品 | 精品厕所偷拍各类美女tp嘘嘘 | 野外少妇愉情中文字幕 | 老头边吃奶边弄进去呻吟 | 青青青手机频在线观看 | 亚洲爆乳无码专区 | 成人精品视频一区二区 | 日本乱偷人妻中文字幕 | 樱花草在线播放免费中文 | 国内丰满熟女出轨videos | 久久99精品久久久久婷婷 | 白嫩日本少妇做爰 | 国产精品久免费的黄网站 | 伦伦影院午夜理论片 | 成人精品天堂一区二区三区 | 亚洲精品国产精品乱码视色 | 亚洲欧洲无卡二区视頻 | 国产乱子伦视频在线播放 | 亚洲精品www久久久 | √8天堂资源地址中文在线 | 欧美精品在线观看 | 露脸叫床粗话东北少妇 | 麻豆蜜桃av蜜臀av色欲av | 理论片87福利理论电影 | 免费无码肉片在线观看 | 亚洲精品国产第一综合99久久 | 国产高清不卡无码视频 | 国产办公室秘书无码精品99 | 无码人妻精品一区二区三区下载 | 国产精品办公室沙发 | 我要看www免费看插插视频 | 国产亚洲日韩欧美另类第八页 | 亚洲精品午夜国产va久久成人 | 国产人妻人伦精品 | 草草网站影院白丝内射 | 日本精品人妻无码免费大全 | 国产精品久免费的黄网站 | 精品久久久久久人妻无码中文字幕 | 亚洲精品国产品国语在线观看 | 亚洲欧美精品伊人久久 | 九九久久精品国产免费看小说 | 中文字幕无线码 | 国产国语老龄妇女a片 | 成在人线av无码免观看麻豆 | 国产精品亚洲五月天高清 | 国产精品无码一区二区三区不卡 | 人人爽人人澡人人人妻 | 亚洲人交乣女bbw | 亚洲爆乳大丰满无码专区 | 无码免费一区二区三区 | 日韩人妻系列无码专区 | 99国产欧美久久久精品 | 无码人妻av免费一区二区三区 | 四十如虎的丰满熟妇啪啪 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 国产av一区二区精品久久凹凸 | 水蜜桃亚洲一二三四在线 | 免费观看黄网站 | 欧美日韩亚洲国产精品 | 亚洲精品成人福利网站 | 麻豆av传媒蜜桃天美传媒 | 亚洲精品一区国产 | 内射老妇bbwx0c0ck | 日韩人妻无码一区二区三区久久99 | 大屁股大乳丰满人妻 | 麻豆果冻传媒2021精品传媒一区下载 | 亚洲爆乳精品无码一区二区三区 | 曰韩无码二三区中文字幕 | 久久精品女人的天堂av | 又大又硬又黄的免费视频 | 国内精品久久毛片一区二区 | 精品亚洲成av人在线观看 | 亚洲成a人片在线观看日本 | 成年美女黄网站色大免费视频 | 国产av无码专区亚洲a∨毛片 | 精品偷自拍另类在线观看 | 漂亮人妻洗澡被公强 日日躁 | 亚洲国产欧美国产综合一区 | 中文字幕乱码中文乱码51精品 | 精品乱子伦一区二区三区 | 99久久精品午夜一区二区 | 欧美日本免费一区二区三区 | 人人爽人人爽人人片av亚洲 | 精品国偷自产在线视频 | 国产又粗又硬又大爽黄老大爷视 | 中文毛片无遮挡高清免费 | 国产无遮挡吃胸膜奶免费看 | 色婷婷综合中文久久一本 | 亚洲色无码一区二区三区 | 亚洲爆乳无码专区 | 亚洲色偷偷男人的天堂 | 5858s亚洲色大成网站www | 人妻人人添人妻人人爱 | 国内精品人妻无码久久久影院蜜桃 | 精品久久久无码中文字幕 | 18黄暴禁片在线观看 | 国产免费久久久久久无码 | 少妇人妻偷人精品无码视频 | 久久精品一区二区三区四区 | 秋霞成人午夜鲁丝一区二区三区 | 成人无码精品一区二区三区 | 丝袜足控一区二区三区 | 国产日产欧产精品精品app | 国产区女主播在线观看 | 免费人成在线观看网站 | 日韩精品一区二区av在线 | 亚洲区欧美区综合区自拍区 | 丰满少妇人妻久久久久久 | 青春草在线视频免费观看 | 国产农村妇女高潮大叫 | 欧美freesex黑人又粗又大 | 国产免费久久久久久无码 | 免费看男女做好爽好硬视频 | 日韩无套无码精品 | 欧美成人午夜精品久久久 | аⅴ资源天堂资源库在线 | 日本一本二本三区免费 | 精品少妇爆乳无码av无码专区 | 成人精品天堂一区二区三区 | 亚洲高清偷拍一区二区三区 | 激情内射亚州一区二区三区爱妻 | 亚洲中文字幕无码中字 | 波多野结衣av一区二区全免费观看 | 中文亚洲成a人片在线观看 | 大乳丰满人妻中文字幕日本 | 色婷婷香蕉在线一区二区 | 国产人妻精品一区二区三区 | 亚洲中文字幕成人无码 | 99久久久国产精品无码免费 | 性史性农村dvd毛片 | 99视频精品全部免费免费观看 | 97se亚洲精品一区 | 国产精品免费大片 | 久久亚洲a片com人成 | 国产精品久免费的黄网站 | 亚洲国产综合无码一区 | 55夜色66夜色国产精品视频 | 88国产精品欧美一区二区三区 | 久久99精品久久久久久 | 性生交片免费无码看人 | 久久久久99精品国产片 | 无码午夜成人1000部免费视频 | 国产精品亚洲五月天高清 | 国产电影无码午夜在线播放 | 国产手机在线αⅴ片无码观看 | 久久99精品久久久久久动态图 | 国产明星裸体无码xxxx视频 | 国产真实伦对白全集 | 国产莉萝无码av在线播放 | 国产精品亚洲专区无码不卡 | 九九久久精品国产免费看小说 | 熟妇人妻激情偷爽文 | 久久午夜夜伦鲁鲁片无码免费 | 亚洲综合另类小说色区 | 露脸叫床粗话东北少妇 | 亚洲天堂2017无码中文 | av小次郎收藏 | 麻豆国产人妻欲求不满 | 色狠狠av一区二区三区 | 综合激情五月综合激情五月激情1 | 亚洲自偷自偷在线制服 | 少妇被粗大的猛进出69影院 | 欧美国产亚洲日韩在线二区 | 亚洲精品一区二区三区大桥未久 | 大地资源网第二页免费观看 | 中文字幕无线码免费人妻 | 亚洲一区二区三区含羞草 | 人妻天天爽夜夜爽一区二区 | 国产午夜福利100集发布 | 日韩精品无码免费一区二区三区 | 精品日本一区二区三区在线观看 | 亚洲毛片av日韩av无码 | 亚洲精品久久久久久一区二区 | 在线天堂新版最新版在线8 | 欧美 丝袜 自拍 制服 另类 | 玩弄人妻少妇500系列视频 | 樱花草在线播放免费中文 | 日日摸夜夜摸狠狠摸婷婷 | 狠狠色噜噜狠狠狠狠7777米奇 | 国精产品一品二品国精品69xx | 丝袜人妻一区二区三区 | 强伦人妻一区二区三区视频18 | 国产精品人妻一区二区三区四 | 国产成人无码a区在线观看视频app | 亚洲国产日韩a在线播放 | 妺妺窝人体色www婷婷 | 午夜无码人妻av大片色欲 | 国产9 9在线 | 中文 | 欧美怡红院免费全部视频 | 成人无码影片精品久久久 | 熟妇人妻无乱码中文字幕 | 精品亚洲韩国一区二区三区 | 无码纯肉视频在线观看 | 国产成人无码a区在线观看视频app | 乱人伦中文视频在线观看 | 一本大道久久东京热无码av | 国产口爆吞精在线视频 | 欧美性生交活xxxxxdddd | 人人妻人人澡人人爽精品欧美 | 国产精品va在线播放 | 一区二区三区乱码在线 | 欧洲 | 国产激情一区二区三区 | 亚洲中文字幕无码中文字在线 | 台湾无码一区二区 | 欧美亚洲日韩国产人成在线播放 | 久久国产精品精品国产色婷婷 | 久久99精品久久久久久 | 国产高潮视频在线观看 | 国产一区二区三区日韩精品 | 无码人妻丰满熟妇区五十路百度 | 欧美freesex黑人又粗又大 | 国产成人精品必看 | 俺去俺来也www色官网 | 久久久久久a亚洲欧洲av冫 | 暴力强奷在线播放无码 | 亚洲国产欧美日韩精品一区二区三区 | 天堂а√在线地址中文在线 | 少妇邻居内射在线 | 人妻少妇被猛烈进入中文字幕 | 人人妻人人澡人人爽欧美一区 | 丰满人妻一区二区三区免费视频 | 亚洲精品国产品国语在线观看 | 真人与拘做受免费视频 | 人人超人人超碰超国产 | 亚洲综合无码久久精品综合 | 久久久中文字幕日本无吗 | 国产精品va在线播放 | 亚洲精品无码人妻无码 | 国产成人无码av一区二区 | 性史性农村dvd毛片 | 亚洲精品国产第一综合99久久 | 一个人免费观看的www视频 | 亚洲色在线无码国产精品不卡 | 国产精品久久久久久亚洲毛片 | 中文字幕人妻丝袜二区 | 草草网站影院白丝内射 | 老熟妇乱子伦牲交视频 | 性色av无码免费一区二区三区 | 国产亚洲精品久久久久久大师 | 国产激情综合五月久久 | 国产一区二区三区日韩精品 |