📜  Ruby Case(1)

📅  最后修改于: 2023-12-03 15:04:56.563000             🧑  作者: Mango

Ruby Case

Ruby Case是指在Ruby中使用的不同的命名风格,主要有Snake case、Camel case和Kebab case三种。

Snake case

Snake case又称下划线命名法,即使用下划线将多个单词连接起来。在Ruby中,变量、方法、类、模块等的名称尽量使用Snake case。

first_name = "John"
last_name = "Doe"

def full_name(first_name, last_name)
  "#{first_name} #{last_name}"
end

class person_info
  attr_accessor :first_name, :last_name
  
  def initialize(first_name, last_name)
    @first_name = first_name
    @last_name = last_name
  end
end
Camel case

Camel case又称驼峰命名法,即第一个单词的首字母小写,后面的单词首字母大写,并将多个单词连接在一起。在Ruby中,类和模块的名称使用Camel case。

class PersonInfo
  attr_accessor :firstName, :lastName
  
  def initialize(first_name, last_name)
    @firstName = first_name
    @lastName = last_name
  end
  
  def fullName
    "#{@firstName} #{@lastName}"
  end
end
Kebab case

Kebab case又称烤肉串命名法,即使用连字符将多个单词连接起来。在Ruby中,Kebab case较少使用。

# 没有标准库的模块,名为 `my-module`
module MyModule
  # convert-to-kebab-case 方法将书名转为烤肉串形式
  def self.convert_to_kebab_case(name)
    name.downcase.gsub(/\s+/, '-').gsub(/[^a-z0-9\-]/, '')
  end
end

MyModule.convert_to_kebab_case("Programming Ruby: The Pragmatic Programmers' Guide")
# => "programming-ruby-the-pragmatic-programmers-guide"

总之,选择哪种命名风格主要要看自己所处的项目环境和工作流程,要保持一贯性,不要混用。