我正在寻找有关如何构建中型到大型MATLAB项目的资源,特别是那些涉及多个独立模块的项目。如何管理全局配置变量,如何将项目构建到文件夹中,如何管理模块之间的耦合等。
这个主题是否有某种标准文字?看起来大多数MATLAB教科书都是由科学家或工程师编写的。我想,我正在寻找的是由软件工程师编写的任何MATLAB教科书。 : - )
答案 0 :(得分:24)
MATLAB是大型项目的不寻常选择,并且非常适合汇编程序,COBOL或SQL等任务。如果您仍然选择MATLAB,那么至少会自动测试代码!所有类型的测试 - 集成测试,单元测试,负载测试!当然还要使用版本控制系统。
如上所述,MATLAB并不是在考虑大型项目的情况下创建的,因此关于项目结构,模块,耦合的唯一最佳实践是常识。
如果您正在接管现有的大型MATLAB项目,那么我很抱歉,重构将是噩梦。如果你要用MATLAB开始一个新的大型项目,那么你就疯了 - 对于数字性能而言,有更好的MATLAB替代方案。大项目意味着几乎所有代码都是业务逻辑,而不是数字,因此为什么上帝的缘故MATLAB?
大型项目意味着结构良好的组件,这意味着OO,the weak point of MATLAB because it sacrifices heap performance for numeric performance to the degree of unusability。
我的经历:
使用MATLAB,您仍然需要使用大量的Java来获得体面的GUI,C / C ++ MEX用于快速而非数字部分,如导入,可能是SQL等。使用带有免费数字库的Java(或更好的C#)只有一种语言非常适合大型项目中所需的一切。
我不是说MATLAB很糟糕 - 它是快速原型制作和数字化的规则!并且Simulink没有其他选择(但可以从任何地方编译和使用)。
答案 1 :(得分:8)
您可能需要查看"The Elements of Matlab Style"(Loren Shure的review)。
此外,good coding practices的这篇评论可能会有用。