Привет всем, друзья! ✌ Сегодня рассмотрим курсы scala , которые можно пройти абсолютно без нервов для получения крутых навыков. Обучение можно провести сидя дома без ограничений.
LETS GO!
Что будет в статье
- «Scala-разработчик» — Otus
- «Принципы функционального программирования в Scala» — Coursera
- «Специализация Functional Programming in Scala» — Coursera
- «Big Data Analysis with Scala and Spark» — Coursera
- «Programming in Scala, First Edition» — artima
- «Проекты с консультациями по программированию на Scala» — Coursera
- «Проекты с консультациями по программированию на Scala» — Coursera
- Заключение
«Scala-разработчик» — Otus
Что даст вам этот курс
Углубленный курс по Scala, в котором вы получите практические знания в популярных технологиях Scala, подходах функционального программирования и познакомитесь с самыми мощными Scala-библиотеками. Курс рассчитан на Java-разработчиков с опытом работы от 1 года либо для программистов с опытом работы на другом языке от 3-х лет, знакомых с синтаксисом веб-приложений.
Вы научитесь:
- использовать Scala-стек технологий для создания веб-сервисов;
- применять приемы функционального программирования в SOLID-приложениях;
- создавать приложения на основе функционального подхода на примере ZIO;
- проектировать микросервисы с использованием CQRS/ES на основе Akka;
- создавать модульные тесты на основе инвариантов свойств (property-based tests).
«Принципы функционального программирования в Scala» — Coursera
Функциональное программирование получает все более широкое распространение в промышленности. Эта тенденция обусловлена принятием языка Scala в качестве основного языка программирования для многих приложений. Scala объединяет функциональное и объектно-ориентированное программирование в практичный пакет.
Она легко взаимодействует как с Java, так и с Javascript. Scala является языком реализации многих важных фреймворков, включая Apache Spark, Kafka и Akka. Он обеспечивает основную инфраструктуру для таких сайтов, как Twitter, Netflix, Zalando, а также Coursera.
ЧЕМУ ВЫ НАУЧИТЕСЬ
- Understand the principles of functional programming
- Write purely functional programs, using recursion, pattern matching, and higher-order functions
- Design immutable data structures
- Combine functional programming with objects and classes
«Специализация Functional Programming in Scala» — Coursera
Функциональное программирование получает все более широкое распространение в промышленности. Эта тенденция обусловлена принятием языка Scala в качестве основного языка программирования для многих приложений. Scala объединяет функциональное и объектно-ориентированное программирование в практичный пакет.
Она легко взаимодействует как с Java, так и с Javascript. Scala является языком реализации многих важных фреймворков, включая Apache Spark, Kafka и Akka. Он обеспечивает основную инфраструктуру для таких сайтов, как Twitter, Netflix, Zalando, а также Coursera.
«Big Data Analysis with Scala and Spark» — Coursera
Манипулирование большими данными, распределенными по кластеру, с использованием функциональных концепций широко распространено в промышленности и, пожалуй, является одним из первых широко распространенных промышленных применений функциональных идей. Об этом свидетельствует популярность MapReduce и Hadoop, а в последнее время и Apache Spark, быстрого, in-memory фреймворка распределенных коллекций, написанного на Scala. В этом курсе мы рассмотрим, как парадигма параллельных данных может быть расширена до распределенного случая с использованием Spark.
Мы подробно рассмотрим модель программирования Spark, внимательно следя за тем, как и когда она отличается от привычных моделей программирования, таких как параллельные коллекции в общей памяти или последовательные коллекции Scala. На практических примерах на Spark и Scala мы узнаем, когда следует рассматривать такие важные вопросы, связанные с распределением, как задержка и сетевая связь, и как их можно эффективно решить для повышения производительности.
Результаты обучения. К концу этого курса вы сможете:
- читать данные из постоянного хранилища и загружать их в Apache Spark,
- манипулировать данными с помощью Spark и Scala,
- выражать алгоритмы для анализа данных в функциональном стиле,
- понимать, как избежать перетасовок и повторных вычислений в Spark,
Рекомендуемая подготовка: У вас должен быть опыт программирования не менее одного года. Владение Java или C# является идеальным, но опыт работы с другими языками, такими как C/C++, Python, Javascript или Ruby, также достаточен. Вы должны обладать некоторыми навыками работы с командной строкой.
«Programming in Scala, First Edition» — artima
Мартин Одерски оказал огромное влияние на мир Java, разработав язык Pizza. Хотя сам язык Pizza так и не стал популярным, он продемонстрировал, что объектно-ориентированные и функциональные возможности языка при умелом и со вкусом сочетании образуют естественную и мощную комбинацию.
Дизайн Pizza стал основой для дженериков в Java, а компилятор GJ (Generic Java) Мартина стал стандартным компилятором Sun Microsystem, начиная с версии 1.3 (правда, с отключенными дженериками). Я имел удовольствие поддерживать этот компилятор в течение нескольких лет, поэтому могу сказать из первых рук, что мастерство Мартина в разработке языка распространяется и на его реализацию.
С тех пор мы в Sun пытались упростить разработку программ, расширяя язык с помощью отдельных решений конкретных проблем, таких как цикл for-each, перечисления и автобоксинг. Тем временем Мартин продолжал работу над более мощными ортогональными примитивами языка, позволяющими программистам предоставлять решения в библиотеках.
В последнее время наблюдается обратная реакция против статически типизированных языков. Опыт работы с Java показал, что программирование на статическом языке приводит к обилию шаблонов.
Распространенная мудрость заключается в том, что необходимо отказаться от статической типизации, чтобы избавиться от шаблонов, и в связи с этим растет интерес к динамическим языкам, таким как Python, Ruby и Groovy. Это мнение опровергается существованием последнего детища Мартина — Scala.
«Проекты с консультациями по программированию на Scala» — Coursera
На этом часовом занятии вы узнаете о четырех основах объектно-ориентированного программирования и примените их на практике, выполнив приложение для моделирования космоса. В конце занятия вы поймете основные принципы объектно-ориентированного программирования и получите скелет приложения, который вы сможете модифицировать в игру и использовать в других целях.
«Проекты с консультациями по программированию на Scala» — Coursera
Курс по Scala. Проводился для стажеров Ростелеком-Солар в 2020 году.
Заключение