写点什么

使用 Gemini 构建自己的 IDE

  • 2013-06-26
  • 本文字数:629 字

    阅读完需:约 2 分钟

你的项目中的领域特定语言是否需要自己的 IDE? Visual Studio Shell 是选择之一,但是过于庞大不易部署,而且很难使用。Tim Jones 的 Gemini 框架是一个轻量级替代方案。

Gemini 基于一组松散耦合的模块,开发者可以根据需求的变化来替换这些模块。开发者可以直接使用下面这些标准组件

  • Shell
  • MainMenu(主菜单)
  • StatusBar(状态栏)
  • ToolBars(工具栏)
  • Toolbox(工具箱)
  • UndoRedo(撤销 / 恢复)

这些组件依赖于 AvalonDock Caliburn Micro 和 MEF。

还有一些可选的模块,而且每个模块都有自己的 NuGet 包:

  • CodeCompiler(代码编译器):用于和 C#代码一起工作,它依赖于 Roslyn 编译器。
  • CodeEditor(代码编辑器):面向 C#源代码,它基于 AvalonEdit
  • ErrorList(错误列表):通用的错误列表。
  • GraphEditor(图形编辑器):通用的图形 / 节点编辑界面。
  • Inspector(检查器):类似于属性网格,但是“允许每个编辑器定制自己的视图”。
  • Inspector.Xna:Inspector views for 用于 Xna 数据类型的检查器视图。
  • Output(输出):通用输出窗口。
  • PropertyGrid(属性网格):标准的属性网格布局。
  • Xna:用于处理 XNA 内容的工具。

Gemini 基于 Apache 2 许可证发布,源代码可以从 GitHub 上获取。Tim Jones 目前已将其应用到了自己的 3 款工具中:

  • Meshellator :面向.NET 4.0 的 3D 资源导入库,支持 Autodesk 3DS 和 Lightwave OBJ 等格式。
  • Rasterizr
  • SlimShader :一款 Direct3D 着色程序字节码解析器,有.NET 版本和 C++ 版本。

查看英文原文: Build Your Own IDE with Gemini

2013-06-26 08:512862
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 137.7 次阅读, 收获喜欢 35 次。

关注

评论

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

死磕Java并发编程(6):从源码分析清楚AQS

Seven七哥

Java Java并发 并发编程 AQS

【SpringBoot】为什么我的定时任务不执行?

遇见

Java Spring Boot 定时任务 debug

软件世界中的个人英雄与团队协作

王泰

团队管理 软件工程 团队协作

dubbo-go 中如何实现路由策略功能

joe

Apache 开源 微服务 dubbo Go 语言

回"疫"录(1):口罩危机也许是一种进步

小天同学

疫情 回忆录 现实纪录

太慢是不行的

池建强

创业 产品

个人知识管理精进指南

非著名程序员

学习 读书笔记 知识管理 认知提升

有关Kotlin Companion 我们需要了解到的几个知识点

王泰

Java 编程 kotlin 编程语言

【SpringBoot】为什么我的 CommandLineRunner 不 run ?

遇见

Java Spring Boot

如何画一个闹钟

池建强

视觉笔记

Facebook在用户增长到5亿时的扩容策略

Rayjun

团队管理 扩容

揭秘|为何程序员们能一直保持高收入?

丁长老

学习 程序员 写作 高薪

【SpringBoot】给你的 CommandLineRunner 排个序

遇见

Java Spring Boot

Disruptor为何这么快

Rayjun

Java Disruptor

回"疫"录(2):不知者无畏

小天同学

疫情 回忆录 现实纪录

过滤数组中重复元素,你知道最优方案吗?

麦洛

数据结构 数组 数组去重

Nginx代理Oracle数据库连接

遇见

MySQL nginx oracle 反向代理

理性主义和实证主义

王泰

理性主义 实证主义 哲学 软件工程

软件工程的史前时代 -- Therac-25 事件

王泰

质量管理 软件工程 软件危机 软件测试

程序员陪娃看绘本之启示

孙苏勇

程序员 生活 读书 成长 陪伴

用python爬虫保存美国农业部网站上的水果图片

遇见

Python GitHub 爬虫

我敢说 80% 的程序员都掉进了「老鼠赛跑」的陷阱

非著名程序员

读书笔记 程序员 程序人生 提升认知

终极 Shell

池建强

Linux Shell

最近的一些人生感悟

小智

人生 哲学

像经营咖啡店一样扩容 Web 系统

Rayjun

Web 扩容

死磕Java并发编程(3):volatile关键字不了解的赶紧看看

Seven七哥

Java Java并发 volatile

写作平台使用感受

小天同学

产品 体验 反馈

Zoom的加密算法,到底有什么问题?

X.F

算法 编码习惯 产品设计 安全 编程语言

常用手机软件清单

彭宏豪95

效率工具 App 手机 移动应用

关于HSTS - 强制浏览器使用HTTPS与服务器创建连接

遇见

https 安全 浏览器 TLS 证书

敏捷(组织)转型的6个准备条件

Bob Jiang

团队管理 敏捷 组织转型

使用Gemini构建自己的IDE_架构_Jonathan Allen_InfoQ精选文章