你应该知道的Ruby代码风格_ruby专题

一、空格与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 次提交

时间: 2024-10-28 06:51:19

你应该知道的Ruby代码风格_ruby专题的相关文章

21个你应该知道的Ruby编程技巧_ruby专题

1. 快速获取正则表达式的匹配值 通常我们使用正则表达式,都是先match,然后再取结果,但是这样有时候会抛异常,看下面例子: 复制代码 代码如下: email = "Fred Bloggs " email.match(//)[1] # => "fred@bloggs.com" email[//, 1] # => "fred@bloggs.com" email.match(/(x)/)[1] # => NoMethodError

Ruby实现插入排序算法及进阶的二路插入排序代码示例_ruby专题

基础将一个记录插入到一个已经排序好的表中,以得到一个记录增一的有序表.并且最关键的一点就是它把比当前元素大的记录都往后移动,用以空出"自己"该插入的位置.当n-1趟插入完成后该记录就是有序序列. def insertSort(tarray) i=1 while(i < tarray.size) do if tarray[i] < tarray[i-1] j=i-1 x=tarray[i] #puts x.class #puts tarray[i].class tarray[

ruby 简单例子_ruby专题

让我们写一个计算阶乘的函数.对于阶乘的数学定义如下: n! = 1               (当 n==0 时)    = n * (n-1)!       (其它情况) 在Ruby里,可以这样来写: 复制代码 代码如下: def fact(n)          if n == 0            1          else            n * fact(n-1)            end        end   你可能会发现 end 的反复出现,正因为如此,Ru

浅析Ruby的源代码布局及其编程风格_ruby专题

使用 UTF-8 作为源文件编码.     每个缩进级别使用两个 spaces (又名软 tabs). 不要硬 tabs # bad - four spaces def some_method do_something end # good def some_method do_something end     使用 Unix-风格 换行符.(*BSD/Solaris/Linux/OSX 用户被为默认涵盖,Windows 用户必须特别小心.)         \n是换行,英文是LineFeed

ruby实现的文件自删除代码分享_ruby专题

因为windows的文件删除机制和unix like的不一样,so不保证如下代码能在windows中使用,哪位童鞋帮我在windows中测试一下也好啊! 复制代码 代码如下: #!/usr/bin/ruby 5.times do |x|  File.open($0,"w+") do |f|   f.puts "module M"   f.puts "def M.var;#{x**x} end"   f.puts "end"  

Ruby使用设计模式中的代理模式与装饰模式的代码实例_ruby专题

代理模式 需求: 小明让小李替他追小丽(送洋娃娃,送花,送巧克力) 没有代理的代码: # -*- encoding: utf-8 -*- #追求者类 class Pursuit attr_accessor :mm def initialize(mm) @mm = mm end def give_dolls puts "#{mm.name} 送你洋娃娃" end def give_flowers puts "#{mm.name} 送你鲜花" end def give_

Ruby基础知识之方法、代码段_ruby专题

Ruby中的方法是一个有名称的代码块,是与一个或多个对象关联的参数化的代码.调用时须给出方法名,接收者(所在对象),参数值,且最后一个表达式的值做为返回值.与Ruby方法相似的是代码块,它没有名字,且调用时只通过迭代器或被间接调用.  (一)方法 (1)定义方法 定义方法就是 复制代码 代码如下: def 方法名(参数列表) 方法体 end 最后一个表达式做为返回值返回,如果有值,则返回:无值则返回nil.可以省略return. 在类中定义的方法为实例方法,实例方法可以在类的实例对象上使用.如果

收集的多个ruby遍历文件夹代码实例_ruby专题

一.遍历文件夹下所有文件,输出文件名 复制代码 代码如下: def traverse_dir(file_path)     if File.directory? file_path         Dir.foreach(file_path) do |file|             if file !="." and file !=".."                 traverse_dir(file_path+"/"+file)   

Ruby实现批量对文件增加前缀代码分享_ruby专题

最近从设计师那里get了超多的图,结果都是1.png,2.png这样的文件名,自己还需要将这些文件变成可读的文件名,不想一个一个得修改,于是就写了一个简单的脚本,实现批量对多个文件增加前缀的操作,后期修改了一下,分享一下. 代码 复制代码 代码如下: #!/usr/bin/env ruby # encoding: utf-8 srcDir= ARGV[0] prefix= ARGV[1] pattern = '*' pattern = ARGV[2] if ARGV.size == 3 Dir[