Top Banner
Introduction to Ruby Andrew Liu
25
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Introduction to ruby

Introduction to Ruby

Andrew Liu

Page 2: Introduction to ruby

Ruby is…

• Designed by Yukihiro Matsumoto (松本行弘)

– "I wanted a scripting language that was more powerful than Perl, and more object-oriented than Python. That's why I decided to design my own language“

• An object-oriented scripting language

• Easy to learn!

Page 3: Introduction to ruby

Philosophy

• Often people, especially computer engineers, focus on the machines. They think, "By doing this, the machine will run faster. By doing this, the machine will run more effectively. By doing this, the machine will something something something."

• They are focusing on machines. But in fact we need to focus on humans, on how humans care about doing programming or operating the application of the machines. We are the masters. They are the slaves.

Page 4: Introduction to ruby
Page 5: Introduction to ruby

Naming Convention

• CamelCase

– Class names, module names

• ALLCAPITAL

– Constants

• words_with_underscore

– Method names, variable names

• $ prefix

– Global variables

Page 6: Introduction to ruby

Everything is an object!

Page 7: Introduction to ruby

Strings

Page 8: Introduction to ruby

String Methods

Page 9: Introduction to ruby

Array

Page 10: Introduction to ruby

What if I want to reverse the array?

http://ruby-doc.org/core/

Page 11: Introduction to ruby
Page 12: Introduction to ruby

Range

Page 13: Introduction to ruby

Hash

Page 14: Introduction to ruby

Block

Page 15: Introduction to ruby

How does it work?

Page 16: Introduction to ruby

More About Class

Page 17: Introduction to ruby

More About Class

Page 18: Introduction to ruby

Class

• Variable

– @@ prefix: Shared by all class instances

– @ prefix: Contains instances information

– No prefix: normal variables

• Methods

– self. Prefix: Class methods, as known as static method

– No prefix: Instance methods, must be called with a instance

Page 19: Introduction to ruby

Creating Instance

Page 20: Introduction to ruby
Page 21: Introduction to ruby

Flow Control

Page 22: Introduction to ruby

Cases

Page 23: Introduction to ruby

While

Page 24: Introduction to ruby

For

Page 25: Introduction to ruby

Resources

• Programming Ruby (Bible)

– http://www.ruby-doc.org/docs/ProgrammingRuby/

• Ruby API Document

– http://ruby-doc.org/core/

• TryRuby

– http://tryruby.org/

• Ruby Warrior

– https://github.com/ryanb/ruby-warrior