В конце сентября мы провели уже четырнадцатую конференцию Ruby Russia. На ней было много полезного, и чтобы эта польза не пропала, мы оформили доклады в тексты, которые будем публиковать здесь. Автор первого Егор Шморгун, Ruby-разработчик Level Travel.
Ruby *
Динамический высокоуровневый язык программирования
Курс по Ruby+Rails. Часть 6. Роутинг и RESTful Applications
Сегодня мы поговорим о важнейшем элементе фреймворка Ruby on Rails — маршрутизации, а также посмотрим на принцип, вокруг которого она построена — архитектурный принцип REST.
Маршрутизация — это программное связывание элементов HTTP-запроса с конкретными элементами программного обеспечения сервера, которые выполняют этот запрос. Например, в ответ на определенный глагол и путь запроса вызывается определенный метод (action) определенного контроллера, внутри которого производится обработка запроса.
Курс по Ruby+Rails. Часть 5. Паттерн MVC
MVC — это главный архитектурный принцип, вокруг которого строится не только Ruby on Rails, но и любой другой фреймворк, работающий со сложными структурами данных и их отображением. Этот архитектурный паттерн появился довольно давно, на заре объектно-ориентированного программирования, но он не сразу был принят веб-программистами.
Довольно долго они работали с данными и веб-страницами в общей куче. Каждая веб-страница содержала код множества операций, которые рисовали нужный пользовательский интерфейс. Разделение обязанностей между элементами приложения отдавалась на усмотрение программиста без строгой фиксации каких-либо паттернов или стандартов. Однако с течением времени разработчики перешли к более удобной работе — с моделями и с паттерном MVC как стандартом де-факто.
Давайте подробнее разберёмся во взаимодействиях и рассмотрим каждый элемент в отдельности.
Курс по Ruby+Rails. Часть 4. Структура Rails-приложения
Сегодня начнём знакомство с Ruby on Rails. Для нашего курса это, пожалуй, самый важный инструмент, и следующие несколько лекций будут посвящены именно ему.
Сначала договоримся о терминах: мы не говорим «сайт». Вместо этого будем использовать термин «веб-приложение», потому что времена интернета с простыми статичными страничками прошли. Современные веб-приложения сложны. Для пользователя в них всегда найдётся удобный интерфейс, а заказчику приложения может даже показаться, что работы у разработчика немного. Однако под капотом прячется много движущихся частей: базы данных, генерация динамического контекста, внедрение и интеграция внешних элементов. Механическую работу программиста упрощают фреймворки. В случае Ruby — это Rails.
Истории
Курс по Ruby+Rails. Часть 3. Функциональное программирование
Привет! Сегодня мы поговорим про функциональное программирование. В Ruby реализован исключительно гибкий объектно-ориентированный стиль. И как бы он ни был хорош, он имеет свою цену: иногда для реализации сложных алгоритмов и систем он слишком гибкий.
Курс по Ruby+Rails. Часть 2. Объектно-ориентированное программирование
В этой лекции мы рассмотрим объектно-ориентированный стиль в Ruby: поговорим об объектах, классах и модулях, а также вспомним три принципа объектно-ориентированного программирования.
RubyRussia 2022: как выбрать себе доклад?
Самое большое (по версии Юкихиро Мацумото) русскоязычное событие по Ruby и Rails случится уже вот-вот: 30 сентября и 1 октября. Чтобы ориентироваться было легче, мы подробно описали каждый доклад, оценили их по сложности и обозначили, кому конкретно они будут полезны. Проверяйте, попали ли мы в ваши ожидания и интересы, и выбирайте, что посмотреть на конференции. И не забывайте регистрироваться, конечно!
Курс по Ruby+Rails. Часть 1. Императивное программирование
Компания Evrone работает на рынке веб-разработки уже 13 лет. Ruby on Rails — одна из технологий, которую мы используем часто, поэтому накопили внушительный багаж знаний — от продвинутых приёмов программирования на Ruby до эффективного использования «магии» Rails.
Чтобы делиться этими знаниями, мы запускали в тестовом режиме Evrone Academy — платформу для обучения программированию. Сейчас она на паузе, но мы хотим публично поделиться лекциями и знаниями с теми, кто хочет поближе познакомиться с Ruby уже сейчас, в привычной хабра-обстановке.
Ferrum — бесстрашный Ruby-драйвер для Chrome с открытым исходным кодом
Если вы хотите запустить интеграционные тесты на своем сайте, у вас есть три варианта: Poltergeist, Selenium и новое секретное оружие — Ferrum.
Разработка Rails приложений с использованием Hotwire
Если вы разрабатываете SPA приложения на Ruby on Rails, вы, скорее всего, используете какой-нибудь классный JS-фреймворк для быстрого обновления пользовательского интерфейса без перезагрузки страницы. И без JS фреймворка на фронтенде действительно мало что можно сделать, это своего рода стандарт в наши дни. Пока в Rails не появился Hotwire. С Hotwire вы можете получить быстрое и отзывчивое веб-приложение, но без написания тонны Javascript кода. Звучит здорово, но что такое Hotwire?
Serverless хостинг в AWS для рубиста
В первой части мы разворачивали приложение в Oracle cloud. Теперь попробуем сделать то же самое в AWS и зададимся вопросом так ли уж нужны Rails. Итак у нас: SPA приложение, REST api, Terraform как средство деплоя и управления ресурсами в облаке.
Serverless хостинг в Oracle Cloud для рубиста
Serverless хостинг в Oracle Cloud для рубиста
Почему бы и не поддаться современным веяниям, и не реализовать REST api на лямбдах?
Проверить так ли уж необходимы Rails и попробовать минимизировать количество зависимостей.
Попробовать декомпозировать веб приложение в терминах облачных сервисов.
Oracle free tier, хм, насколько это бесплатно в реальности?
Как заставить интерпретатор Ruby выполнить программу, написанную на естественном языке
Многие языки программирования позиционируют себя как почти естественные. Ruby не отстает: язык для людей и всё такое. Однако, первый же гайд по Rails (да, Ruby это всё еще Rails) предложит вам что–то такое:
class UserController < ApplicationController
end
То есть это вот абсолютно естественный английский текст, правда? Кажется, нас обманули: было бы здорово писать код на полностью естественном языке, например таком:
assign variable a value 1 assign variable b value 2 sum a with b
Давайте попробуем запустить эту программу!
Ближайшие события
Делаем патч для Pods библиотеки
Приветствую друзья на связи автор телеграм канала ReactNative - info, недавно столкнулся с одной интересной проблемой, сборка архива для iOS приложения постоянно завершалась такой ошибкой:
error: Abort trap: 6 (in target 'iOSPhotoEditor' from project 'Pods')
GraphQL без N+1 это легко благодаря N1Loader
N1Loader разработан для легкого избежания N+1 проблемы
любого типа. К счатью, гем очень легко интегрировать в GraphQL
API. Без дальнейших отлагательств, давайте рассмотрим простой, но самодостаточный пример.
Ruby-Дайджест за неделю (1 мар — 7 мар)
Обновленный формат руби-дайджеста. Открытие чата. И другой контент...
Ruby-Дайджест за две недели (21 фев — 1 мар)
Для новичков и стажеров была представлена подборка интересного обучающего материала и литературы.
А уже состоявшимся разработчикам можно почитать новости из сферы и узнать о обновлениях гемов.
Ruby-Дайджест за две недели (14 фев — 21 фев)
Для новичков и стажеров была представлена подборка интересного обучающего материала и литературы.
А уже состоявшимся разработчикам можно почитать новости из сферы и узнать о обновлениях гемов.
Пишем социальную сеть на Ruby on Rails. Часть 2
Прошлая статья:
Пишем социальную сеть на Ruby on Rails. Часть 1
Всем привет, сегодня вторая часть серии статей "Пишем социальную сеть на Ruby on Rails" и сегодня я планирую добавить CI/CD
.
Вклад авторов
alizar 536.0Homakov 300.6kronos 260.0Iskin 239.0DenisVitman 231.0Lxx 208.0dustalov 187.0vorona_karabuta 170.2iv_s 163.0