写点什么

使用 Xbase 定义通用的图形化视图

  • 2011-07-03
  • 本文字数:592 字

    阅读完需:约 2 分钟

Xbase 是 Xtext 的新组件。其创建者 Sven Efftinge在去年曾说过

Xbase 是采用 Xtext 实现的部分编程语言,其目标是嵌入到其他编程语言及使用 Xtext 编写的领域专用语言(DSL)中并进行扩展。

通常,DSL 需要表示一些基本的行为,但这些行为如果使用纯声明方式来实现就会麻烦至极。这也是外部 DSL 相对于内部 DSL 的一个缺陷。Xbase 旨在填补这个沟壑。但 Xbase 是为 Java 开发者设计的,并且该语言也绑定到了 JVM 上。Xbase 是静态类型的,支持泛型、闭包与类型推断。在 Xbase 中,万物皆为表达式:所有内容都有返回值。

上周,Xtext 的核心提交者及 ITemis 的软件架构师 Jan Koehnlein演示了可以使用 Xbase 快速创建模型的图形化表示。

Eclipse 生态圈的大多数图形框架都提供了图形编辑器。通常,语义模型通过硬转换能够映射到其图形化表示,无论是在代码(GEF、Graphiti)中抑或是模型与代码生成器(GMF、即将发布的 Spray 框架)。

他创建了两个使用 Xbase 的 Xtext 2.0 DSL。由于 Xbase 使用了 Java 的类型系统,因此我们可以轻松导航模型来创建图形化视图。该图形使用普通的 GEF 与 Zest 布局(Eclipse Visualization Toolkit)实现。

你可以在 Vimeo 上阅读 Xtext 团队发布的 Generic graph views configured with Xtext DSLs

你认为 Xbase 是否能够填补外部 DSL 的沟壑?你打算在 MDSD 项目上使用 Xbase 么?

查看英文原文: Using Xbase to Define a Generic Graphical View

2011-07-03 22:241724
用户头像

发布了 88 篇内容, 共 265.8 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

B站713事故后的多活容灾建设|TakinTalks大咖分享

TakinTalks稳定性社区

故障 稳定性保障

【刷题记录】22. 括号生成

WangNing

7月月更

OPPO 自研大规模知识图谱及其在数智工程中的应用

NebulaGraph

知识图谱 NebulaGraph

参数解析与跳石板

未见花闻

7月月更

客户案例 | 聚焦流程体验,助银行企业APP迭代

易观分析

银行 客户 银行app

中天钢铁在 GPS、 AIS 调度中使用 TDengine

TDengine

数据库 tdengine 时序数据库

第五届数字中国奖项出炉,昇腾人工智能融合赋能平台斩获十佳首展成果奖

Geek_2d6073

发评测赢好礼 | Serverless 函数计算征集令

阿里巴巴云原生

阿里云 Serverless 云原生

Web3.0 时代,基于P2PDB实现一款Dapp的技术理论

Rock-李益

dapp 去中心化 去中心化数据库 p2pdb

在灯塔工厂点亮5G,宁德时代抢先探路中国智造

脑极体

Mybatis中LRU缓存实现

Geek漫游指南

mybatis LRU mybatis源码

洋葱集团携手OceanBase实现分布式升级,全球数据首次实现跨云融合

OceanBase 数据库

聊聊css中文字的换行问题

南极一块修炼千年的大冰块

7月月更

企业数字化转型成大趋势,选对在线协作工具很重要

Baklib

企业内部信息碎片化该怎么办?不妨试试这样做

Baklib

SpringBoot应用使用Docker实现远程部署(保姆教程)

技术小生

Docker 7月月更

唠唠python的作用域,看看每个变量都为自己打下了多少江山

迷彩

Python 函数 作用域 7月月更

《TiDB 6.x in Action》发布,凝聚社区集体智慧的 6.x 实践汇总!

TiDB 社区干货传送门

数据库 分布式数据库 TiDB

ES6 类聊 JavaScript 设计模式之行为型(一)

devpoint

JavaScript 设计模式 ECMAScript 6 7月月更

提前批到底影不影响正式批?

KEY.L

7月月更

阿里云消息队列 Kafka-消息检索实践

阿里巴巴云原生

kafka 阿里云 云原生 检索 消息

Docker 安装 Minio 搭建属于自己的文件服务器

宁在春

Docker Minio 7月月更

MPLS基础知识概述

穿过生命散发芬芳

MPLS 7月月更

模块8(消息队列存储消息数据的mysql表格)

Geek_701557

客户案例|生学教育依托观测云打造可观测智慧教育新生态

观测云

低代码工具有哪些特色?明眼人都能看出来的低代码两大发展轨迹!

优秀

低代码 低代码平台

人工智能助力复工复产,模版 OCR 轻松搞定健康码识别

亚马逊云科技 (Amazon Web Services)

人工智能 Lambda

如何在github的pages部署hexo实现代码提交到仓库自动部署

娃娃菜

GitHub Pages 签约计划第三季

知识管理系统是什么?你需要知道这些

Geek_da0866

车联网的数据安全该怎么保护

Geek_99967b

小程序 物联网

Plato Farm有望通过Elephant Swap,进一步向外拓展生态

鳄鱼视界

使用Xbase定义通用的图形化视图_架构_Jean-Jacques Dubray_InfoQ精选文章