表達式建構器
一個物件,或一組物件,提供一個流暢的介面,用於一般的指令查詢 API。
API 通常設計為提供物件上的一組獨立方法。理想情況下,這些方法可以個別理解。我稱這種風格的 API 為指令查詢 API;它非常普遍,以至於我們沒有通用的名稱。DSL 需要不同類型的 API,我稱之為流暢介面,其設計目標是整個表達式的可讀性。流暢介面會導致個別來看幾乎沒有意義的方法,而且經常違反良好的指令查詢 API 規則。
表達式建構器提供一個流暢介面,作為常規 API 上方的獨立層。這樣,您同時擁有兩種風格的介面,而且流暢介面明顯是孤立的,讓您更容易遵循。