Курс Scala

Наразі набір на цей курс не проводиться. Перегляньте інші курси

  • Online
  • Для початківців
  • Scala
Навчальний центр: ITEA – IT Education Academy
Формат:Курс
Тривалість навчання:42 годин
Початок курсу:Дата формується
Вартість навчання:11 100 UAH за курс

Доступна оплата частинами

Курс спрямований на вивчення мови Scala. Під час занять вивчається розробка, тестування та налагодження додатків на Scala, знайомство як з функціональними, так і з об'єктно-орієнтованими конструкціями мови.

Програма курсу

Загальна характеристика Scala

  • Історія мови та зв'язок з Java
  • Використання REPL
  • Запуск Scala-програм із командного рядка
  • Використання IntelliJ IDEA + SBT для створення Scala-програм

Змінні та значення в Scala

  • Variables
  • Values
  • Lazy values

Оператори

  • Типи операторів
  • Створення і використання
  • Порядок черговості

Рядки (Strings)

  • Створення рядків і робота з ними
  • Інтерполяція
  • "s" інтерполятор
  • "f" інтерполятор
  • "raw" інтерполятор

Типи даних

  • Вивід типів
  • Ієрархія типів
  • Типи Any, AnyVal, AnyRef
  • Типи значень (Value types)
  • Тип Nothing
  • Scala Null

Класи й об'єкти

  • ООП в Scala
  • Клас
  • Об'єкт
  • Об'єкт компаньйон
  • Trait
  • Домішки й множинне спадкування, правило лінералізації
  • Вкладений клас
  • Package object
  • Enums

Узагальнення

  • Синтаксис
  • Коваріантність, контрваріантність, інваріантність
  • Upper/lower type bounds
  • Ключове слово type
  • F[_]

ADT & Зіставлення зі зразком (Pattern matching)

  • Кортежі (Tuples)
  • Кейс класи
  • Запечатані (Sealed) класи
  • Кейс об'єкти
  • Зіставлення зі зразком

Обробка помилок

  • Як працюють винятки в Scala
  • Ієрархія винятків
  • Способи обробки винятків
  • Функціональний стиль: Option, Either, Try

Функції й методи

  • Рекурсія
  • Side effect, pure functions
  • Функції вищого порядку (Higher-order functions)
  • Анонімні функції
  • Часткові функції
  • Часткове застосування функцій
  • Currying
  • Функціональні комбінатори

Масиви

  • Створення і використання масивів
  • Одновимірні масиви
  • Багатовимірні масиви
  • Операції над масивами

Структури даних

  • Ієрархія колекцій
  • Списки (Seq, List, Nil, Vector)
  • Набір (Set)
  • Асоціативні масиви (Map)
  • Операції над колекціями
  • Порівняння продуктивності колекцій

Монади в Scala

  • Визначення монади
  • Приклади монад
  • For-comprehension

Implicits

  • Неявні параметри
  • Неявні перетворення
  • Неявні класи
  • Type classes

Асинхронний код

  • Використання Future та ExecutionContext
  • Callbacks
  • Projections
  • Promises

SBT (Scala Build Tool)

  • Ієрархія файлів
  • Використання бібліотек
  • Використання плагінів
  • Розділення коду на модулі
  • Компіляція і запуск

Вимоги для проходження курсу

  • Знання основ програмування на будь-якій популярній мові (Java, C#, Python)
  • Розуміння ООП

Особливості курсу

  • Вечірні заняття 2-3 рази на тиждень
  • Практика отриманих знань

Викладачі курсу

  • Антон Мальцев - Java Developer
  • Денис Ковбій - Java Developer
  • Андрій Родіонов - Java Developer
  • Максим Коновалюк - Java Developer

Читайте нас в Telegram, щоб не пропустити анонси нових курсів.