良好的编程实践……

30视图(30天)
Raviteja
Raviteja 2011年9月22日
编辑: Jitin Beri 2018年11月12日
你好所有的,
请解释好MATLAB编程实践方法。它将有助于新编程的人喜欢我。
以前我使用
i = 1:10
以下一些建议从这个答案页面后,我学会了使用
i1 = 1:10 0
这是编写程序的好方法。
这样,作为一个专业的程序员,请提一些好的编程实践技术。
它会有用的!
2的评论
史蒂文
史蒂文 2011年10月19日
然而,似乎是无法区分的区别考虑一定的精度。
抽搐;
i1 = 1∶
x =罪(i1);
结束
toc
运行时间是0.003597秒。
抽搐;
因为我= 1∶
x =罪(我);
结束
toc
运行时间是0.003569秒。

登录置评。

答案(16)

丹尼尔Shub
丹尼尔Shub 2011年9月23日
我建议开发一种编码风格。”Some good places to start are given in the FAQ:
我也会考虑这本书的审查,罗兰
虽然我应该说我还没有看。这是我要做的事情列表。
1评论
K E
K E 2012年1月26日
Matlab风格的元素是伟大的

登录置评。


杰克Bolanski
杰克Bolanski 2011年9月22日
总是好注释的代码,这样你不会有困难记住你为什么你做什么。它还帮助别人认识你的代码,你在做什么。
1评论
1月
1月 2011年9月22日
我同意。如果你想分享你的代码,或者这样做有没有未来,这是一个好主意使用Matlab的标准注释风格:
(输出功能,…]= Fcn(输入、…)
% H1线
%帮助文本
%(输出,…]= Fcn(输入、…)
%……
%日期、作者

登录置评。


1月
1月 2011年9月23日
很有可能的是,这些问题,经常关注其他用户,也担心你。是非常有效的利润从别人的错误中,而不是实现他们自己的。
2的评论
Bjorn Gustavsson
Bjorn Gustavsson 2011年9月23日
”是很有效的利润从别人的错误中,实现他们自己的。”是一个最有趣的(不幸的是乐趣,体会说)语句我本周遇到!

登录置评。


Fangjun江
Fangjun江 2011年9月22日
你想从哪里开始?我将添加,我想出了一些。
  • 预先分配大尺寸变量使用0(),细胞()

1月
1月 2011年9月22日
避免重载装入的功能。它经常发生,用户创建了一个名为“max”的变量和惊讶,max函数不工作了:
max = 19;
100行后:
B = max (1:10)
? ? ?指数超过矩阵维度。
一个令人迷惑的但是正确的错误消息!
1评论
1月
1月 2012年1月26日
@Steven:当你发现,长符号不需要更多的时间(只要不污染查找表评价)。运行时并不是一个问题,调试时间。“B = max(1:10)”是令人困惑。

登录置评。


1月
1月 2011年9月22日
开始一个脚本或功能:
清晰的所有
这从内存中删除所有加载功能。重新加载它们需要很多时间,这样一个程序可以慢100倍不太可能最糟糕的情况。
我承认, 清晰的 或同等 明确的变量 可以帮助检测原油输入错误在一个变量的名字,如果这个变量是现有的脚本之前。但这是一个非常罕见的情况下,如果使用一个函数,MLint检测这个好多了。
但有一个可怕的大量的代码开始 清除所有 。我认为这是一些教程推荐已没有更深的了解MATLAB编写的。
1评论
丹尼尔Shub
丹尼尔Shub 2011年10月20日
即使是最好的有时这样做:
http://blogs.mathworks.com/loren/2009/06/16/rooting-around-in-matlab-part-2/

登录置评。


丹尼尔Shub
丹尼尔Shub 2011年9月23日
编辑:Jitin Beri 2018年11月12日
1评论
1月
1月 2011年9月23日
我希望,你不做* *来回答,但立即进行上述两个链接…但我投票+ 1的有用链接。

登录置评。


丹尼尔Shub
丹尼尔Shub 2011年9月23日
使用的函数形式加载和保存,和几乎所有其他功能除了帮助和文档
而不是
负载filename.mat
使用
data =负载(“filename.mat”)
2的评论
丹尼尔Shub
丹尼尔Shub 2011年9月23日
@jan你是正确的,负载的输出是一个重要的良好实践。

登录置评。


1月
1月 2011年9月22日
用英语评论和帮助文本。虽然你可能会认为,你将永远不会分享代码,甚至讨论在这个论坛要困难得多,如果所有的变量和描述是在意大利。
1评论
沃尔特·罗伯森
沃尔特·罗伯森 2011年9月23日
这个我不能同意。交易的可能性,人们可能会想要分享的部分答案或CSSM中的代码,对附近的代码需要轻松地理解别人的工作场所。
也有地方写的评论和帮助文本英语将违反各种语言保护的法律。

登录置评。


1月
1月 2011年9月22日
包括检查的数量和类型的输入,如果所有功能。
这将花费几秒钟运行时,但也救不了小时的调试。

1月
1月 2011年9月23日
阅读技巧dokumentation程序开发:
如果你在路上,阅读文档的其余部分,至少是“制定”章节。


丹尼尔Shub
丹尼尔Shub 2011年10月20日
1评论
Fangjun江
Fangjun江 2011年10月20日
+ 1。我记得读道格的文章。这是一个很好的一个。

登录置评。


丹尼尔Shub
丹尼尔Shub 2012年1月27日
只有公平的,如果我把道格的博客,我也应该塞·罗兰的博客:

Raviteja
Raviteja 2011年9月23日
我得到了很好的帮助从matlab数据matlab编程技巧
http://www.mathworks.in/help/pdf_doc/matlab/programming_tips.pdf
10评论
默罕默德
默罕默德 2011年9月24日
我用这个:www.google.com/bookmarks
但这是好如果有本身的书签

登录置评。


史蒂文
史蒂文 2011年10月19日
然而,似乎是无法区分的区别考虑任何重复的数量一定精度。
抽搐;
i1 = 1∶
x =罪(i1);
结束
toc
运行时间是0.003597秒。
抽搐;
i = 1∶
x =罪(我);
结束
toc
运行时间是0.003569秒。
1评论
1月
1月 2012年1月27日
@Steven:你有发布这一细节3次在这个线程。请考虑,运行时不受变量的名称的长度,因为内部变量访问内存指针从按照查询表。这个按照查询表时创建函数加载第一次。

登录置评。

类别

找到更多的在历史竞赛帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!