Школы

Рейтинг на основе отзывов, авторитетности и популярности

Подборки

Полезные и актуальные курсы, отобранные вручную

Язык Scala для Java-разработчиков

Сложность
Сложность
Продвинутый
Тип обучения
Тип обучения
Курс
Формат обучения
Формат обучения
С проверкой домашнего задания
Трудоустройство
Трудоустройство
Нет
Сертификат
Сертификат
Есть

Стоимость курса

46 900 ₽
Нет рассрочки
Язык Scala в последние годы набирает популярность не только в программировании, но в enterprise-разработке. К его преимуществам относятся использование самых современных нововведений в языки программирования и обширная поддержка функционального подхода к разработке. Это дает возможность повысить эффективность разработки, создавая очень краткий и эффективный код. Код на Scala компилируется в Java байт-код и выполняется внутри JVM, что обеспечивает отличную совместимость с существующими библиотеками и инструментами Java.
Слушатели получат представление о специфике и особенностях языка Scala, его преимуществах и сложных местах.
Курс включает рассмотрение операторов и типов данных Scala, изучение основных структур данных, таких как массивы, map, tuples, использование объектно-ориентированного и функционального программирования, работу с коллекциями Scala, применение pattern matching, case-классов, generic-типов и неявных преобразований.
Предлагается большое количество практических упражнений.

Что вы получите после обучения

Навыки
1
Scala
2
JVM
Сертификат

Школа

Оценка и обучение ИТ-специалистов по ключевым направлениям разработки программного обеспечения. Курсы от экспертов-практиков по языкам программирования, системному и бизнес-анализу, архитектуре ПО, ручному и автоматизированному тестированию ПО, Big Data и машинному обучению, управлению проектами и Agile. Действует скидка 10% на обучение физических лиц.

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

Разбираемые темы:
1. Введение в Scala.
2. Инструкции, операторы и типы:
Условные операторы;
Циклы;
Функции;
Переменные;
Операторы;
Тип Unit;
Типы функций;
Типы Null, Nothing, Any, AnyRef и AnyVal;
Исключения;
3. Arrays, maps, tuples:
Создание, добавление и удаление элементов массива;
Доступ к элементам массива;
Массивы фиксированной и вариативной длины;
Многомерные массивы;
Операции с массивами;
Сортировка массива;
Конструирование и доступ в ассоциативным таблицам;
Итерирование, изменение, сортировка ассоциативных таблиц;
Кортежи;
Зиппирование;
4. Классы и наследование:
Классы;
Свойства с геттерами и сеттерами;
Использование скобок при вызове методов;
Свойства только с геттерами;
Вспомогательные конструкторы;
Основной конструктор;
Вложенные классы;
Расширение класса;
Переопределение методов;
Проверка и приведение типа;
Вызов конструктора суперкласса;
Переопределение полей;
Анонимные подклассы;
Абстрактные поля;
Порядок конструирования и ранние определения;
Иерархия наследования;
Сравнение объектов на равенство;
5. Объекты:
Синглтоны;
Объекты-компаньоны;
Объекты, расширяющие класс или трейт;
Перечисления;
Пакеты-объекты;
Методы apply и unapply;
Ленивые объекты;
Объекты, использующие несколько трейтов;
6. Трейты:
Трейты как интерфейсы;
Трейты с конкретной имплементацией;
Переопределение абстрактных методов в трейтах;
Конкретные и абстрактные поля в трейтах;
Порядок конструирования трейта;
Инициализация полей трейта;
Трейты, расширяющие классы;
Self-типы;
7. Функции:
Функции как переменные;
Аргументы по умолчанию и именованные аргументы;
Функции без возвращаемого значения;
Анонимные функции;
Функции с параметрами-функциями;
Замыкания;
Функциональные интерфейсы;
Каррирование;
Передача функции как параметра в виде блока кода;
Использование return;
8. Коллекции:
Трейты коллекций в Скала: Map, Set и Seq;
Изменяемые и неизменяемые коллекции;
Последовательности;
Списки;
Изменяемые списки;
Множества;
Операторы для работы с коллекциями;
Стандартные методы работы с коллекциями;
Использование функций map, reduce, fold и scan;
Зиппирование;
Итераторы;
Потоки данных;
Потокобезопасные коллекции;
Параллельные вычисления в коллекциях;
Взаимодействие с коллекциями Java;
9. Pattern matching:
Использование паттерн матчинга;
Переменные в паттернах;
Паттерны-типы;
Сравнение с массивами, списками и кортежами;
Регурярные выражения;
Экстракторы;
Паттерны в определении переменных;
Паттерны в выражениях for;
Case классы, тип Option и partial функции;
10. Сase-классы:
Метод copy и именованные параметры;
Защищенные классы;
Тип Option;
Частично определенные функции;
11. Generics:
Дженерик-классы;
Дженерик-функции;
Ограничения типов, вариативные типы +T, -T;
Использование _ вместо типа;
12. Неявные преобразования:
Ключевое слово implicit для определения неявного приведения типа;
Импортирование и использование неявных преобразований;
Неявные параметры.

Рейтинг курса

4
Может быть интересно
Язык Scala для Java-разработчиков
На сайт курса

Язык Scala для Java-разработчиков