IRohitable | Ruby Notes : 1

Ruby Notes : 1

by Rohit 24. August 2012 18:17

 

This is the first post of Ruby Notes series. This series and the later, Rails Notes, is a collection of my personal learning notes prepared while learning Ruby and Rails. These notes are the extract of the several books I referred while learning Ruby. These notes were lying on my shelf from quite some time when one bright sunny day I realised to publish them in the hope to help large number of beginners and enthusiasts needing quick reference to relevant topics only.

In this post:

  1. The Ruby style of Coding.
  2. Proper use of Comments.
  3. When to use Parentheses and when to ignore?
  4. How much code in one line? Single-line or multi-line.

THE RUBY STYLE OF CODING

The Ruby style of coding is built on few simple ideas like:

  • The code should be clear and itself tell the reader what exactly it is trying to do.
  • The code should be concise.

To adapt these simple ideas into practice, Ruby stresses on Convention over Configuration from the very start. In Ruby, you indent your code with two spaces per level. The rule is not to use Tabs for indentation.

The Ruby naming convention in short says: Camels for Classes, Snakes everywhere.

This means the Class names should use Camel casing while the rest of the things like methods, arguments and variables should use lower case. For example:

class Customer   
   attr_accessor  :name,  :address,  :place

 
   def initialize(name, address, place)
       @name = name
       @address = address
       @place = place
   end


   def name_length
       puts name.size
   end
end

For constants there is a mixed belief. However, the Ruby community recommends all uppercase with words separated by underscore. For example:

ANNUAL_DISCOUNT = 20

 

PROPER USE OF COMMENTS

Ruby's philosophy says: "Good code speaks for itself". Therefore, use comments only when necessary not just everywhere.

(1) Keep background information separate from instructions:

# Author: 
# Copyright 2012:
#
# An example of Ruby class

 

(2) Not every line requires comment:

number += 1  # Add one to number

 

(3) An example of proper use of comment:

return 0 if divisor == 0  # Avoid division by zero

 

WHEN TO USE PARENTHESES AND WHEN TO IGNORE?

There is no rigid rule but this is what the Ruby community prefers:

(1) Use Parentheses with the arguments. For example:

def increment_number (number)
   number += 1
   puts number
end

(2) Ignore Parentheses in this type of situation:

def name_length()
   puts name.size
end

 Use instead

def name_length
   puts name.size
end

 

HOW MUCH CODE IN ONE LINE? SINGLE-LINE OR MULTI-LINE?

Preferably one code statement per line is recommended for good readability. However, in certain situations you can fold cold block into one if it doesn't compromise readability. Note how this code can be written with folded block of code without compromising readability:

 

Style 1:

5.times do |num|
  puts "The number is #{num}"
end

Style 2:

5.times { |num|  puts "The number is #{num}"  }


Technorati : ,
Del.icio.us : ,

Tags: ,

Ruby on Rails

Pingbacks and trackbacks (1)+

Add comment

biuquote
  • Comment
  • Preview
Loading

About Rohit Prakash

Software Craftsman and Technology Enthusiast (not a Guru).

Technical Reviewer of a book on open-source programming IDE.

My day job keeps me engaged with Microsoft Technologies (ASP.NET, C# and SQL Server) hence most of the posts are related to these technologies. I, however, love to play with other open-source technologies. I also have interest in IT Security and therefore you will find posts on Malware Analysis, Cryptography and Anti-Virus programs.

Few people have contacted me for Guest Posts. You will find these posts as well.

 

You can reach me at:

rohit [at] irohitable.com

-----------------------------------------

LinkedIn:

in.linkedin.com/in/rohitpkhare

Twitter:

@BuzzRohit

-----------------------------------------
Google+

Search with this name: Rohit Prakash

Month List

Protected by Copyscape Web Plagiarism Software