JetBrains Developer Advocate
JetBrains 技術傳教士,負責推廣 Kotlin 程式語言、IntelliJ IDEA 系列 IDE 及團隊合作解決方案,協助開發者善用工具輔助來提升生產力,同時維護程式碼品質。工作之餘也熱血經營技術社群,常在各社群及研討會裡出沒,歡迎拍打餵食。
DSL(Domain Specific Language)雖然看似抽象,但其易理解、高表達力的語法,讓其深植在各種開發工具鏈裡。而 Kotlin 做為一個現代語言,其精妙的語法設計,使其成為一個非常適合拿來實作 DSL 的工具。在這場分享裡,首先概述 DSL 的基本觀念,並重點介紹 Kotlin 語法裡適合用於設計 DSL 的部份。接著,會以 kotlinx.html 專案為例,逐步拆解與還原其實作,並示範如何與 Ktor 框架結合使用,快速建構動態網站。最後,會介紹數個以 Kotlin DSL 設計的經典案例,除了總結使用 Kotlin 設計 DSL 的優點外,也期能讓大家感受到 Kotlin DSL 之美。