-
什麼叫API整潔?
- 能夠讓讀者清楚的知道在代碼中發生了什麼(選擇良好的名稱和概念)
- 代碼需要看起來整潔,極少使用浮誇的代碼且不存在冗餘的語法
-
領域特定語言的概念
- 通用編程語言(解決幾乎所有能被計算機解決的問題);領域特定語言(專注在特定任務,或者說領域上,並放棄與該領域無關的功能)
- 最常用的DSL語言:SQL & 正則表達式
- DSL趨向於聲明式(描述了想要的結果並將執行的細節留給瞭解釋它的引擎)
- 內部DSL : 用通用編程語言編寫的程序的一部分,使用了和通用編程語言完全一致的語法
-
帶接收者的lambda
-
使用invoke約定構建更靈活的代碼塊嵌套
概念:使用與常規方法調用語法不同的,更簡潔的符號,調用有着特殊命名的函數。
舉例:get,它允許通過下標來訪問一個對象 foo.get(bar) -> foo[bar]
使用:類如果定義了使用operator修飾符的invoke方法,就可以被當作函數一樣調用
注意:lambda除非是內聯的,否則都是被編譯成呢實現函數式接口(Function1等)的類,而這些接口定義了具有對應數量參數的invoke方法
DSL中的Invoke約束
gradle配置模塊依賴
DSL構建:領域特定語言
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.