Разработка на Ruby
Изображение №1
Изображение №1

Это современный язык, на котором написаны такие известные проекты как: Twitter, Aviasales, OneTwoTrip, Onlinetours. Мир современного программирования очень подвижен, выживают лишь те языки программирования, которые активно развиваются. На Ruby скорость реализации проектов на 30-40% выше чем на Java или .NET. Язык действительно очень красивый и простой для понимания, что привлекает всё большее количество разработчиков. С нами вы изучите не только язык но и основы фреймворка Ruby on Rails.

Обучение проходит очно или онлайн, 1-2 раза в неделю, длительность занятия 2 академических часа.

Программа Базового курса (40 академических часов)


Тема 1. Введение в язык Ruby

  • Установка, знакомство со средой разработки
  • Первые шаги в Ruby: знакомство с языком и его синтаксисом
  • Первый взгляд на документацию, ruby api
  • Введение в понятия «объект», «оператор» и «метод»

Тема 2. Работа со строками, циклами, «петлями»

  • Понятие строк
  • Работа со строками
  • Методы для обработки строк
  • Логические операторы Ruby
  • Циклы
  • Операторы выбора

Тема 3. Array и Hash

  • Понятие массивов
  • Работа с массивами
  • Итераторы
  • Определение Hash
  • Работа с Hash

Тема 4. Функции, lambda, Proc, Блоки

  • Определение функций
  • Лямбда-функции
  • Определение блоков
  • Proc

Тема 5. Объектно-ориентированное программирование в Ruby

  • Основные принципы ООП
  • Понятие класса, полей и методов
  • Создание своих классов
  • readers, writers и accessors
  • Понятие модулей и пространства имён

Тема 6. Наследование в Ruby

  • Определение понятия наследования
  • Ключевое слово super
  • Полиморфизм
  • Переопределение операторов внутри классов

Тема 7. Вложенные классы и модули, Работа с файлами

  • Создание и вызов вложенных типов
  • Открытие, создание, изменения файлов
  • Конверсия типов

Тема 8. Exceptions

  • Обзор иерархии Exceptions
  • Ключевое слово raise
  • begin, rescue,ensure, end
  • Создание собственного исключения
  • Throw и Catch

Тема 9. Коллекции

  • Enumerators и Enumerables
  • Iterate, Filtrate и Transform
  • Создание коллекций

Тема 10. Работа с потоками и временем

  • Понятие многопоточности
  • Класс Thread
  • Замораживание объектов
  • Класс Time

Тема 11. Более пристальный взгляд на блоки

  • Yield
  • Явные и неявные блоки
  • Syntax sugar

Тема 12. Дебаг и логгирование

  • Приёмы дебага
  • Способы логгирования
  • Тестирование Ruby-кода

Тема 13. Метапрограммирование в Ruby

  • Понятие метапрограммирования
  • Динамический вызов методов
  • Случаи отсутствия методов, метод «отсутствия метода»
  • Методы для создания методов