目录
一、腾讯代码风格
1、命名
1.1包命名
一律小写,少用缩写与长名。
1.2类或接口名称
名词,采用大小写混合的方式,每个单词的首字母大写。
1.3变量命名
- 采用大小写混合的方式,第一个单词的首字母小写,其后的单词首字母大写。
- 变量名不应以下划线或美元符号开头。
- 尽量避免单个字符的变量名,除非是临时变量。
2、注释
2.1文件注释
所有源文件应该在开头有一个注释,列出文件的版权声明、文件名、功能描述以及创建、修改记录。
2.2字段注释
采用JavaDoc文档注释,定义为public的字段必须给出注释,在类的(静态)变量、实例变量定义之前应当对其进行注释,给出该字段的描述等。
2.3其他注释
- 单行代码注释一律使用注释界定符("//")。
- 多行注释使用注释界定符(”/*...*/")。
3、缩进
- 程序块主要采用缩进风格编写,缩进只用TAB键,不能使用空格键(编辑器中TAB设置为4格)。
- 方法体的开始、类的定义、以及if、for、do、while、case等语句中代码都要采用缩进方式。
4、对齐
- 程序块的分界符左打括号("{")和右大括号("}")都另起一行,应各独占一行并位于同一列,同时与 引用它们的语句左对齐。
- 对齐只用TAB键,不能使用空格键。
- 不允许把多个段语句写在一行中。
- if、for、do、while、case等语句独占一行,
5、换行
- 一行的长度超过80个字符需要换行。
- 一个逗号后面断开。
- 一个操作符前面断开。
- 长表达式要在低优先级操作符处划分新行。
- 新行缩进2个TAB。
6、间隔
- 类、方法以及相应独立的程序块之间、变量说明之后必须加空行。
- 关键字之后要留空格,例如if、for、do、while、case等关键字之后应留一个空格再跟左括号。
- 方法名与其左括号之间不留空格。
- 二元操作符,例如"=","+=",">=","<="等前后应当空格。
- 一元操作符,例如”!","-","++"等前后不加空格。
- 操作符“[]","、"等前后不加空格。
- 强制转型后应该跟一个空格。
二、《数学之美》第十七章读后感
这章主要分成了两部分:1 密码学的自发时代;2 信息论时代的密码学。它体现了作者的一个想法:公钥密码是信息论时代的密码,文章中也说:
“有了信息论后,密码的设计就有了理论基础,现在通用的公开密钥的方法,包括《暗算》里的“光复一号”密码,就是基于这个理论。”
一、公开密钥的好处
1.简单。
2. 可靠。
3.灵活。
二、公开密钥的难度
首先世界上没有永远破不了的密码,关键是它能有多长时间的有效期。
要破公开密钥的加密方式,至今的研究结果表明最好的办法还是对大字 N 进行因数分解,即通过 N 反过来找到 P 和 Q。
三、感想
通过这一章节的介绍,我最深的印象就是很多事情都可以用概率来找到准确的规律,从而未卜先知。“一个正确的模型一开始可能还不如一个精雕细琢过的错误模型来的准确,但是,如果我们认定大方向是对的,就应该坚持下去。(日心说开始并没有地心说准确。) 而不应该用一种凑合的修正方法来弥补它,而是要找到噪音的根源,这也许能通往重大的发现。”