Set(Scala, Java, JavaScript, Python, `C#`).maxBy(_.fun) == Scala. Разработчики объясняют в 7 пунктах, почему

Оставить комментарий
Set(Scala, Java, JavaScript, Python, `C#`).maxBy(_.fun) == Scala. Разработчики объясняют в 7 пунктах, почему

Когда-то на рынке говорили о Python-парадоксе — Google интервьюировала Java, C и прочих программистов и требовала от них знания Python, таким образом отбирая тех, кто развивается, смотрит по сторонам, заинтересован в чём-то ещё, кроме основной сферы деятельности. То же самое сейчас со Scala: если компания выбирает этот язык, значит она хочет найти действительно крутых разработчиков.

«Жизнь слишком коротка, чтобы всё время писать на Java», — заявляют Scala-девелоперы. И аргументируют.

1. Scala позволяет писать хороший код с меньшим количеством ошибок: компилятор тщательнее проверяет код, что позволяет увереннее его рефакторить. Функциональное программирование в принципе сфокусировано на тех практиках, которые делают код более простым для понимания и поддерживаемым, потому что чистые функции и неизменяемые данные легче понять и отладить. Можно сказать, это тренд во многих языках программирования таких, как TypeScript и Java. Но в Scala эти практики реализуются на уровне языка. 

2. Scala делает разработчиков счастливыми. В языке хорошая система типов и поддержка функциональной парадигмы плюс живое комьюнити, совместимость с Java-экосистемой и появление новых подходов и собственных библиотек каждый год. Перейти на Scala стоит, чтобы снова получать удовольствие от своей работы. Жизнь слишком коротка, чтобы всё время писать на Java.  Если разработчики переходят на Scala, чаще всего они на этом языке и остаются. Случается, скалисты мигрируют на Haskell или Rust, но в Java возвращаются крайне редко — к возможности писать элегантный код, как и ко всему хорошему в принципе, быстро привыкаешь. Scala позволяет изучать не только язык, но и всю обширную экосистему, поэтому разработчикам не бывает скучно. В Scala-библиотеках есть куда развиваться и расти, а значит быть вознаграждённым: полезные знания хорошо оплачиваются.

3. Scala — один их самых популярных коммерческих языков, который используют, например, в распределённых системах. На Scala написан весь игровой бэкенд Evolution Gaming, его заслуженно любят «Тинькофф Банк», LinkedIn, Twitter, Netflix и Epic Games (Fortnite). Scala также может использоваться для фронтенда в виде Scala.js, который транслируется в JavaScript.

По теме
Все материалы по теме

4. Мигрировать на Scala с Java или TypeScript не так тяжело, как кажется. О том, что Scala — язык сложный, говорят те, кто никогда не пробовал на нём писать. Не обязательно глубоко понимать внутреннее устройство используемых библиотек, чтобы начать разработку на Scala. Это как с машиной: можно не разбираться, как она работает, но комфортно ездить. Всегда можно начать со Scala  как с «лучшей Java», а затем внедрять в свой код элементы функционального программирования. 

5. Scala работает на JVM, используя тем самым многолетний опыт её разработчиков. Благодаря этому скорость работы кода на Scala практически аналогична скорости кода на Java. Многие распространённые в JVM-мире библиотеки написаны на Scala (например, Akka и Spark), и проще всего их использовать именно из Scala-кода. 

6. Scala тоже критикуют. Например, за медленную компиляцию, которая благодаря последним улучшениям перестала быть проблемой. Да, компилятор по-прежнему медленнее, чем в Java, потому что делает больше работы и не даст собрать проект, пока не будут исправлены все ошибки, но это точно не головная боль. Также на Scala больше сложностей для написания проектов для Android, потому что эта ОС не является высшим приоритетом для Scala. Но при этом существуют проекты, позволяющие компилировать код на Scala вместо Java байт-кода в машинный код (Scala Native) и JavaScript (Scala.js), а также использовать библиотеки этих экосистем.

