2. Зачем Ruby?
Простые и понятные программы
Простой и понятный синтаксис
Малое время разработки
3.
4.
5. Историческая справка
1993 — начало разработки (Юкихиро
Мацумото a.k.a. Matz)
Название навеяно языком Perl
Цель разработки — «настоящий ОО» язык
программирования
1995 — первая версия в Японии
1997 — первая документация in English
2004 — появление Ruby on Rails
8. Ruby — динамический
def len(list)
x = 0
list.each { |_element| x += 1 }
end
public static int len(List list)
{
int x = 0;
Iterator listIterator =
list.iterator();
while(listIterator.hasNext()) {
x += 1;
}
}
9. Ruby — компактный
class Circle
attr_accessor :center, :radius
end
class Circle {
private Coordinate center, float radius;
public void setCenter(Coordinate center){
this.center = center;
}
public Coordinate getCenter(){
return center;
}
public void setRadius(float radius){
this.radius = radius;
}
public Coordinate getRadius(){
return radius;
}
}
18. • присваивание
• составное присваивание
• возведение в степень
• равно
• не равно
Математические операции и присваивание
> a = 1
=> 1
> a += 2
=> 3
> b = a**2
=> 9
> b == a
=> false
> b != a
=> true
19. Условный оператор
if a > b
puts "Greater"
end
if num.odd?
puts "Нечётное"
else
puts "Чётное"
end
str = num.odd? ? 'Odd' : 'Even'
20. Условный оператор
unless you_lose do
puts 'Grab your prize here'
end
you_win = false
puts 'You win!' if you_win
you_lose = !you_win
puts 'You win!' unless you_lose
25. Классы, методы
class Person < Mammal
@@amount = 0
ADULT_AGE = 18
def initialize(name, age)
@name, @age = name, age
@@amount += 1
end
def adult?
@age >= ADULT_AGE
end
end
26. Литература
и ссылки
Programming Ruby 1.9 & 2.0
http://tryruby.org
Ruby Programming Language (O'Reilly)
https://github.com/bbatsov/ruby-style-guide
http://rubykoans.com
http://rubyweekly.com
27. Домашнее задание
1.http://tryruby.org
2.В одном массиве записан рост некоторых
студентов, а в другом (с тем же числом элементов)
- их фамилии в том же порядке, в котором указан
рост. Известно, что все студенты разного роста.
Напечатайте фамилию самого высокого студента.
3.Даны две строки. Определите, сколько начальных
символов первой строки совпадает с начальными
символами второй. Рассмотрите два случая: а)
известно, что строки разные; б) строки могут
совпасть.