Ruby Backend | YeaHub
55 subscribers
112 photos
30 videos
408 links
Теория, подготовка к интервью и курсы для Ruby разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
Channel created
📍 Начни отсюда

Подготовка к собеседованиям и поиск работы в IT — всё в одном месте.

━━━━━━━━━━
ПОДГОТОВКА К СОБЕСУ

📚 База вопросов
https://yeahub.ru/questions

💼 Реальные собесы Big Tech
https://yeahub.ru/collections

🚀 Тренажёр собеседований
https://yeahub.ru/quiz

👨🏻‍💻 Задачи с собесов (livecoding)
https://yeahub.ru/dashboard/live-coding/tasks

🧠 Ключевые слова из вакансий
https://yeahub.ru/hh-analytics

━━━━━━━━━━
ВЫБЕРИ НАПРАВЛЕНИЕ

→Backend

👩‍💻 C# https://t.me/yeahub_c_sharp_dev
👩‍💻 Java https://t.me/yeahub_java_backend
👩‍💻 Python https://t.me/yeahub_python_backend
👣 Go https://t.me/yeahub_go_backend
👩‍💻 Node.js https://t.me/yeahub_node_backend
🖥 PHP https://t.me/yeahub_php_backend
🖥 Ruby https://t.me/yeahub_ruby_backend
👣 Rust https://t.me/yeahub_rust_backend
👩‍💻 C/C++ https://t.me/yeahub_c_development

→Frontend & Mobile

🖥 Frontend https://t.me/yeahub_frontend
👩‍💻 Android https://t.me/yeahub_android_mobile
👩‍💻 iOS https://t.me/yeahub_ios_mobile
👩‍💻 GameDev https://t.me/yeahub_game_dev

→Data & AI

🤖 ML Engineer https://t.me/yeahub_machine_learning
🖥 Data Science https://t.me/yeahub_data_science

→QA / DevOps / Analyst

👩‍💻 QA https://t.me/yeahub_testing_qa
💻 DevOps https://t.me/yeahub_devops
🖥 BA/SA https://t.me/yeahub_analyst
😀 1C https://t.me/yeahub_1c

━━━━━━━━━━
РАБОТА И АКТИВНОСТИ

👨‍💻 Вакансии https://t.me/yeahub_job
📆 Митапы https://t.me/yeahub_events
📚 Общее IT https://t.me/yeahub_tech
🚀 Анонсы https://t.me/yeahub

━━━━━━━━━━
ПРОЕКТ

🚀 Сайт https://yeahub.ru
🖥 GitHub https://github.com/YeaHubTeam/yeahub-platform
📹 YouTube https://www.youtube.com/@yeahub
🎵 TikTok https://www.tiktok.com/@yeahub_it
📷 Inst https://www.instagram.com/yeahub_it
✈ Чат https://t.me/yeahub_community
Please open Telegram to view this post
VIEW IN TELEGRAM
Ruby Backend | YeaHub pinned «📍 Начни отсюда Подготовка к собеседованиям и поиск работы в IT — всё в одном месте. ━━━━━━━━━━ ПОДГОТОВКА К СОБЕСУ 📚 База вопросов https://yeahub.ru/questions 💼 Реальные собесы Big Tech https://yeahub.ru/collections 🚀 Тренажёр собеседований https://yeahub.ru/quiz…»
👨🏻‍💻 Junior Ruby разработчик

NAUMEN — аккредитованная российская ИТ‑компания, создающая платформы, продукты и облачные сервисы для бизнеса и госсектора.

Что и как?

▪️ График 5/2
▪️ Опыт от 1 до 3 лет
▪️ Удалёнка

📩 Изучить вакансию
🤓 Какой из следующих методов используется для добавления элемента в конец массива в Ruby?
Anonymous Quiz
38%
append
31%
add
8%
insert
23%
push
#ЧеКак
🤔 Библиотека Pundit

Когда дело доходит до управления доступом в приложениях на Ruby on Rails, библиотека Pundit становится одним из самых популярных и удобных инструментов. Pundit предлагает простой и понятный способ реализации авторизации, что делает его идеальным выбором для разработчиков, стремящихся к чистому и поддерживаемому коду.

🚩Основные особенности

🟠Простота использования
Pundit следует принципу "конвенция над конфигурацией", что позволяет быстро начать работу без необходимости в сложной настройке.

🟠Ясная структура
Библиотека использует классы политик (policy classes) для определения правил доступа, что делает код более организованным и легким для понимания.

🟠Легкость интеграции
Pundit легко интегрируется с существующими приложениями на Rails, позволяя вам добавлять авторизацию без значительных изменений в архитектуре приложения.

🟠Поддержка различных уровней доступа
Вы можете определять различные правила доступа для разных действий (например, просмотр, создание, редактирование и удаление), что дает гибкость в управлении правами пользователей.

Пример

Для начала работы с Pundit нужно добавить его в ваш Gemfile:

gem 'pundit'


После установки вы можете создать политику для модели, например, Post:

class PostPolicy < ApplicationPolicy
def update?
user.present? && (record.user == user || user.admin?)
end
end


Здесь мы определяем, что обновить пост может только его автор или администратор. В контроллере вы можете использовать политику следующим образом:

def update
@post = Post.find(params[:id])
authorize @post

if @post.update(post_params)
redirect_to @post, notice: 'Post was successfully updated.'
else
render :edit
end
end

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЧеКак
🤔 Какова роль подкаталогов app/controllers и app/helpers?

🟠Приложение/контроллеры. Контроллер обрабатывает веб-запрос пользователя. Rails ищет классы контроллеров в подкаталоге контроллера.
🟠Приложение/помощники: любые вспомогательные классы, необходимые для поддержки классов представления, модели и контроллера, хранятся в подкаталоге вспомогательного устройства.

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЧеКак
🤔 Чем символ отличается от переменных?

🟠Это больше похоже на строку, чем на переменную.
🟠Строка в Ruby изменяема, а символ — нет.
🟠Необходимо создать только один дубликат символа.
🟠В Ruby символы часто используются для сопоставления с перечислениями.

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЧеКак
🤔 Объясните, что такое ORM (модель объектно-отношений) в Rails?

ORM или модель отношений объектов в Rails указывает, что ваши классы сопоставляются с таблицей в базе данных, а объекты напрямую сопоставляются со строками в таблице.

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЧеКак
🤔 Упомяните, каково соглашение об именах в Rails?

🟠Переменные: При объявлении переменных все буквы пишутся строчными буквами, а слова разделяются подчеркиванием.
🟠Класс и модуль: Модули и классы используют MixedCase и не имеют подчеркивания; каждое слово начинается с заглавной буквы
🟠Таблица базы данных: Имя таблицы базы данных должно состоять из строчных букв и подчеркивания между словами, а все имена таблиц должны быть в форме множественного числа, например bill_items.
🟠Модель: Он представлен непрерывным MixedCase и всегда имеет единственное число с именем таблицы.
🟠Контроллер: Имена классов контроллеров представлены во множественном числе, так что OrdersController будет контроллером таблицы заказов.

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1