你应该知道的Ruby代码风格

所属分类: 脚本专栏 / ruby专题 阅读数: 984
收藏 0 赞 0 分享

一、空格与tab
使用空格缩进(95.364%)
使用Tab缩进(4.636%)
基于 1,001,987 次提交
二、最大行宽
80字符(92.618%)
120字符(5.893%)
150字符(1.489%)
基于 1,057,374 次提交
三、运算符、冒号、花括号周围,逗号、分号后是否使用空格
不使用空格(73.366%)

复制代码 代码如下:

sum = 1 +2
a,b = 1, 2
1>2 ? true : false;puts 'Hi'
[1, 2, 3].each {|e| puts e}

使用空格(26.634%)
复制代码 代码如下:

sum = 1 + 2
a, b = 1, 2
1 > 2 ? true : false; puts 'Hi'
[1, 2, 3].each { |e| puts e }

基于 911,301 次提交
四、默认参数
前后空格(59.151%)
复制代码 代码如下:

def some_method(arg1 = :default, arg2 = nil, arg3 = [])
  # do something...
end

前后无空格或只有一个空格(40.849 %)
复制代码 代码如下:

def some_method(arg1=:default, arg2=nil, arg3=[])
  # do something...
end

基于 19,213 次提交
五、长数字
不使用下划线 (97.984 %)
复制代码 代码如下:
num = 1000000

使用下划线 (2.016 %)
复制代码 代码如下:
num = 1_000_000

基于 133,530 次提交
六、无参数时是否省略括号
省略括号(98.556 %)
复制代码 代码如下:

def some_method
  # do something...
end

不省略括号(1.444 %)
复制代码 代码如下:

def some_method()
  # do something...
end

基于 267,404 次提交
七、定义函数时参数周围是否使用括号
省略(62.867 %)
复制代码 代码如下:

def some_method arg1, arg2
  # do something...
end

不省略(37.133 %)
复制代码 代码如下:

def some_method(arg1, arg2)
  # do something...
end

基于 365,121 次提交

更多精彩内容其他人还在看

Ruby一行代码实现的快速排序

这篇文章主要介绍了Ruby一行代码实现的快速排序,本文直接给出实现代码,超级简洁的一个的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的3种快速排序算法

这篇文章主要介绍了Ruby实现的3种快速排序算法,本文给出了快速排序的普通版本、快速排序的随机化版本、快速排序的利用了Ruby的语法糖的随机化版本三个版本,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的最优二叉查找树算法

这篇文章主要介绍了Ruby实现的最优二叉查找树算法,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的最短编辑距离计算方法

这篇文章主要介绍了Ruby实现的最短编辑距离计算方法,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的最长公共子序列算法

这篇文章主要介绍了Ruby实现的最长公共子序列算法,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的合并排序算法

这篇文章主要介绍了Ruby实现的合并排序算法,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的矩阵连乘算法

这篇文章主要介绍了Ruby实现的矩阵连乘算法,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的各种排序算法

这篇文章主要介绍了Ruby实现的各种排序算法,本文给出了Bubble sort、Insertion sort、Selection sort、Shell sort等排序的实现方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现生产者和消费者代码分享

这篇文章主要介绍了Ruby实现生产者和消费者代码分享,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby中require、load、include、extend的区别介绍

这篇文章主要介绍了Ruby中require、load、include、extend的区别介绍,require、load用于文件,如.rb等等结尾的文件,include、load则用于包含一个文件中的模块,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多