# До: явно используем ...
after_create :send_email
+ развернуть текст сохранённая копия
Один из методов библиотеки Sidekiq. Объяснение смайла
send в Ruby вызывает методы объектов по имени. Вот очевидный способ применения:
# До: явно используем присваивание. Неудобно, если полей много или они определяются в рантайме.
user.name = "Иван"
user.age = 29
# После: передаём имя атрибута параметром. Решает проблемы первого способа.
def set(field, value)
send("#{field}=", value)
end
user.set(:name, "Иван")
user.set(:age, 29)
А ещё вы наверняка видели такие строки:
after_create :send_email
Да-да, коллбэки в рельсах внутри реализованы тоже с помощью send.
Что ещё умеет send?
Тэги: ??°?°??????, ruby, send, веб-сайтов, ненормальное, программирование, разработка
[Перевод] Создайте свой сервер AWS S3 с открытым кодом
2016-12-20 21:00:23
< ...
+ развернуть текст сохранённая копия
Amazon S3 (Simple Storage Service, сервис простого хранилища) — очень мощный онлайн сервис файлового хранилища, предоставляемого Amazon Web Services. Думайте о нем, как об удаленном диске, на котором вы можете хранить файлы в директориях, получать и удалять их. Компании, такие как DropBox, Netflix, Pinterest, Slideshare, Tumblr и многие другие, полагаются на него.
Хоть сервис и отличный, его код не открыт, поэтому вы должны доверять Amazon свои данные, и хоть они предоставляют доступ к бесплатному инстансу на год, вы все равно должны ввести информацию о кредитной карте для создания аккаунта. Т.к. S3 должен знать каждый инженер-программист, я хочу, чтобы мои студенты приобрели опыт работы с ним и использовали его в своих веб-приложениях, и еще я не хочу, чтобы они за это платили. Некоторые студенты также работают во время поездок, что означает медленное Интернет-соединение и дорогой трафик, либо вообще полное отсутствие Интернета.
Читать дальше →
Тэги: amazon, api, aws, big, bucket, cloudformation, cloudwatch, container, data, docker, elb, eucalyptus, fake, helion, hpe, instance, library, linux, nix, node.js, nodejs, open, ruby, s3server, scality, script, sdk, server, service, services, simple, source, storage, tier, web, веб-сайтов, разработка
[Из песочницы] Angular2 + Websocket + RxJS + Rails5
2016-12-20 14:05:17
Всем привет! Эта статья ...
+ развернуть текст сохранённая копия
Всем привет! Эта статья о том как связать клиентское приложение Angular2 с Rails 5 сервером используя Websocket.
Читать дальше →
Тэги: angular2, angularjs, rails, reactjs, ruby, веб-сайтов, разработка
Анализ покрытия кода тестами в Ruby
2016-12-13 12:11:26
... у Coverage в Ruby.
# Мама очень заботится ...
+ развернуть текст сохранённая копия
Для начала я приведу небольшой тестовый проект из трёх классов, проанализирую его покрытие с помощью гема SimpleCov, а напоследок немного поразмышляю о том, как анализ покрытия может приносить пользу проекту, и какие есть недостатки у Coverage в Ruby.
В качестве проекта для тестирования взята небольшая история о мальчике, который может спрашивать разрешения погулять у матери и у отца.
# Мама очень заботится о своём сыне, и не разрешает ему гулять,
# если он не надел шарф. А ещё она заботится о его успеваемости, поэтому если
# сын не сделал домашнюю работу, гулять ему она тоже не разрешит.
class Mother
def permit_walk?(child)
child.scarf_put_on && child.homework_done
end
end
Читать дальше →
Тэги: coverage, it-систем, ruby, tdd, веб-сайтов, программирование, разработка, тестирование
Изучаем Ruby
2016-12-10 13:05:00
... заговорили о языке Ruby? Спросите себя прямо ... задач, а язык Ruby сделает за вас ...
+ развернуть текст сохранённая копия
Вам интересно, почему буквально все вокруг заговорили о языке Ruby? Спросите себя прямо: Вам нравится работать эффективно? Неужели многочисленные компиляторы, библиотеки, классы, которыми грузят вас другие языки программирования, приближают вас к решению конкретной задачи, восхищению коллег и толпе счастливых заказчиков? Вы хотите, чтобы язык программирования занимался техническими подробностями вместо вас? Тогда бросайте рутинную работу и приступайте к решению конкретных задач, а язык Ruby сделает за вас все остальное.
Тэги: ruby, книги