Ruby Style and Project Organization
Constants and Defaults
Project defaults are easier to review when they are named once and applied consistently.
Constants and Defaults
constants_defaults.rb
DEFAULT_RETRIES = 3
DEFAULT_MODE = "safe"
requested_retries =
requested_mode =
retries = requested_retries > 0 ? requested_retries : DEFAULT_RETRIES
mode = requested_mode.empty? ? DEFAULT_MODE : requested_mode
policy = "#{mode}:#{retries}"
puts "default_retries=#{DEFAULT_RETRIES}"
puts "requested_retries=#{requested_retries}"
puts "mode=#{mode}"
puts "policy=#{policy}"
DEFAULT_RETRIES = 3
DEFAULT_MODE = "safe"
requested_retries =
requested_mode =
retries = requested_retries > 0 ? requested_retries : DEFAULT_RETRIES
mode = requested_mode.empty? ? DEFAULT_MODE : requested_mode
policy = "#{mode}:#{retries}"
puts "default_retries=#{DEFAULT_RETRIES}"
puts "requested_retries=#{requested_retries}"
puts "mode=#{mode}"
puts "policy=#{policy}"
DEFAULT_RETRIES = 3
DEFAULT_MODE = "safe"
requested_retries =
requested_mode =
retries = requested_retries > 0 ? requested_retries : DEFAULT_RETRIES
mode = requested_mode.empty? ? DEFAULT_MODE : requested_mode
policy = "#{mode}:#{retries}"
puts "default_retries=#{DEFAULT_RETRIES}"
puts "requested_retries=#{requested_retries}"
puts "mode=#{mode}"
puts "policy=#{policy}"
DEFAULT_RETRIES = 3
DEFAULT_MODE = "safe"
requested_retries =
requested_mode =
retries = requested_retries > 0 ? requested_retries : DEFAULT_RETRIES
mode = requested_mode.empty? ? DEFAULT_MODE : requested_mode
policy = "#{mode}:#{retries}"
puts "default_retries=#{DEFAULT_RETRIES}"
puts "requested_retries=#{requested_retries}"
puts "mode=#{mode}"
puts "policy=#{policy}"
DEFAULT_RETRIES = 3
DEFAULT_MODE = "safe"
requested_retries =
requested_mode =
retries = requested_retries > 0 ? requested_retries : DEFAULT_RETRIES
mode = requested_mode.empty? ? DEFAULT_MODE : requested_mode
policy = "#{mode}:#{retries}"
puts "default_retries=#{DEFAULT_RETRIES}"
puts "requested_retries=#{requested_retries}"
puts "mode=#{mode}"
puts "policy=#{policy}"
DEFAULT_RETRIES = 3
DEFAULT_MODE = "safe"
requested_retries =
requested_mode =
retries = requested_retries > 0 ? requested_retries : DEFAULT_RETRIES
mode = requested_mode.empty? ? DEFAULT_MODE : requested_mode
policy = "#{mode}:#{retries}"
puts "default_retries=#{DEFAULT_RETRIES}"
puts "requested_retries=#{requested_retries}"
puts "mode=#{mode}"
puts "policy=#{policy}"
DEFAULT_RETRIES = 3
DEFAULT_MODE = "safe"
requested_retries =
requested_mode =
retries = requested_retries > 0 ? requested_retries : DEFAULT_RETRIES
mode = requested_mode.empty? ? DEFAULT_MODE : requested_mode
policy = "#{mode}:#{retries}"
puts "default_retries=#{DEFAULT_RETRIES}"
puts "requested_retries=#{requested_retries}"
puts "mode=#{mode}"
puts "policy=#{policy}"
DEFAULT_RETRIES = 3
DEFAULT_MODE = "safe"
requested_retries =
requested_mode =
retries = requested_retries > 0 ? requested_retries : DEFAULT_RETRIES
mode = requested_mode.empty? ? DEFAULT_MODE : requested_mode
policy = "#{mode}:#{retries}"
puts "default_retries=#{DEFAULT_RETRIES}"
puts "requested_retries=#{requested_retries}"
puts "mode=#{mode}"
puts "policy=#{policy}"
DEFAULT_RETRIES = 3
DEFAULT_MODE = "safe"
requested_retries =
requested_mode =
retries = requested_retries > 0 ? requested_retries : DEFAULT_RETRIES
mode = requested_mode.empty? ? DEFAULT_MODE : requested_mode
policy = "#{mode}:#{retries}"
puts "default_retries=#{DEFAULT_RETRIES}"
puts "requested_retries=#{requested_retries}"
puts "mode=#{mode}"
puts "policy=#{policy}"
defaults
Use named defaults for values that represent a project decision, then let local configuration override them.