Разработка на RoR

1.82K
.
No-Tactic
Модно, смотрю стало вести свои блоги разработчикам начинающим, я тоже буду моден

По ходу учебы буду писать тут всякие интересные плюшки из языка Ruby и фреймворка Rails

для начала напишу то что мне понравилось из основ Ruby:
Скобки в методах и оперторах опциональны. Хочешь ставь, хочешь нет
Символ ; в конце строки опционален
Конструкция if-else
Тут все как обычно, кроме
a = 0
puts "Hello, world" if a == 0

вот так вот можно написать если блок if содержит только одну строку кода

у массивов есть фича:

arr = [0, 1, 2, 3, 4, 5, 6, 7]
puts arr[5]  # => 5
puts arr[-3] # => 5


проверка есть ли элемент в массиве
arr.include?(5)
#а можно без скобочек
arr.include? 5
.
No-Tactic (25.07.2013 / 13:23)
Модно, смотрю стало вести свои блоги разработчикам начинающим, я тоже буду моден

По ходу учебы буду писать тут всякие интересные плюшки из языка Ruby и фреймворка Rails

для начала напиш
это скриптовый язык?
.
Fenixrus, да.
блин, изменял свой пост а тут ты написал =(
.
пусть куратора дадут
.
В Руби не принято использовать отрицание как в пхп (например if($a != $b))
в руби такая запись будет выглядеть:

unless a == b
    #do somethink


нет циклов, кроме while и until(если цикл while выполняется пока условие истинно, то тут наоборот, пока ложно), вместо них используются итераторы.

Например

10.times { puts "hello, world" }
  10.times { |i| puts i }

times - это метод класса Integer, |i| - это аргумент(вовсе не обязательный, к слову) в данном случае он является счетчиком
можно написать многострочный блок
10.times do |i|
    puts i
    puts "Привет, мир"
  end
.
у массивов свой итератор - each
он выглядит так:
some_array.each { |i| puts i }

в данном случае i - это элемент массива
.
как по мне сильно много ACSII символов, изза этого тяжело код читать.
.
No-Tactic
ассоциативных массивов нет.
Вместо них хеши
#можно так
some_hash = { :first => "Первый", :second => "Второй" }
#а можно и так
some_hash = { "first" => "Первый", "second" => "Второй" }
# есть еще интересный способ, но о нем расскажу позже

В первом случае использовались символы, во втором - строки.
О разнице между ними можно почитать тут http://habrahabr.ru/post/48993/

так, вроде самое основное рассказал - дальше перейдем к сладенькому
.
flaky, в смысле? Как по мне. Код очень читабельный
.
Koenig
(\/)____o_O____(\/)
No-Tactic, процедурный стиль без фв есть?
Всего: 145