Язык программирования Scala

Материал предоставлен https://it.rfei.ru

Содержание

Введение
Этот модуль не является обязательным для завершения учебного курса.
Подготовка рабочего окружения
Этот модуль не является обязательным для завершения учебного курса.
Создание проекта
Этот модуль не является обязательным для завершения учебного курса.
Общее представление об объектной технологии
Пакеты и импорт
Определение класса
Работа с экземплярами
Выражения и блоки
Практика: обыкновенные дроби
Мыслим функционально
Этот модуль не является обязательным для завершения учебного курса.
Наследование
Этот модуль не является обязательным для завершения учебного курса.
Практика: комплексные числа
Этот модуль не является обязательным для завершения учебного курса.
Принципы проектирования классов
Этот модуль не является обязательным для завершения учебного курса.
Параметризация и предотвращение ошибок
Этот модуль не является обязательным для завершения учебного курса.
Итоговая аттестация
Справочная информация
Этот модуль не является обязательным для завершения учебного курса.
Обязательная оценка курса

Предлагаемый Вашему вниманию учебный курс является фундаментальным учебником по программированию на языке Scala и предназначен для широкого круга слушателей: от новичков с базовыми навыками программирования — до профессиональных разработчиков, пришедших в Scala из других технологий.

Программа обучения

Базовые элементы языка

def passingScore(mark: String) =
  mark match {
    case "5+" => 95
    case "5" => 90
    case "4" => 80
    case "3" => 70
    case "2" => 60
    case m =>
      throw new Exception(
        "Unknown mark " + m)
  }

Еще не имеете практического опыта в программировании? Не проблема.

Данный курс последовательно познакомит Вас со структурой Scala-приложений, будут рассмотрены основные языковые конструкции: условные выражения, циклы, сопоставления по шаблону и многое другое.

Даже если Вы уже программировали на Scala, у Вас есть шанс открыть для себя что-то новое.

Объектно-ориентированный анализ и проектирование

class Circle(val radius: Double)
  extends Shape

Основное внимание уделяется вопросам создания программного обеспечения на Scala, качественного с самого начала. Объектная технология разработки на Scala рассматривается как основной фактор достижения расширяемости и модульности приложений.

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

Функциональное программирование

$$f: X \to Y$$

Seq("one", "two", "three")
  .map(_.length)

Курс познакомит Вас с основами функционального программирования на Scala.

На понятных практических примерах показывается эффективность функциональных подходов по сравнению с классическими императивными решениями.

Параметризация

Так и не смогли освоить вариантность и параметрический полиморфизм по зарубежным учебникам?

Успешно освоив программу данного курса, Вы перестанете бояться слова «контравариантность» и аннотаций [+A]. Основные концепции параметризации детально объяснены на простых и понятных примерах.

Авторский коллектив

Курс разработан действующими программными инженерами и архитекторами — создателями Circumflex.

Требования к освоению дисциплины для студентов направления подготовки “Бизнес-информатика”

Для успешного завершения дисциплины с оценкой “удовлетворительно” необходимо выполнить 35% всех заданий, с оценкой “хорошо” — 65-85%, с оценкой “отлично” — более 85% заданий.