августа 9, 2010 | Published in Ruby, Основы
Модули являются отличным решением для группирования методов, классов и констант вместе.
Использую модули можно извлечь две значительные выгоды:
-Модули обеспечивают пространства имен и, следовательно, предотвращают возникающие с именованием методов, классов и констант ошибки.
-Модули реализуют примеси (mixins) — элегантное решение заменяющее множественное наследование.
Модули определяют пространства имен, песочницу в которой ваши методы и константы могут работать без возникновения проблем с другими методами и константами, которые имеют такие же имена.
Так выглядит модуль:
module Identifier
statement1
statement2
………..
end
Read the rest of this entry »
июля 7, 2010 | Published in Ruby
Ruby очень быстро развивающийся язык программирования, что несомненно очень прекрасно, но имеется один недостаток, при очередном обновлении Ruby до новой версии, ваши старые приложения могут не заработать. Что же делать? Есть два выхода из ситуации, первый — это переписывание приложения с учетом особенностей новой версии интерпретатора, а затем тестирование, исправление ошибок и т.д. Разумеется, данный способ очень плох. Второй способ решения данной проблемы является совершенным решением, он заключается в установке нескольких версий Ruby на вашу машину.
Для установки нескольких версий или реализаций Ruby на один компьютер следует использовать такой замечательный консольный инструмент как (Менеджер версий Ruby), который позволяет не просто установить несколько версий интерпретатора или несколько различных реализаций, но и создавать сколько-угодно окружений для разработки и проверки совместимости вашего приложения с различными версиями и реализациями Ruby, Ruby on Rails или другими Gem’ами. Read the rest of this entry »
июня 26, 2010 | Published in Ruby, Ruby Gems, Ruby on Rails, Основы
Я решил описать установку Ruby, RubyGems и Ruby on Rails отдельной статьей. Знаю, немножко запоздало, ведь блог ориентирован главным образом на новичков и следовало бы начать со статьи описывающей инсталляцию, но…
Установка Ruby
Прежде, чем вы сможете создать свое первое приложение на Rails, вам необходимо установить на свой компьютер Ruby, RubyGems и собственно Rails.
Read the rest of this entry »
мая 26, 2010 | Published in Ruby, Основы
В очередной раз поражаюсь тому, на сколько Ruby интересный и изящно спроектированный язык. Например, вы знали, что стандартными методами преобразования типов данных to_i и to_s можно преобразовывать систему счисления. Для того, чтобы было понятней приведу примеры:
puts 2.to_s(2) #=> 10
puts 11.to_s(2) #=> 1011
puts 'aa'.to_i(16) #=> 170
puts 'fe'.to_i(16) #=> 254
a = 0xff+0xee #=> 493
b= a.to_s(16) #=> 1ed
puts b
puts b.to_i(16) #=> 493
class Fixnum
def to_hex
"0x" << self.to_s(16)
end
def to_binary
"0b" << self.to_s(2)
end
end
puts 16.to_hex #=> 0x10
puts (16+16).to_hex #=> 0x20
puts 3.to_binary #=> 0b11
Вы можете сами придумать любую систему счисления (пятнядцетиричную, троичную и т.д.) и написать метод для преобразования чисел по аналогии с to_hex и to_binary.
мая 24, 2010 | Published in Ruby, Основы
Модуль Enumerable в Ruby представляет собой хранилище методов для работы с исчисляемыми типами данных: массивами, хэшами и диапазонами и включается в определение всех этих классов. Enumerable содержит огромное количество методов для работы с исчисляемыми типами и решения различных задач, в случае, если вам понадобится объявить свой метод, который будет доступен для всех исчисляемых типов, вы можете сделать это в определении модуля Enumerable:
module Enumerable
def my_method
...
end
end
Но сейчас беседа пойдет не об этом, а о том, как могут быть полезны предоставляемые модулем Enumerable методы.
В следующих примерах мы будем использовать следующий массив, который содержит названия различных транспортных средств:
vehicles = %w[ car truck boat plane helicopter bike ]
Read the rest of this entry »
мая 6, 2010 | Published in Ruby, Основы
Ruby очень богат на циклы, итераторы и другие синтаксические конструкции. Очень часто изучающие Ruby тратят много времени на изучение всех этих конструкций. Этому способствует даже не так разнообразие и богатство языка Ruby, как то, что в книгах и сайтах посвященных азам программирования на языке Ruby мало внимания уделяется освещению всех способов создания циклов и итераторов как не самых интересных для изучающего частей языка.
В этой статье я познакомлю вас со всеми знакомыми мне циклами и некоторыми часто используемыми итераторами и приведу простые примеры их использования. Read the rest of this entry »
мая 5, 2010 | Published in Ruby, Основы
Итераторы являются не чем иным, как методами, поддерживающими коллекции. Коллекциями называются объекты, которые хранят в себе группы элементов данных. В массивы и хэши в Ruby также могут называться коллекциями, поскольку полностью соответствую вышеописанному определению коллекций.
Итераторы – это методы, которые последовательно проходят по всем элементам коллекции (массива или хэша) при этом выполняя над ними определенные операции. В этой статье мы рассмотрим два итератора – это итераторы each и collect. Давайте приступим! Read the rest of this entry »
мая 4, 2010 | Published in Ruby, Основы
Каждое выражение и каждый объект в Ruby имеет булево значение, что означает, что каждый объект и каждое выражение оцениваются как true или как false. Это делает true и false довольно специфическими значениями в языке Ruby. При всем при этом, true и false являются не просто значениями, а объектами Ruby.
Объекты True и False
Вы, наверняка, знаете, что true и false — это зарезервированные слова Ruby, что означает, что вы не сможете использовать их как имена для переменных или методов. Но помимо этого, оба true и false также являются абсолютно полноценными объектами. Ruby имеет 2 специальных класса от которых происходят эти объекты, а именно: Read the rest of this entry »
мая 3, 2010 | Published in Ruby Gems
Перевод оффициальной документации с
LESS — Ruby gem, позволяющий ускорить и сделать более удобным написание CSS-кода для дизайна ваших веб приложений. LESS даёт возможность изящно обойти различные неудобства работы на «чистом» CSS. Его разработчики находились под впечатлением от других подобных разработок и в большей мере от любимого многими SASS.
Зачем же понадобилось создавать LESS, если существует и чрезвычайно популярен SASS?
Все просто: дело в синтаксисе!
SASS действительно очень удобен, но у этого удобства есть и высокая цена — изучение нового синтаксиса и полная переработка вашего CSS кода в код на SASS. Read the rest of this entry »