Scala for Java Developers (in Russian)

Узнайте, как начать программировать на современном объектно-функциональном языке программирования Scala "с нуля".

Ratings: 3.81 / 5.00




Description

Данный курс посвящен гибридному объектно-функциональному языку программирования Scala.

Он рассчитан на программистов на Java уровня от твердый Junior или Middle. Возможен также переход из других объектно-ориентированных языков - Python, C#, PHP.

Для прохождения курса потребуется около трех месяцев при затратах 6-10 часов в неделю при условии, что Вы хорошо понимаете базовые идеи современного промышленного программирования: шаблоны проектирования, generics, рекурсивные алгоритмы, XML/JSON, Объектно-Ориентированное Программирование (наследование, композиция, агрегация, инкапсуляция, сокрытие информации, полиморфизм).

Учебный материал состоит из 20 разделов, которые включают 200 небольших лекций и 50 тестов.

Курс серьезно насыщен терминологией современного программирования: continuation passing style, tail call optimization.

Scala включает несколько разделов, которые встречаются в других современных промышленных языках: higher-kind types, path-dependent types, macroses, parser combinators.

Платформа позволяет вести чат. Студентам рекомендуется задавать интересующие их вопросы в нем. Это позволит ответить как преподавателю, так и другим студентам.

Около 25% материала посвящено математике (алгебра, теория множеств, комбинаторика). Причина в том, что функциональные языки программирования особенно хороши при работе на стыке computer science и математики. Математический уклон позволяет показать многие глубокие идеи языка.

Курс снабжен большим количеством тестов. Их задача состоит как в проверке усвоения материала.

Удачи в изучении Scala!

What You Will Learn!

  • Разберетесь с тем, что такое Функциональное программирование
  • Поймете наиболее "темные" уголки языка: Generics, Macroses, Path Dependent Types

Who Should Attend!

  • Этот курс предназначен для уже состоявшихся программистов на каком-либо из современных объектно-ориентированных языков программирования (Java, C#, Python, ...)