转自: Jerry Zitao Liu的博客

主要是参考了下面这篇文章,简洁总结在这里。

MATLAB Programming Style Guidelines

简洁总结如下:

  1. 表示object的数量的时候,用n做前缀,如 nFiles。
  2. 因为matlab里提到矩阵都是说m*n的矩阵,所以用mRows表示矩阵的行数,算是上面一条的一个特例吧。
  3. 用i做前缀表示iterator variable,如iFile。 for iFile = 1:nFiles … end。
  4. 嵌套循环的话,iterator variable按字母顺序使用。如 i, j, k, l, m, n…。
  5. 常量可以用一个通用的类型名作前缀,如 COLOR_RED, COLOR_GREEN, COLOR_BLUE。
  6. 结构命名第一个字母大写。
  7. 函数的命名驼峰和下划线分隔的都行,一致就好。
  8. 只有一个返回值的函数的用它的返回值含义命名,如 mean()。
  9. 没有返回值的函数用它具体做的事情命名,如plot()。
  10. 用于计算某个东西的函数用compute作为前缀。 11.用于查找某个东西的函数用find作为前缀。 12.用于初始化的函数用initialize作为前缀。
  11. 返回值是布尔值的函数用is作为前缀。
  12. 如果一个函数只被一个m文件里的函数调用,这个函数不用单独写成一个m文件,直接定义在那个调用它的函数文件里就好。
  13. 文件中所有重要变量的注释全部放在文件的开头。
  14. 常量的赋值注释现在那句赋值语句的后面。
  15. 避免复杂的条件判断,用单独的布尔变量分隔。
  16. 每一行的代码尽量不要超过80个column的长度。
  17. 简单的if, for, while语句可以写在一行,如 if(condition), statement; end。
  18. 函数开头的注释应该支持 help和lookfor。
  19. 最后讲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)的更多相关文章

  1. 【matlab编程】Matlab版扫雷

    我发现有些人平常闲着的时候会玩window自带的游戏,其中最常见的就是扫雷和纸牌.本来想用matlab编写全自动扫雷程序用来作弊,可是后来发现扫雷问题是NP完全问题(正如:旅行商NP难问题一样不能被解 ...

  2. 【Matlab编程】Matlab高效编程技巧

    1.默认状态下,matlab显示精度是short型,而默认的计算精度是double型,并且显示精度与计算精度没有关系. 2. 一只失明的猫的问题:注意方法! 3.给数组预分配空间是基本的高效编程准则之 ...

  3. 【Matlab编程】Matlab让电脑失而复得

    在学校常常有同学电脑失窃,大抵都是粗细大意.据说iPhone手机失窃后能够获取小偷的照片,从而将照片找到.如今用matlab写一个程序使得当小偷使用电脑上网时,电脑自己主动将电脑前面的人的照片发到你指 ...

  4. 一张图总结Google C++编程规范(Google C++ Style Guide)

    Google C++ Style Guide是一份不错的C++编码指南,我制作了一张比較全面的说明图,能够在短时间内高速掌握规范的重点内容.只是规范毕竟是人定的,记得活学活用.看图前别忘了阅读以下三条 ...

  5. 【Matlab编程】Matlab及Java小时钟

    一年前曾经用matlab的gui做了一个时钟,由于是直接用GUIDE和ActiveX控件写的,程序虽说有许多行,大多数都是自动生成的,自己写的只有十几行而已.闲着没事,就耗费了下午的时间用matlab ...

  6. 【matlab编程】matlab随机数函数

    Matlab内部函数 a. 基本随机数 Matlab中有两个最基本生成随机数的函数. 1.rand() 生成(0,1)区间上均匀分布的随机变量.基本语法: rand([M,N,P ...]) 生成排列 ...

  7. 【Matlab编程】matlab 画图

    1.  不用截图工具就可以将图保存成图像格式,并且没有背景颜色:saveas(gcf ,'outputname','png/jpg'),第三项省略时默认为fig.m文件 2.  计算形如(-1)^2/ ...

  8. MATLAB 编程风格指南及注意事项

    MATLAB编程风格指南Richard Johnson 著Genial 译MATLAB 编程风格指南Richard JohnsonVersion 1.5,Oct. 2002版权: Datatool 所 ...

  9. Matlab编程基础

    平台:Win7 64 bit,Matlab R2014a(8.3) “Matlab”是“Matrix Laboratory” 的缩写,中文“矩阵实验室”,是强大的数学工具.本文侧重于Matlab的编程 ...

随机推荐

  1. CentOS7下Elastic Stack 5.0日志分析系统搭建

    原文链接:http://www.2cto.com/net/201612/572296_3.html 在http://localhost:5601下新建索引页面输入“metricbeat-*”,之后ki ...

  2. 【BZOJ1294】[SCOI2009]围豆豆Bean 射线法+状压DP+SPFA

    [BZOJ1294][SCOI2009]围豆豆Bean Description Input 第一行两个整数N和M,为矩阵的边长. 第二行一个整数D,为豆子的总个数. 第三行包含D个整数V1到VD,分别 ...

  3. jqGrid 中的editrules来自定义colModel验证规则

    editrules    editrules是用来设置一些可用于可编辑列的colModel的额外属性的.大多数的时候是用来在提交到服务器之前验证用户的输入合法性的.比如editrules:{edith ...

  4. 你不可缺少的技能——Markdown编辑

    Markdown简介 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式.请不要被「标记」.「语言」所迷惑,Markdown 的语法十分 ...

  5. centos6.9环境下JDK安装

    1.准备jdk安装文件: 这里我使用的是 jdk-7u79-linux-x64.tar.gz 2.在 /usr/local 目录下创建 sotfware目录,并上传JDK文件: 解压文件并修改文件夹为 ...

  6. 初学filter

    一. Filter介绍 Filter可以认为是Servlet的一种加强版,它主要用于对用户请求进行预处理,也可以对HTTPServletResponse进行后处理,是个典型的处理链.它的完整处理流程是 ...

  7. easyui---基础组件:panel

    加载easyui有两种方式:1种是html方式加载,1种是js加载. 要加载内容非常多时,用js,如果加载的东西比较少,用html就可以了. panel组件:面板 就是头 身展示 ,一个滚动条,几个关 ...

  8. logstash实战tcp插件

    vim /etc/logstash/conf.d/tcp.conf input{ tcp{ type => "tcp" port => "6666" ...

  9. FaceBook开源的词向量计算框架

    fasttext是个好东西,是由facebook在2016年推出的一个训练词向量的模型.相比于之前Google的word2vec,fasttext可以解决out of vocabulary的问题.fa ...

  10. create view in view

    CREATE VIEW view_region2role AS ( SELECT region_set_id, region_set_name, GROUP_CONCAT(id) gc_id, GRO ...