罗兰在MATLAB的艺术

把想法变成MATLAB

MATLAB应用程序状态的建筑

在旅途中,我遇到很多客户,他们总是有兴趣学习新的MATLAB特性和功能。有很多感兴趣的一个领域是MATLAB应用程序构建。许多MATLAB用户感兴趣的应用程序设计师,指南,和未来的两个应用程序构建平台。对于这个博客,我想把其中的一些问题,克里斯•门户开发经理MATLAB图形与应用建设,大卫驻军,MATLAB产品经理。

内容

在MATLAB应用程序的当前状态是什么建筑?

CP:目前MATLAB提供两个平台来构建应用程序,指导和应用程序设计师。指南是一个年长的MATLAB平台,用户已经使用很多年了。虽然用户可以构建应用程序的不同程度的复杂性与指南,它遭遇了一系列工作流和可用性问题我们已经为我们的用户想要地址。同样,它所支持的组件集,这是主要的金宝appuicontrol集,也是非常有限的,基于一些遗留的技术。

DG:在R2016a我们介绍了应用设计师为我们的新应用构建平台。程序设计师集成构建应用程序的两个任务,制定行为的可视化组件和编程。它有一个新的设计画布,让它更容易添加组件和使用标签和面板来组织它们。它包括一个内置的编辑器生成的代码管理组件的只读部分和为用户编写回调提供可编辑的部分代码。它还支持一个新的金宝app家庭的标准组件如编辑字段、按钮、纺纱、仪表、旋钮、开关、和用于创建仪器面板灯。

为什么MathWorks开发一个全新的应用程序构建平台?

CP:指导和应用设计师之间的主要区别是所使用的技术。指南是基于Java Swing不再被甲骨文公司积极发展。建立在它允许一些短期胜利,但这并不会相应减少长期或允许我们为我们的用户提供基于web的工作流。程序设计是建立在现代网络技术如JavaScript、HTML和CSS,给我们一个平台的灵活性跟上我们的用户的要求,允许应用程序在web上运行。用户可以保持他们现有的基于java的应用程序运行,选择选择新平台的时候是正确的。

如何应用设计师比较指导?

DG:当我们在R2016a引入应用程序设计师,它提供了一个现代和用户友好的环境布置你的应用,解决了几个可用性问题指南。然而,最初几个版本,软件设计师有一些功能差距对指南。常见的组件失踪,MATLAB图形支持是有限的,和性能没有规模对于大型应用程序。金宝app每一个版本,我们已经关闭这些差距和解决性能问题。R2018a,软件设计师支持几乎所有MATLAB与锅2金宝app d和3 d可视化,缩放,旋转交互性;菜单添加了金宝app支持以及新树和日期选择器组件;代码编辑器是可以扩展构建大型应用程序。

CP:另一个显著的区别是编码模型。MATLAB应用程序设计师生成一个类的应用程序,使其更容易程序回调函数和应用程序的不同部分之间共享数据的方式比导游不容易出错。这意味着您不再需要更新处理结构,或了解何时使用guidata的微妙之处和appdata与用户数据。新的MATLAB接口也被引入了专门为每个组件。这些新的接口更容易老程序和改进uicontrol组件使用的指南。

这是什么意思的未来指导和应用程序用户建立了吗?

DG:我们知道许多MATLAB用户有时间和知识产权投资基于向导的应用程序或应用程序以编程方式创建。我们将继续支持指南及其相关组件和目前没有金宝app计划关闭或删除任何功能。不像其他的MATLAB过渡,指导和程序设计者可以共存,这使我们和我们的用户通过过渡通过一系列的版本。我们现在关注提高应用程序设计师以确保它可以MATLAB应用工程师的需求并帮助指导用户采用。

CP:为此,我们已经发布了指南为MATLAB应用程序设计师迁移工具在R2018a放松的过程将基于向导的应用程序转换为应用程序设计师。该工具会自动创建一个应用程序设计师应用相同的布局指南应用,应用必要的组件配置,和回调代码复制指南。从那里,您更新回调代码让它兼容新的程序设计代码的格式。为了帮助用户提供这一步,工具生成一份报告,描述了如何进行代码更新,并提供了一些限制的解决方案。您可以下载文件交换的工具MATLAB中央或附加Explorer的MATLAB桌面。

