1

Step 1

Intro

2

Step 2

OOP - I: No inheritance

3

Step 3

OOP - II: "operator overloading"

4

Step 4

Type - I. Scala Type Hierarchy

5

Step 5

Control - I: buil-in control flow structures, expression-oriented programming

6

Step 6

Set theory - I: Множество, Отношение, операции над множествами

7

Step 7

Functional Programming - I: Syntax

8

Step 8

Generics - I: without higher-kind types

9

Step 9

Collections - I: Array, List, Set, Map

10

Step 10

Комбинаторика: порождение комбинаторных объектов

11

Step 11

Алгебра: магма, полугруппа, моноид, группа

12

Step 12

Tuples

13

Step 13

Lazyness

14

Step 14

For-loops and for-comprehensions

15

Step 15

Set theory - II: Морфизмы

16

Step 16

Implicits

17

Step 17

Control - II: create your own control flow structures

18

Step 18

Pattern matching

19

Step 19

String interpolation

20

Step 20

Numbers and Strings

21

Step 21

Interacting with Java

22

Step 22

Functional - II: tailcall, trampoline, corecursion

23

Step 23

Compilations

24

Step 24

Structural types

25

Step 25

Category Theory - I

26

Step 26

Exception handling

1

Step 1

Intro

2

Step 2

OOP - I: No inheritance

3

Step 3

OOP - II: "operator overloading"

4

Step 4

Type - I. Scala Type Hierarchy

5

Step 5

Control - I: buil-in control flow structures, expression-oriented programming

6

Step 6

Set theory - I: Множество, Отношение, операции над множествами

7

Step 7

Functional Programming - I: Syntax

8

Step 8

Generics - I: without higher-kind types

9

Step 9

Collections - I: Array, List, Set, Map

10

Step 10

Комбинаторика: порождение комбинаторных объектов

11

Step 11

Алгебра: магма, полугруппа, моноид, группа

12

Step 12

Tuples

13

Step 13

Lazyness

14

Step 14

For-loops and for-comprehensions

15

Step 15

Set theory - II: Морфизмы

16

Step 16

Implicits

17

Step 17

Control - II: create your own control flow structures

18

Step 18

Pattern matching

19

Step 19

String interpolation

20

Step 20

Numbers and Strings

21

Step 21

Interacting with Java

22

Step 22

Functional - II: tailcall, trampoline, corecursion

23

Step 23

Compilations

24

Step 24

Structural types

25

Step 25

Category Theory - I

26

Step 26

Exception handling

26 December 2015
Goal completed 26 December 2015
General

Scala for Java Developers

Описание курса

Данный курс посвящен гибридному объектно-функциональному языку программирования 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!

Подробные сведения

Каковы требования?

  • Установить JDK
  • Установить Scala SDK
  • Установить какую-либо Scala IDE (JetBrains IDEA, Eclipse, ...)

Что я вынесу из этого курса?

  • Более 112 лекций и 12.5 час(ов) содержания!
  • Начнёте программировать на Scala как Middle scala Developer
  • Разберетесь с тем, что такое Функциональное программирование
  • Поймете наиболее "темные" уголки языка: Generics, Macroses, Path Dependent Types

Какова целевая аудитория?

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

 Goal Accomplishment Criteria

Certificate

  1. Intro

  2. OOP - I: No inheritance

  3. OOP - II: "operator overloading"

  4. Type - I. Scala Type Hierarchy

  5. Control - I: buil-in control flow structures, expression-oriented programming

  6. Set theory - I: Множество, Отношение, операции над множествами

  7. Functional Programming - I: Syntax

  8. Generics - I: without higher-kind types

  9. Collections - I: Array, List, Set, Map

  10. Комбинаторика: порождение комбинаторных объектов

  11. Алгебра: магма, полугруппа, моноид, группа

  12. Tuples

  13. Lazyness

  14. For-loops and for-comprehensions

  15. Set theory - II: Морфизмы

  16. Implicits

  17. Control - II: create your own control flow structures

  18. Pattern matching

  19. String interpolation

  20. Numbers and Strings

  21. Interacting with Java

  22. Functional - II: tailcall, trampoline, corecursion

  23. Compilations

  24. Structural types

  25. Category Theory - I

  26. Exception handling

  • 1106
  • 26 December 2015, 23:23
Sign up

Signup

Уже зарегистрированы?
Quick sign-up through social networks.
Sign in

Sign in.
Allowed.

Not registered yet?
 
Log in through social networks
Forgot your password?