摘要: 由于腳本語言通常提供了更為簡潔的語法及Java所不具有的一些新的語言特性(如:閉包,元編程等),所以在一些情況下可以創造出比Java程序更具有可讀性的代碼。另外,眾多基于JVM的腳本語言也為與Java程序整合帶來了便利。
閱讀全文
摘要: 延續"DSL實現要點(1)"講解外部DSL的實現要點。
閱讀全文
摘要: DSL(domain-specific language)并不是什么新的概念和技術,但是目前它已成為了一個技術熱點,近期各種類型的技術交流或研討會上你都可以看到關于DSL的主題。DSL似乎也在一夜間成為了大師們關注的焦點(Martin Fowler,Eric Evans等等)。
應用DSL可以有效的提高系統的可維護性(縮小了實現模型和領域模型的距離,提高了實現的可讀性)和靈活性,并且提供開發的效率。
那么如何在我們的實踐中引入DSL呢,Martin Fowler就DSL實現模式做了全面的闡釋;在實際工作中作者實踐了部分Martin Fowler的模式,下文是作者對這些實踐的經驗總結,愿與大家分享。
根據實現方式的分類DSL可以大致分為內部DSL(Internal DSL)和外部DSL(Extern DSL), 作者在實際項目中實踐了這兩大類DSL,在系列文章中將分別共享各類型DSL的實現經驗。
閱讀全文