首页 > 学院 > 开发设计 > 正文

GitHub倡导的Ruby代码编写风格总结

2019-10-26 19:29:38
字体:
来源:转载
供稿:网友

源代码布局方面:
1、所有源文件以UTF-8编码
2、使用2个空格的缩进
3、使用Unix风格的换行符(/n),windows(/r/n)。可使用git config --global core.autocrlf true 防止产生windows风格的换行符。
4、在‘,',‘;'后,操作符(除指数操作之外),‘{',‘}'的前后增加空格,增加代码的可读性。
5、在‘(',‘)',‘[',‘]'符号后不要加空格。
6、Case和When处于同一代码层次。
7、2个def之间使用一个空行隔开
8、对于一个方法有多个参数导致太长的时候,按如下方式处理

def send_mail(source)  Mailer.deliver(to: 'bob@example.com',          from: 'us@example.com',          subject: 'Important message',          body: source.text) end 

9、使用Rdoc生产系统的API文档,在注释和def之间不要有空行。
10、每行不超过80行
11、每行的结尾不要有空白字符。

语法方面:
1、一个方法如果没参数就省略括号,有参数就使用括号
2、如无必要,不要使用for,而使用each做循环
3、不要使用then
4、使用三元操作?:代替if,else。
5、不要在if else的内部使用?:操作符
6、使用when X then ...,因为when x ....在ruby1.9被删除了
7、使用&&和||做boolean操作,使用and,or做流程控制。
8、unless和else不要一起用
9、除非是判断条件涉及赋值操作,否则不不需要括起来
10、把多行语句块使用{}包含,
11、不需要使用的return的时候就不要用
12、不要使用‘/'连接2行代码
13、使用||=来初始话变量,但是不能用来初始化boolean变量
14、不要使用perl风格的变量名,$1-9之类的
15、运行Ruby的时候,加上“-w”以提示我们代码中不好的地方
16、使用Ruby1.9的语法写lambda和hash

命名规范:
1、使用小写+“_"命名变量和方法
2、使用首字母大写命名Module和Class
3、使用全大写+”_"命名常量
4、对于返回值是boolean的方法加个“?”后缀
5、对于一些有潜在风险的方法加“!”后缀,比方说有exit,修改了self,或者变量等等

注释:
1、关于注释就一条,代码即注释,

类:
1、符合liskov原则,子类可以替换父类。
2、尽量让类做到SOLID (Single responsibility, Open-closed, Liskov substitution, Interface segregation and Dependency inversion)
3、为每个类都写一个to_s的方法以查看类的状态。
4、使用attr家族的方法做类属性的访问控制
5、考虑增加新的工厂方法做一些有意义的实例初始化工作。
6、使用DuckTyping而非继承。因为动态语言的特性,不在需要多态了。
7、避免使用@@,全局变量,

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表