用户创建他们的应用程序以编程方式呢?

DG:我们知道一些用户选择不使用一个交互式的环境像指南或应用程序设计师,他们更愿意在MATLAB中创建他们的应用程序以编程方式。您可以继续手工编写应用程序无论您使用的组件集,无论是老uicontrol函数,或者更新的组件集R2016a以来我们一直在扩大。

应用程序使用Java扩展呢?

CP:这些用户使用Java Swing扩展他们的应用程序的功能包括使用javacomponent函数来添加自定义组件。他们需要做这个我们不支持集成组件标签,树木,和日期选择器、和自定义组件之外是什么记录,包括丰富的单元级别格式表。金宝app其他使用了非法JavaFrame财产做图窗口最大化或最小化。在一些情况下,用户直接利用Java Swing为了利用诸如Java构建IDE-like布局管理器应用程序。程序设计师给了我们一个基础为我们的用户解决这些长期存在的差距。程序设计师已经添加缺失的组件的支持和加强现有的。金宝app我们有很多排队的特性,将帮助Java Swing的桥梁,并使我们所有的MATLAB用户建立更复杂的应用程序。

DG:我们一直在积极调查用户理解它们是如何使用Java扩展他们的应用程序。我们听到的反馈直接影响团队的工作。例如,在我们的调查JavaFrame使用,我们发现其使用的首要原因是图以编程方式最大化或最小化窗口。我们添加了记录在R2018a支持这一点。金宝app我们还增加了uitree从我们的调查回应反馈javacomponent使用。我们的计划是每个版本的MATLAB解决一些差距,使得用户去Java,所以我们鼓励用户填写这些调查。最后,我们意识到一些用户可能需要专门的组件,可能对于大多数应用程序优先级低的建筑商。为了解决这个问题,我们也在研究方法提供一个记录解决方案集成第三方JavaScript组件在MATLAB应用程序。

用户把他们的应用程序Web如何?

DG:有一些方法可以做到这一点。一个是通过使用MATLAB在线。MATLAB在网上让你在桌面浏览器中运行MATLAB从任何计算机访问互联网。MATLAB在线可用选择许可证。检查你的资格在这里。您创建一个应用程序使用MATLAB的桌面版本并将其保存到您的MATLAB开车。在web浏览器中运行应用程序,用MATLAB在网上你的MathWorks账户登录matlab.mathworks.com。您可以使用MATLAB开车很容易与别人分享你的应用程序访问在线MATLAB。

CP:另一种方法是使用MATLAB编译器。R2018a, MATLAB编译器引入了一个新功能,允许您打包应用程序设计师应用程序作为一个web应用程序。你在桌面创建应用程序,包它为web使用MATLAB编译器和编译后的程序复制到MATLAB web应用服务器设置,也提供了MATLAB编译器。这导致了一个URL,可以在web浏览器中访问的人都访问到服务器。好处是任何人都可以在浏览器中运行应用程序,即使他们不是MATLAB用户。这种方法非常适合分享应用程序内部,同事通过web浏览器访问。

用户如何决定哪些应用平台建设是正确的?

DG:我们建议用户从应用程序设计为所有新的应用程序,除非应用程序需要运行在MATLAB R2016a之前的一个版本。这个平台我们不断加强和扩大与每个版本。我们还认为许多用户将受益于他们的指导应用程序迁移到应用程序设计师克里斯提到使用迁移工具。移民会使您的应用程序更现代的外观和将有可能部署Web应用程序。

CP:用户可能会考虑继续使用指南有以下原因:

  • 迁移工具突显出一个至关重要的限制应用的工作流和不能工作。
  • 应用程序需要运行在旧版本的MATLAB程序之前在R2016a设计师的发布。
  • 应用程序依赖于非法的使用Java不支持功能,软件设计师。金宝app

LS:嗯,我认为这是。谢谢你和我的读者分享这宝贵的信息。

你在MATLAB建立应用程序如何?

你试过应用程序设计师?让我们知道在这里




发表与MATLAB®R2018a

|

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。