最流行的Ruby代碼規範

Ruby是很是自由靈活的語言,因此不一樣的Rubist風格差別可能很大。那麼在代碼規範方面他們的差別大不大呢?sideeffect.kr經過分析GitHub上託管的開源代碼,得出了一些有趣的結果,讓咱們一塊兒來看看Rubist的喜愛吧~segmentfault

code convention

空格與tab

使用空格縮進(95.364%)ruby

使用Tab縮進(4.636%)ide

基於 1,001,987 次提交函數

最大行寬

80字符(92.618%)spa

120字符(5.893%)代碼規範

150字符(1.489%)code

基於 1,057,374 次提交get

運算符、冒號、花括號周圍,逗號、分號後是否使用空格

不使用空格(73.366%)it

sum = 1 +2

a,b = 1, 2

1>2 ? true : false;puts 'Hi'

[1, 2, 3].each {|e| puts e}

使用空格(26.634%)io

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 次提交


編譯 SegmentFault

相關文章
相關標籤/搜索