[转] Matlab编程规范(MATLAB Programming Style Guidelines)
主要是参考了下面这篇文章,简洁总结在这里。
MATLAB Programming Style Guidelines
简洁总结如下:
- 表示object的数量的时候,用n做前缀,如 nFiles。
- 因为matlab里提到矩阵都是说m*n的矩阵,所以用mRows表示矩阵的行数,算是上面一条的一个特例吧。
- 用i做前缀表示iterator variable,如iFile。 for iFile = 1:nFiles … end。
- 嵌套循环的话,iterator variable按字母顺序使用。如 i, j, k, l, m, n…。
- 常量可以用一个通用的类型名作前缀,如 COLOR_RED, COLOR_GREEN, COLOR_BLUE。
- 结构命名第一个字母大写。
- 函数的命名驼峰和下划线分隔的都行,一致就好。
- 只有一个返回值的函数的用它的返回值含义命名,如 mean()。
- 没有返回值的函数用它具体做的事情命名,如plot()。
- 用于计算某个东西的函数用compute作为前缀。 11.用于查找某个东西的函数用find作为前缀。 12.用于初始化的函数用initialize作为前缀。
- 返回值是布尔值的函数用is作为前缀。
- 如果一个函数只被一个m文件里的函数调用,这个函数不用单独写成一个m文件,直接定义在那个调用它的函数文件里就好。
- 文件中所有重要变量的注释全部放在文件的开头。
- 常量的赋值注释现在那句赋值语句的后面。
- 避免复杂的条件判断,用单独的布尔变量分隔。
- 每一行的代码尽量不要超过80个column的长度。
- 简单的if, for, while语句可以写在一行,如 if(condition), statement; end。
- 函数开头的注释应该支持 help和lookfor。
- 最后讲Documentation的时候,引用了Dick Brandon的话
“Documentation is like sex; when it’s good, it’s very, very good, and when it’s bad, it’s better than nothing.”
[转] Matlab编程规范(MATLAB Programming Style Guidelines)的更多相关文章
- 【matlab编程】Matlab版扫雷
我发现有些人平常闲着的时候会玩window自带的游戏,其中最常见的就是扫雷和纸牌.本来想用matlab编写全自动扫雷程序用来作弊,可是后来发现扫雷问题是NP完全问题(正如:旅行商NP难问题一样不能被解 ...
- 【Matlab编程】Matlab高效编程技巧
1.默认状态下,matlab显示精度是short型,而默认的计算精度是double型,并且显示精度与计算精度没有关系. 2. 一只失明的猫的问题:注意方法! 3.给数组预分配空间是基本的高效编程准则之 ...
- 【Matlab编程】Matlab让电脑失而复得
在学校常常有同学电脑失窃,大抵都是粗细大意.据说iPhone手机失窃后能够获取小偷的照片,从而将照片找到.如今用matlab写一个程序使得当小偷使用电脑上网时,电脑自己主动将电脑前面的人的照片发到你指 ...
- 一张图总结Google C++编程规范(Google C++ Style Guide)
Google C++ Style Guide是一份不错的C++编码指南,我制作了一张比較全面的说明图,能够在短时间内高速掌握规范的重点内容.只是规范毕竟是人定的,记得活学活用.看图前别忘了阅读以下三条 ...
- 【Matlab编程】Matlab及Java小时钟
一年前曾经用matlab的gui做了一个时钟,由于是直接用GUIDE和ActiveX控件写的,程序虽说有许多行,大多数都是自动生成的,自己写的只有十几行而已.闲着没事,就耗费了下午的时间用matlab ...
- 【matlab编程】matlab随机数函数
Matlab内部函数 a. 基本随机数 Matlab中有两个最基本生成随机数的函数. 1.rand() 生成(0,1)区间上均匀分布的随机变量.基本语法: rand([M,N,P ...]) 生成排列 ...
- 【Matlab编程】matlab 画图
1. 不用截图工具就可以将图保存成图像格式,并且没有背景颜色:saveas(gcf ,'outputname','png/jpg'),第三项省略时默认为fig.m文件 2. 计算形如(-1)^2/ ...
- MATLAB 编程风格指南及注意事项
MATLAB编程风格指南Richard Johnson 著Genial 译MATLAB 编程风格指南Richard JohnsonVersion 1.5,Oct. 2002版权: Datatool 所 ...
- Matlab编程基础
平台:Win7 64 bit,Matlab R2014a(8.3) “Matlab”是“Matrix Laboratory” 的缩写,中文“矩阵实验室”,是强大的数学工具.本文侧重于Matlab的编程 ...
随机推荐
- CentOS7下Elastic Stack 5.0日志分析系统搭建
原文链接:http://www.2cto.com/net/201612/572296_3.html 在http://localhost:5601下新建索引页面输入“metricbeat-*”,之后ki ...
- 【BZOJ1294】[SCOI2009]围豆豆Bean 射线法+状压DP+SPFA
[BZOJ1294][SCOI2009]围豆豆Bean Description Input 第一行两个整数N和M,为矩阵的边长. 第二行一个整数D,为豆子的总个数. 第三行包含D个整数V1到VD,分别 ...
- jqGrid 中的editrules来自定义colModel验证规则
editrules editrules是用来设置一些可用于可编辑列的colModel的额外属性的.大多数的时候是用来在提交到服务器之前验证用户的输入合法性的.比如editrules:{edith ...
- 你不可缺少的技能——Markdown编辑
Markdown简介 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式.请不要被「标记」.「语言」所迷惑,Markdown 的语法十分 ...
- centos6.9环境下JDK安装
1.准备jdk安装文件: 这里我使用的是 jdk-7u79-linux-x64.tar.gz 2.在 /usr/local 目录下创建 sotfware目录,并上传JDK文件: 解压文件并修改文件夹为 ...
- 初学filter
一. Filter介绍 Filter可以认为是Servlet的一种加强版,它主要用于对用户请求进行预处理,也可以对HTTPServletResponse进行后处理,是个典型的处理链.它的完整处理流程是 ...
- easyui---基础组件:panel
加载easyui有两种方式:1种是html方式加载,1种是js加载. 要加载内容非常多时,用js,如果加载的东西比较少,用html就可以了. panel组件:面板 就是头 身展示 ,一个滚动条,几个关 ...
- logstash实战tcp插件
vim /etc/logstash/conf.d/tcp.conf input{ tcp{ type => "tcp" port => "6666" ...
- FaceBook开源的词向量计算框架
fasttext是个好东西,是由facebook在2016年推出的一个训练词向量的模型.相比于之前Google的word2vec,fasttext可以解决out of vocabulary的问题.fa ...
- create view in view
CREATE VIEW view_region2role AS ( SELECT region_set_id, region_set_name, GROUP_CONCAT(id) gc_id, GRO ...