GUIC前端抽象语言介绍
当今端技术框架可谓群龙并起,移动端原生态(Native)的IOS、Android、混合模式(Hybrid)的Ionic、Vue、React、Angular、及利用原生态的UI引擎Nativescript;桌面端的Bootstrap、Material Design等等等等。对于前端架构师来说很难从全方面衡量各种技术优劣,而对于前端开发人员更是迷茫,技术太多需要学的东西也就越多,而且各种新的前端技术还在应运而生。
GUIC就是为了对前端技术特点的一种抽象描述,它实际上是一种领域语言(DSL),先用一个例子介绍一下:
actions:page(text: "事项列表")<
actions_list:listview(text: "")<
note:label(text: ""),
complete:button(text: "完成")
>
>
先介绍一下它的语法:
标识:类型 (属性1: "属性值1", 属性2: "属性值2", ...) <
该容器元素下的子元素1,
该容器元素下的子元素2,
...
>
从语法理解非常简单易懂。其中,类型是对前端组件或者基本元素(当然也可以是自定义组件)的一种抽象描述,比如Bootstrap中的panel、Ionic中的listview、gridview等等。
这种语言有什么意义呢,我会在接下来的文章中结合元编程(Meta-Programming)来详细阐述其中的作用。