Веб-разработчик Ruby

Что даст вам этот курс
3
0
Данная программа даст практические навыки программирования на Ruby и использования Ruby on Rails. Все знания и умения проверены практическим использованием в реальных проектах. Это действительно ценно!
Краткая и по существу теория, много практики и самостоятельной работы, поддержка преподавателем на семинарах и после них — компоненты вашего успеха, перехода вашего профессионализма на качественно новый уровень в самые короткие сроки. Приходите — будет сложно, но интересно!

Курс предназначен для:
- Junior-программистов, которые хотят повысить свой уровень до уровня middle-разработчика. Если вы имеете опыт около года и за это время смогли по учебникам написать свой первый проект на Ruby on Rails, но у вас нет уверенного понимания языка программирования Ruby, а также поверхностное представление о фреймворке Ruby on Rails.
- Если вы верстальщик, фронтендер или программист, который хочет сменить сферу деятельности. Данный курс будет вам полезен тем, что даст более глубокое и уверенное понимание структуры и синтаксиса языка, внутреннее взаимодействие классов и библиотек, даст практические навыки программирования на языке Ruby и создания веб-приложений на Ruby on Rails.

По итогам курса вы будите:
- понимать ООП, принципы ООП и SOLID, применять их на практике;
- разбираться в паттернах программирования;
- знать отличия парадигм программирования, писать правильный код;
- знать и применять лучшие практики в программировании;
- улучшить свои навыки программирования на Ruby;
- знать и уметь покрывать тестами свой код;
- использовать в своей работе сторонние библиотеки;
- уметь разрабатывать свои библиотеки и публиковать их;
- уверенно понимать обработку запроса и формирование ответа в Rails-приложении;
- разобраться в магии Ruby on Rails, структуре приложения;
- уметь писать бизнес-логику приложения;
- уметь разбивать большие приложения на компоненты;
- оптимизировать скорость загрузки страниц приложения;
- разрабатывать и документировать API;
- уметь работать с геоданными и отображать их на карте;
- уметь работать с асинхронными задачами;
- загружать изображения и документы в асинхронном режиме;
- деплоить приложение на сервер,

А также уметь решать практические повседневные задачи:
- парсинг данных;
- загрузка изображений;
- отправка почты;
- поиск и исправление ошибок;
- рефакторить код;
- увереннно писать тесты.

Узнает много способов и фишек для повышения скорости разработки приложения и повышения своей производительности.

