Всем привет, друзья! ✌ Сегодня мы рассмотрим курсы по scala, которые можно пройти без особых нервов, чтобы получить крутые навыки. Упражнения можно делать сидя дома без ограничений.
ПОЙДЕМ!
Что будет в статье
- «Scala-разработчик» — Otus
- Принципы функционального программирования в Scala — Coursera
- Специализация «Функциональное программирование в Scala» — Coursera
- Анализ больших данных с помощью Scala и Spark — Coursera
- «Программирование на Scala, первое издание» — artima
- Консультационные проекты по программированию на Scala — Coursera
- Консультационные проекты по программированию на Scala — Coursera
- Заключение
«Scala-разработчик» — Otus
Что вам даст этот курс
Углубленный курс Scala, который дает вам практические знания о популярных технологиях Scala, методах функционального программирования и самых мощных библиотеках Scala. Курс предназначен для разработчиков Java с опытом работы не менее 1 года или для программистов с опытом работы на другом языке не менее 3 лет, знакомых с синтаксисом веб-приложений.
Ты выучишь:
- использование стека технологий Scala для создания веб-сервисов;
- применять методы функционального программирования в приложениях SOLID;
- создавать приложения на основе функционального подхода на примере ZIO;
- разработка микросервисов с использованием CQRS/ES на основе Akka;
- создание модульных тестов на основе тестов на основе свойств).
«Принципы функционального программирования в Scala» — Coursera
Функциональное программирование получает все большее распространение в промышленности. Эта тенденция обусловлена использованием Scala в качестве основного языка программирования для многих приложений. Scala объединяет функциональное и объектно-ориентированное программирование в удобный пакет.
Он легко взаимодействует как с Java, так и с Javascript. Scala — это язык реализации многих важных фреймворков, включая Apache Spark, Kafka и Akka. Он обеспечивает базовую инфраструктуру для таких сайтов, как Twitter, Netflix, Zalando и Coursera.
ЧТО ВЫ ХОТИТЕ УЗНАТЬ
- Понимание принципов функционального программирования
- Пишите чисто функциональные программы, используя рекурсию, сопоставление с образцом и функции более высокого порядка
- Проектировать неизменяемые структуры данных
- Комбинируйте функциональное программирование с объектами и классами
«Специализация 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, быстрой распределенной среды коллекций в памяти, написанной на 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 стал основой для дженериков в Java, а компилятор Мартина GJ (Generic Java) стал стандартным компилятором Sun Microsystem, начиная с версии 1.3 (хотя и с отключенными дженериками). Я имел удовольствие поддерживать этот компилятор в течение нескольких лет, так что я могу сказать из первых уст, что мастерство Мартина в проектировании языка распространяется и на его реализацию.
С тех пор мы в Sun пытались упростить разработку программного обеспечения, расширяя язык отдельными решениями для конкретных проблем, таких как цикл for-each, перечисления и автоупаковка. Тем временем Мартин продолжал работать над более мощными примитивами ортогонального языка, позволяющими программистам предоставлять решения в библиотеках.
В последнее время наблюдается негативная реакция на языки со статической типизацией. Опыт работы с Java показал, что программирование на статическом языке приводит к большому количеству дублирований.
Принято считать, что от статической типизации нужно отказаться, чтобы избавиться от шаблонов, и в связи с этим растет интерес к динамическим языкам, таким как Python, Ruby и Groovy. Это мнение опровергается существованием последнего детища Мартина, Scala.
«Проекты с консультациями по программированию на Scala» — Coursera
На этом часовом занятии вы узнаете о четырех основных принципах объектно-ориентированного программирования и примените их на практике, создав приложение для моделирования космоса. В конце урока вы поймете основные принципы объектно-ориентированного программирования и получите скелет приложения, который вы сможете преобразовать в игру и использовать для других целей.
«Проекты с консультациями по программированию на Scala» — Coursera
Курс Скала. Проводится для стажеров Ростелеком-Солар в 2020 году.