简介:在上一节《安全多方计算(MPC)从入门到精通:Frutta语言》中,已经介绍了Frutta语言语法相关的内容,在本节中,我们将介绍JUGO-IDE及SDK。
1.什么是JUGO-IDE
JUGO-IDE是JUGO技术产品面向开发者提供的用来编写MPC算法的开发工具,结合Frutta谷歌浏览器插件,开发者无需搭建任何环境就可以快速编写、编译、运行和发布算法。
通过使用JUGO-IDE,开发者可使用Frutta语言编写算法,并通过JUGO-IDE编译成可在JUGO技术产品上执行的电路文件和java模板文件。https://jugo.juzix.net/ide/
2.支持语言
Frutta语言。
Frutta作为类C的高级语言,可以将编写的计算逻辑在JUGO-IDE生成电路文件和java模板文件,并在JUGO技术产品中执行计算。https://jugo.juzix.net/api_document/frutta/frutta.html
3开发环境
操作系统windows(后续支持linux),chrome浏览器(需先安装Frutta谷歌浏览器插件)
第一步,请点击下载Frutta谷歌浏览器插件的安装包https://jugo.juzix.net/file/PLUGIN.tar.gz,并在本地解压。
第二步,在Chrome浏览器地址栏输入chrome://extensions/,启用开发者模式,然后点击按钮“加载已解压的扩展程序”,选择插件所在的文件夹即可。
注意:由于该插件暂未上传Google插件商店,所以只能以开发者模式运行。打开chrome://extensions/,如下图示开启开发者模式。由于是以开发者模式运行该插件的,Chrome浏览器会弹出“请停用以开发者模式运行的扩展程序”的提示,此时点击“取消”才可以继续使用Frutta谷歌浏览器插件。
一、界面
1.启动页
1)JUGO-IDE启动页默认包含一个欢迎页和一个算法工程,开发者可根据需要进行增删。
2)开发者在未登录JUGO技术产品的情况下首次进入JUGO-IDE启动页的时候,即会自动弹出登录弹窗,提供了登录、忘记密码、注册等功能入口。开发者登录后才可以使用JUGO-IDE提供的访问算法库、发布算法的功能。当然,开发者也可以点击“暂不登录”关闭该登录弹窗继续使用MPC-IDE,不会对工程编译等功能造成影响。
3)JUGO-IDE启动时,编辑区默认打开JUGO-IDE欢迎页,该页面中提供了JUGO-IDE、Frutta、JUGO技术产品、MPC的简单介绍和详情页面链接,开发者可以点击“详情”去往详情页面进行深入了解。
2.菜单栏
1)文件管理
功能描述:提供“新建工程、新建文件、导入本地文件、导出到本地、保存当前文件、保存所有文件、删除当前文件”等功能。
操作示例:
- 新建工程:点击头部“工具栏文件--新建工程”,会弹窗创建算法工程弹窗,开发者输入算法名称后,即在当前文件管理器中新建一个算法工程。
![](https://i-blog.csdnimg.cn/blog_migrate/7e3fc217418e8ead4393c5aa6e1ed09d.png)
- 算法工程目录结构:
- libraries: 引用的算法存放目录;
- bin: 当前算法工程编译成功生成的java模板文件的存放目录;
- Include: 算法工程头文件存放目录;
- Resource: 算法工程源文件存放目录;
- main.wir: 当前算法工程入口文件
注意:当前算法工程的编译入口文件为“main.wir”。 如果选中其它文件点击编译,JUGO-IDE会自动定位到当前选中文件所属的算法工程,并编译该算法工程中的“main.wir”。如果需要编译其它文件,需要在“main.wir”中引入该文件后再点击“编译”。
- 新建文件:点击头部“工具栏文件--新建文件”,即在当前工程目录下新建一个Untitled1.wir文件,并自动在编辑区打开。
功能限制:IDE当前文件系统中至少有一个工程。
- 导入本地文件:点击头部工具栏“文件--导入本地文件”,选择某一文件后该文件即被导入进JUGO-IDE文件管理器,并自动在编辑区打开。
功能限制:IDE当前文件系统中至少有一个工程。
- 导出到本地:点击头部工具栏“文件--导出到本地”,会将IDE中当前选中的文件或文件夹导出到本地,文件夹的格式为“文件夹名”.rar,文件的格式和当前选中的文件在IDE中的格式保持一致。
功能限制:需要在IDE中选中文件或文件夹。
- 保存/全部保存:点击头部工具栏“文件--保存”,会保存当前文件;点击头部工具栏“文件--全部保存”,会保存文件管理器中的所有文件;
功能限制:当前窗口中有需要保存的文件
- 删除:点击头部工具栏“文件--删除”,会删除当前编辑区窗口打开的文件;
功能限制:当前有选中的文件
2)编辑操作
功能描述:提供对当前文件“撤销、恢复、复制、剪切、粘贴、查找、替换、格 式化、在文件中查找、在文件中替换”等常规功能。
操作示例:
在文件中查找/替换:点击头部工具栏“编辑--在文件中查找/替换”,左侧边栏会弹出搜索窗口,实现全局关键字的查找/替换功能。
功能限制:当前编辑区窗口中有打开的文件
3)帮助
功能描述:提供对操作员的帮助文档。
操作示例:
- 欢迎使用:点击头部工具栏“帮助--欢迎使用”,即会回到JIDE的欢迎页面,该页面中提供了JIDE的简介及使用的大致流程。
- 帮助文档:点击头部工具栏“帮助--帮助文档”,即会跳转到JUGO技术产品的文档中心,文档中心中包含了比较详细的开发流程。
![](https://i-blog.csdnimg.cn/blog_migrate/d86846678f10c72a9ea95a882cee74cc.png)
3.工具栏
1)文件管理