借助 MATLAB®,您可以重用以其他语言编写的既有代码,也可以创建基于 MATLAB 的响应式网站,还可以使用由 MATLAB 直接生成且正确无误的嵌入式 C 代码进行硬件编程。编程语言的差异不再是团队协作的障碍,他们可以投入更多的时间来开发产品,花费较少的时间来换用其他语言重新编码。
1、使用其他语言调用 MATLAB
借助 MATLAB 引擎 API,您可以在其他编程环境中使用 MATLAB。这些 API 支持使用其他编程语言执行 MATLAB 命令,而不必发起 MATLAB 桌面会话。目前已有针对以下语言的 MATLAB 引擎 API:
(1)C/C++
(2)Fortran
(3)Java
(4)Python
COM 组件和应用,包括很多使用 Visual C#® .NET 和 Visual Basic® .NET 等语言编写的程序。
2、在 MATLAB 中调用以其他语言编写的库
如果有使用其他编程语言编写的函数和对象,您可以从 MATLAB 进行调用。MATLAB 文档调用外部接口解释了这些组件的调用方法。
(1)C++ 库
(2)Java 库
(3)Python 库
(4)C/C++ 或 Fortran MEX 文件函数
(5)C 共享库
(6).NET 库
(7)COM 对象
(8)RESTful 和 WSDL Web 服务
3、将 MATLAB 代码转换为 C/C++
您可以使用 MATLAB Coder™ 将 MATLAB 算法转换为 C/C++ 代码。生成的 C 代码可读且可移植,支持 MATLAB 语言的大部分功能以及多种工具箱。有关详细信息,请参考 MATLAB Coder,或观看网络研讨会 MATLAB 转换为 C/C++ 简单易行 (47:38)。
您可以使用 Embedded Coder® 扩展 MATLAB Coder 功能,并可以使用 Simulink Coder™ 从 Simulink 生成代码。
MATLAB Coder 和 MATLAB Compiler SDK 都可以用于 C/C++ 集成,具体选择哪种工具取决于工作流和需求,包括是否需要可移植的独立代码。
4、将 MATLAB 程序打包为软件组件
MATLAB 程序可打包成适用于特定语言的软件组件,以便与常用编程语言集成。这些组件可以与自定义应用集成并部署到桌面、Web 和企业系统。
该方法适用于最终用户不具备 MATLAB 的情形。软件组件使用 MATLAB Compiler SDK 创建,支持免版权费分发。
您可以从 MATLAB 代码生成适用于以下语言的组件:
(1)Microsoft® .NET 程序集
(2)Python 包
(3)Java® 类
(4)C 共享库
(5)C++ 共享库
5、使用多种集成方法
上文介绍了 MATLAB 与其他编程语言相集成的各种方法,实际应用中,很多用户会综合多种方法,创建适合自身需求的混合解决方案。我们为您提供多种方法,助您完成复杂的工作流;同时,MathWorks Consulting Services 还可为您的集成项目再添助力。