我很快就会找到一些新学生,他们将编写MATLAB代码。他们是MATLAB的新手,但他们有使用Java和C ++编写的经验。
我将让他们浏览MATLAB帮助的Getting Started部分。另外,我想给出一个小教程,目的是防止他们在切换到MATLAB时犯下一些人们常犯的错误(例如“MATLAB从1开始计数”),并向他们展示一些他们可能没有的功能。要知道何时来自其他语言(例如“你可以直接从数组中减去一个标量,对于向量,那就是bsxfun”)。
我应该告诉他们最重要的事情是什么?
答案 0 :(得分:17)
我同意以前的答案,但我会说索引是研究MATLAB的第一个也是最重要和最复杂的概念。我看到很多从MATLAB开始的C程序员只是编写循环,很多循环,像
这样荒谬for i=1:10
a(i)=i;
end
而非简单a=1:10;
。
所以我建议他们阅读矩阵编程概念:
关于生产力,我想补充一点,知道如何使用编辑器的单元格模式非常有用。
答案 1 :(得分:15)
足够狡猾的评论,这里也是一个答案:
这应该足以使他们忙碌一小时左右。
为了澄清,我建议这些主题帮助您教您的学生避免常见的Matlab错误,包括;
答案 2 :(得分:10)
对于来自C系列语言的人来说,元素操作符是新的。我花了几个月的时间才发现了./
和.*
运算符。在此之前,我曾经为元素操作编写for循环。所以也许应该指出这一点。
答案 3 :(得分:8)
对于可能导致混淆的意外或非直观的MATLAB功能,这个问题有一些好的指针:
关于酷时省/效率技巧,这个问题有一些很好的例子:
对于一些可能更高级的主题,您可以参考这个问题的答案:
现在我的0.02美元。根据我在SO上经常提到的各种问题,我会说你会确保他们对以下概念有一个很好的理解:
以下是MATLAB中已经实现的一些简洁功能,可以节省一些时间和精力:
答案 4 :(得分:5)
MATLAB在概念上在某些方面与您提到的其他语言有很大不同:
global
和persistent
变量在Java中是static
double
private
和@TYPE文件夹进行可见性范围设定varargin
/ varargout