7. В целом Scala — язык с относительно высоким порогом входа. Некоторые сдаются, пытаясь изучить Scala и сталкиваясь со сложными для понимания библиотеками, но нет ничего невозможного. Для этого есть книги (1, 2, 3, 4, 5), курсы и Scala-школа, которую запускает продуктовая компания  Evolution Gaming. Трехмесячное обучение — бесплатное, опыт программирования на Scala не обязателен, но знание одного из фундаментальных языков программирования будет плюсом. Лучшим выпускникам предложат работу в Evolution Gaming. 

Остались сомнения? Приходите на Scala Meetup 3 декабря.

Хотите сообщить важную новость? Пишите в Телеграм-бот.

А также подписывайтесь на наш Телеграм-канал.

Читайте также

Кто такой Director of Engineering. Обзор изнутри от Валерия Леонтьева и Алексея Чудникова
Кто такой Director of Engineering. Обзор изнутри от Валерия Леонтьева и Алексея Чудникова
Кто такой Director of Engineering. Обзор изнутри от Валерия Леонтьева и Алексея Чудникова
Про позицию Director of Engineering в IDT Corporation рассказывают Валерий Леонтьев и Алексей Чудников. Продолжаем цикл материалов про ИТ-специальности. Каждую из них описывает «типичный представитель» — опытный специалист. Мы надеемся, что цикл поможет школьникам, студентам, переквалификантам, джуниорам и сочувствующим выбрать специальность в ИТ, оценить свои перспективы или просто сверить часы с авторитетным коллегой. Можно обсуждать и дополнять материал в комментариях, чтобы сделать его еще полезней. Спикеры и автор материала поддержат дискуссию и ответят на вопросы.
5 комментариев
Кто такой Art Director в Gamedev. Обзор изнутри от Евгения Татарчука
Кто такой Art Director в Gamedev. Обзор изнутри от Евгения Татарчука
Кто такой Art Director в Gamedev. Обзор изнутри от Евгения Татарчука
О профессии рассказывает Евгений Татарчук, арт-директор  игрового подразделения компании ZiMAD. В компании с середины 2014 года, должность арт-директора занимает с 2018-го. Работал над коллекционными карточными играми, match-3, аркадами и другими  казуальными играми. В настоящее время занят на проекте «Dig Out!».  Продолжаем цикл материалов про ИТ-специальности. Каждую из них описывает «типичный представитель» — опытный специалист. Мы надеемся, что цикл поможет школьникам, студентам, переквалификантам, джуниорам и сочувствующим выбрать специальность в ИТ, оценить свои перспективы или просто сверить часы с авторитетным коллегой. Можно обсуждать и дополнять материал в комментариях, чтобы сделать его ещё полезней. Спикер и автор материала поддержат дискуссию и ответит на вопросы.
12 хороших курсов по Scala для тех, кто уже что-то знает
12 хороших курсов по Scala для тех, кто уже что-то знает
12 хороших курсов по Scala для тех, кто уже что-то знает
Язык программирования Scala громко заявил о себе в 2010-е годы. Сейчас ажиотаж вокруг него спал, но забывать о Scala точно не стоит. Это один из самых популярных коммерческих языков, который используют Twitter, LinkedIn, WhatsApp. Scala-разработчики, возможно, не так востребованы как их коллеги, пишущие на Python или Java, но хороший специалист будет цениться высоко, а знание языка станет безусловным плюсом в резюме. В помощь тем, кто хочет пополнить ряды адептов Scala, Digitaldefynd составил (а мы дополнили) подборку онлайн-курсов и тренингов разных уровней сложности.
1 комментарий
«Элегантный, безопасный код». Айтишники о том, за что любят и ненавидят Scala
«Элегантный, безопасный код». Айтишники о том, за что любят и ненавидят Scala
«Элегантный, безопасный код». Айтишники о том, за что любят и ненавидят Scala
Говорят, популярность Scala пришлась на 10-е, а сейчас язык тихо сидит в занятой нише. Но с тех пор его начали использовать многие крупные компании вроде The Guardian, NYT, SoundCloud. Переходят на Scala и отдельные программисты. Мы спросили у четырёх скалистов из Evolution, зачем они ушли в функциональщину, в чём были сложности перехода, что хорошего и плохого они находят в языке.

Обсуждение

Комментариев пока нет.
Спасибо! 

Получать рассылки dev.by про белорусское ИТ

Что-то пошло не так. Попробуйте позже