
Основы объектно-ориентированного и функционального программирования на Scala
Предлагаемый Вашему вниманию учебный курс является фундаментальным учебником по программированию на языке Scala и предназначен для широкого круга слушателей: от новичков с базовыми навыками программирования — до профессиональных разработчиков, пришедших в Scala из других технологий.
Программа обучения
Базовые элементы языка
Еще не имеете практического опыта в программировании? Не проблема.
Данный курс последовательно познакомит Вас со структурой 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.
На понятных практических примерах показывается эффективность функциональных подходов по сравнению с классическими императивными решениями.
$$f: X \to Y$$
Seq("one", "two", "three") .map(_.length)
Параметризация
Так и не смогли освоить вариантность и параметрический полиморфизм по зарубежным учебникам?
Успешно освоив программу данного курса, Вы перестанете бояться слова «контравариантность» и аннотаций
[+A]
. Основные концепции параметризации детально объяснены на простых и понятных примерах.
Авторский коллектив
Курс разработан действующими программными инженерами и архитекторами — создателями Circumflex и облачной образовательной платформы SAVANT.PRO.
Требования к освоению дисциплины для студентов направления подготовки «Бизнес-информатика»
Для успешного завершения дисциплины с оценкой «удовлетворительно» необходимо выполнить 35% всех заданий, с оценкой «хорошо» — 65-85%, с оценкой «отлично» — более 85% заданий.
Содержание
- Введение
- Качество программного обеспечения
- Общее представление об объектной технологии
- Пакеты и импорт
- Определение класса
- Работа с экземплярами
- Выражения и блоки
- Практика: обыкновенные дроби
- Мыслим функционально
- Наследование
- Практика: комплексные числа
- Принципы проектирования классов
- Параметризация и предотвращение ошибок
- Аттестация
- Справочная информация
- Обязательная оценка курса