Минимальные требования для поступающих:
- Базовые навыки программирования на Ruby
- Базовые навыки разработки на Ruby on Rails
- Базовые знания HTML, CSS, Javascript
- Основы работы с сетями и Linux подобными ОС
- Основы работы с Git
- Базовые знания основ работы веб-приложений
- Навыки работы с консолью разработчика в браузере
Программа обучения
Модуль 1
Ruby
Модуль 2
Ruby on Rails — возвращение к основам
Модуль 3
Ruby on Rails — погружаемся глубже
Модуль 4
Ruby on Rails на практике
Модуль 5
Проектная работа
Ruby
Оценить модуль
0
0
Императивное и декларативное программирование в Ruby. Идиомы Ruby.
Классы Enumerable, Comparable, полезные методы.
Метапрограммирование, поиск методов в дереве классов, Eigenclass, method_missing.
Принципы объектно-ориентированного программирования в Ruby. Примеры применения.
SOLID принципы в Ruby. Примеры применения.
Patterns Gang of Fourths (GoF) в Ruby. Применение паттернов
Обзор и использование классов и модулей Exception, Logger, Benchmark, Base64, BigDecimal, SecureRandom.
Тестирование, Minitest. Знакомство с RSpec. Использование RSpec в Ruby.
Regular expressions. Парсинг данных.
CSV, JSON, XML - принципы работы. Валидация по схеме.
Gem, bundler, ENV, создание гемов, rubygems.org. Awesome series.
Функцииональное программирование в Ruby. Block, Proc, Lambda.
Rake, Rake tasks, системные команды и их использование.
HTTP-протокол. Изучаем Rack. NonRails фреймворки - Sinatra, Roda, Padrino, Middleman, Hanami, обзор и прменение.
Ruby on Rails — возвращение к основам
Оценить модуль
0
0
Rails - создание приложения, генераторы. Документация по Rails. Основные части приложения. Agile разработка.
REST, request, response, codes. Middleware.
Роутинг. Namespacing in Rails. Concerns.
Тестирование. RSpec in Rails. Настройка.
Модели в Rails - разбираем подробно, Lifecycle, Callbacks, Migrations, Validations. Тестирование. Unit-тесты.
Контроллеры - рефакторинг, лучшие практики. Sessions, cookies, assigns, flash. Теcтирование.
Views - Rendering, I18n, HAML/SLIM , SCSS, CSS frameworks.
Integration tests, Capybara, Webdriver.
Rails, Javascript и AJAX, AJAX requests в Rails.
Simple form, Ransack, useful gems.
Rails API, serializers, request тесты, Postman, swagger.io.
Ruby on Rails — погружаемся глубже
Оценить модуль
0
0
DelayedJob, Active Job, Redis, Resque, Sidekiq.
StateMachines, AASM.
Отправка и просмотр emails, асинхронность.
Rails Engines, CMS, Comfortable sofa, Refinery CMS.
Аутентификация, Devise.
Авторизация, Pundit.
Caching in Rails - оптимизация приложения.
Nginx, HTTPS, Vagrant.
Rails в production - deploy с puma и capistrano.
Docker for Rails.
Ruby on Rails на практике
Оценить модуль
0
0
Картинки - загрузка изображений, Shrine, асинхронность, DropZone.
Geoservices, Yandex maps - карты и Rails.
Работа с кластеризацией в картах.
Rails with Webpacker, использование Vue с Rails.
Проектная работа
В течение курса студенты будут разрабатывать веб-приложение, представляющее из себя геоинформационную систему с использованием Яндекс карт. Студент самостоятельно выбирает интересующую его тему POI (Points of Interests). Это может быть список объектов (школ, кинотеатров, аптек, бесплатных объявлений и тд.), которые имеют гоекоординаты. Студент самостоятельно (по рекомендациям преподавателя) находит списки POI, парсит их и заносит в базу. Близкорасположенные объекты при отображении на карте объединяются в кластеры.
Веб-приложение позволяет посетителям регистрироваться, оставлять комментарии и/или добавлять новые объекты ( с возможностью их модерации ). В приложении предусмотрена возможность ограничения прав доступа для разных групп пользователей, асинхронная отправка почтовых сообщений, кабинеты администратора и модератора, личные кабинеты пользователей.
Работа над проектом ведется в течение всего курса, что позволяет студентам закрепить полученные на занятиях умения, добавить серьезный проект в портфолио, создать и поддерживать собственный опенсорсный социальный проект(по желанию и при соответствующей теме проекта), уверенно программировать на уровне middle-разработчика.


Примеры сайтов
https://xn--80abhddbmm5bieahtk5n.xn--p1ai/
https://www.mos.ru/map/
https://realty.yandex.ru/
https://www.restoran.ru/msk/map/near/
https://apteki.ru/na-karte/
Оценить модуль
0
0
Опрос по программе «Веб-разработчик Ruby»

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

Вопрос №1 из 7
Ваше имя и фамилия
Вопрос №2 из 7
Выберите один вариант ответа
Вам понятно, о чем этот курс?
оцените от 1 (не понял) до 5 (да, все ясно)
Вопрос №3 из 7
Выберите один вариант ответа
Является ли этот курс интересным лично для вас?
оцените от 1 (совсем не интересно) до 5 (круто, интересно, я бы пошел)
Вопрос №4 из 7
Выберите один вариант ответа
Как вы думаете, будет ли этот курс востребован на рынке?
оцените от 1 (совсем не интересно) до 5 (да, думаю, людям понравится)
Вопрос №5 из 7
Выберите один вариант ответа
Как вы оцениваете актуальность такой программы?
оцените от 1 (категорически устарела) до 5 (современная или даже на хайпе)
Вопрос №6 из 7
Выберите один вариант ответа
Можно ли реализовать в рамках курса предложенные идеи проекта?
оцените от 1 (не сработает, идея нерабочая) до 5 (да, проект получится отличный и полезный)
Вопрос №7 из 7
Комментарии и предложения - мы всегда им рады!