这是我曾经写在博克网上的一篇文章详细阐述于此:
(1)不可以长时间地做同样的事,尤其是面对电脑屏幕的活,这样容易疲劳且效率低下。
(2)编代码前一定要画流程图
(3)在比较熟悉这个工具的情况下,可以一气呵成的编好整个程序,然后再调试验证。不要一小段代码就立即验证,这样常常停留在一些中间结果上,容易消磨人的意志。
(4)有些理论上肯定没有问题的东西就不要验证了,毕竟做一个仿真下来还是很费时费力的。
(5)始终记得matlab只是工具而已,千万不可以为了学习matlab而学它,许多初学者喜欢拿着一本相关书籍把书上的例子从头做到尾,这是完全没有必要的。这是一种草稿式语言,只要大概知道其语法,找几段代码,当然你要很熟悉其算法和功能,认真阅读下来,然后再自己硬着头皮自己编一两段相类似的程序就无敌了。充分利用matlab自带的帮助应对阅读的过程中遇到的每一个陌生的函数。
(6)给自己备一个函数速查文档,能够不要自己编的函数尽可能不要自己编。当然还有许多其他的寻找自己想要的函数的方法:1、利用matlab自带的帮助文件。search选项,若知道函数的名称则再选择function name 选项,直接输入函数的名称就可以了;若只是想实现某些功能,但又不知道函数名,则就选择full text选项,然后输入相关的英文关键词就可以了;当然我们还可以通过相关函数搜索,比如我们想实现累乘功能,你只知道累加函数cumsum,则可以先找到cumsum函数所在页,然后在cumsum的See also中点击函数cumprod就可以了;当然在知道函数所在的工具箱的情况下,可以选择Contents然后点击相关的工具箱,如我们要进行神经网络的主元分析预处理,则可以选择Neural Network Toolbox 然后Functions -- By Category 然后 Functions by Class 然后 Pre and Post Processing Functions,这里就给出了各种预处理的函数;经常用的函数添加到favorites中去。2、利用百度和Google等搜索引擎搜索一些关键词,因为你所遇到的问题一般许多人也都遇过的。3、许多论坛和mathworks公司的网站会给出一些比较好的代码。3、可以直接在命令窗口中输入help、 lookfor 、which等命令寻求帮助。
不过有时自己编一些函数尤其对于初学者还是很有帮助的,不要花上个把小时去找一个本来可以三五分钟就能编好的函数。
(7)给出代码的说明和注释,包括输入输出及使用的限制条件,函数的功能,代码分类等等。以便于以后的重复利用,当时编的时候很清楚怎么用,但是随着时间的推移好多使用细节会淡忘的。
(8)matlab主要是用于初步实现和测试一些算法的性能,但一般情况下我们只是实现一些基本的功能。如人脸识别特征脸算法实现,可能最初就是实现给定一定数目的人脸图片并给出固定数目的主元(主成分),但考虑到我们终极目的是为了分析该算法的性能,故而可以将 人脸库中训练集的人脸图片数目和主元数目可是设置为函数的输入变量,这样可以分析识别率随着这些变量的变化情况。我们应该学会从各个角度去分析待研究的算法,毕竟编一段代码也是很不容易的,要充分利用。