一、代码规范
1.排版要求:
(1) 相对独立的程序块之间、变量说明之后必须加空行。
(2) 不允许把多个短语句写在一行中,即一行只写一条语句。
(3) if、for、do、while、case、switch、default等语句自占一行,且if、for、do、while等语句的执行语句部分无论多少都要加括号{}。
(4) 对齐只使用空格键,不使用TAB键。
(5) 程序块的分界符(如C/C++语言的大括号‘{’和‘}’)应各独占一行并且位于同一列,同时与引用它们的语句左对齐。
(6) 注意运算的优先级,并用括号明确表达式的操作顺序,避免使用默认优先级。
2.注释:
(1) 函数头部应进行注释,列出:函数的目的/功能、输入参数、输出参数、返回值、调用关系(函数、表)等。
(2) 边写代码边注释,修改代码同时修改相应的注释(注释要防止二义性,同时注释的缩进要与所注释的内容相同),以保证注释与代码的一致性。不再有用的注释要删除。
(3) 注释应与其描述的代码相近,对代码的注释应放在其上方或右方(对单条语句的注释)相邻位置,不可放在下面,如放于上方则需与其上面的无关代码用空行隔开。
3.函数、过程:
(1) 通过对函数或过程、变量、结构等的正确的命名以及合理的组织代码的结构,使代码成为自注释的。
(2) 源程序中关系较为紧密的代码应尽可能相邻。
(3) 防止局部变量与公共变量重名。
(4) 防止将函数参数作为工作变量。
(5) 为简单功能编写函数,方便维护测试。
4.程序效率:
(1) 提高代码效率。
(2) 循环体内工作量最小化。
(3) 使用变量时要注意其边界值的情况。
5.其他:
尽量减少没有必要的数据类型默认转换与强制转换。
二、《数学之美》第一章体会:
这一章中讲述了语言文字和数学的历史,随着人类文明的进步发展,有了高效记录信息的需求,出现了数学这个工具。让我真实的体会会到了语言与数学之间的联系,同时从历史上感受到了今天机器语言学习的类聚、编码和解码规则描述信息等基本原理的重要性。同时还有机器翻译会因为语言有歧义性,而趋向于解决这些歧义性去翻译。
还有一个印象深刻的结论:“翻译这件事之所以能达成,仅仅是因为不同的文字系统在记录信息上的能力是等价的”。正是因为这样才会有除了文字之外还有机器这个载体,来存储同样意义的信息。