Umple Modelling Language(Umple 建模语言)
描述
这是各种 Umple 子项目和组件的主要项目。
Umple 是一种面向模型的编程技术,允许开发人员在传统代码中嵌入建模概念(例如 UML 关联、状态机)、模式、生成模板和其他抽象,反之亦然。它为 Java、C++ 和 PHP 以及图表、指标和许多其他工件生成高质量的代码。它既可以嵌入到上述语言中,也可以嵌入它们。
项目主页位于http://umple.org/
有关 Umple 的大量科学论文列于:http://publications.umple.org
开发过程
Umple 本身就是用自己开发的,可以保证鲁棒性;必须使用最新版本的编译器进行编译。有关开发设置,请参见Wiki:http://devsetup.umple.org
开发遵循模型驱动、测试驱动、敏捷、持续集成的过程。Umple 目前托管在 Github 上,网址为 http://code.umple.org。它于 2007 年首次发行。master 从 2011 年到 2015 年中期使用谷歌 Code, 2015年转移到 Github。
Umple 主要是由加拿大渥太华大学的众多博士和硕士学生开发的一个研究项目。许多来自加拿大和美国的本科生也通过 UCOSP 项目做出了贡献。有关贡献者列表,请参阅许可文件。http://license.umple.org
安装与下载
Umple 不一定需要下载,以下内容使您可以在任何 Web 浏览器中直接运行它:
- UmpleOnline: http://try.umple.org -- Umple GUI 版本的网站
- Docker: http://docker.umple.org -- 安装 Docker 映像以直接运行 GUI
您可以下载供命令行使用的 Java jar 或 Eclipse 插件:
- 下载页面:http://dl.umple.org -- 链接到最新的官方发行版和持续构建(命令行,Eclipse,Docker)
要在本地机器上运行,Umple 需要安装 Java(版本 8-13)。它可以在 Mac、Linux 和 Windows 上运行。
用法
Umple 是一种具有丰富语法的编程和建模语言。完整的文档和许多示例可以在以下位置找到:
- Umple 用户手册:http://manual.umple.org
其他关键链接
- Umple 主页:http://www.umple.org -- UMP 主页面,其中包含一组更全面的链接
-
- 所有 Umple 功能的完整文档
- 元模型(metamodel)的实时图:http://metamodel.umple.org
- 架构:http://architecture.umple.org
Umple一直在使用CruiseControl在渥太华大学进行测试和制造;参见http://cc.umple.org。它还基于Travis CI(http://travis.umple.org/)和Appveyor(https://appveyor.com/)构建。
Umple 在渥太华大学使用 CruiseControl 进行持续测试和建造;参见:http://cc.umple.org。它也建立在 Travis CI(http://travis.umple.org/)和 Appveyor(https://appveyor.com/)
)之上。
贡献
请在以下网址报告所有错误或改进请求:http://bugs.umple.org
要设置您的开发环境,请访问:http://devsetup.umple.org
有关贡献的更多详细信息,请参见:https://github.com/umple/umple/blob/master/CONTRIBUTING.md
许可
Umple 已获得 MIT 许可。见http://license.umple.org
致谢
许可证文件中列出了所有 Umple 开发人员,网址为 http://license.umple.org
已从 NSERC 和安大略研究基金获得了财政支持。IBM 支持了 Umple 的早期开发。 Google 和 Facebook 在 Umple 的开发过程中为学生旅行提供了支持。
目录内容
umple 项目分为许多较小的子项目。下面将说明文件夹层次结构,以更好地描述结构。
-
build/
- Ant 构建脚本和相关信息,包括用户手册原始数据
-
cruise.umple/ Umple compiler
- 有关更多详细信息,请参见其自己的 ReadMe.txt。
- 另请参见下面的 UmpleTo* 了解其他编译器组件
- cruise.umple.eclipse/, cruise.umple.xtext.ui/ Eclipse plugins
-
cruise.umplificator 将外部代码转换为 Umple
- cruise.umple.validator Validates umple when umplifying
- cruise.umple.nebula 用于实时 C++ 的基础结构
- dev-tools Umple 开发人员工具
-
dist 构建已生成的项目,仅在生成之后可用
- libs/ umple.jar 需要运行的托管构建依赖项*
- cruise.umple/reference 用户手册
- qa/ 测试报告
- umple.jar and umple.VERSION.jar 当前的命令行编译器
- umpledocs.VERSION.jar 用户手册生成器
- umplestats.VERSION.jar 统计生成
- umplesync.VERSION.jar UmpleOnline 工具来同步图形形式
- umplerun.VERSION.jar 驱动输入到单个 umple 程序的工具
- vml.VERSION.jar * 可变性建模扩展*
- umple.unit-test.jar 测试语言编译器
- umple.mutation.jar Umple 突变体生成器
- examples/ 开发人员精选的示例
- externalexamples/ 用于测试的外部项目
- ExternalTextEditorPlugins 外部编辑器插件,如 Notepad++ 等
- sandbox 在构建之前进行的小测试,以确保测试和编译工作正常
- testbed/, testbed_php/, testbed_ruby/ Test suites 分别针对 Java、Php 和 Ruby 的测试套件
- UmpleToJava/ Java 代码生成
- UmpleToPhp/ Php 代码生成
- UmpleToRuby/ Ruby 代码生成
- UmpleToRTCpp/ *C++ 代码生成*
- UmpleToSDL/ 将 Umple 转换为 SDL 的代码生成 (早期开发中)
- UmpleToSql/ 从 Umple 模型生成 SQL 代码
- UmpleToTest/ 用于抽象测试的代码生成
- UmpleToTemplate/ 可以为子项目公用的模板的位置
- UmpleTToJunit/ JUnit5 代码生成 -- 由 MTL 编译器使用
- UmpleTToPhpunit/ PhpUnit 代码生成 -- 由 MTL 编译器使用
- UmpleTToRubyunit/ RubyUnit 代码生成 -- 由 MTL 编译器使用
-
umpleonline/ The UmpleOnline Web 应用程序
- 允许直接在Web浏览器中从 Umple 生成代码,还可以图形和文本方式编辑 Umple。可在 http://try.umple.org
- Umplificator/ 反向工程代码为 Umple
- umplificatoronline/ 用于将代码转换为 Umple 的在线工具
-
umpleUI/ UIGU 工具项目
- 通过 UIGU 从 Umple 生成一个 UI 的项目。这些需要工作,以纳入到 UmpleOnline。
-
umplewww/ Umple.org 网页上的核心文件
- 包括诸如用户手册之类的项目,这些项目在构建时被移至适当的位置。
(The second edition revised by vz on 2020.08.02)