LINUX.ORG.RU

Scala возможности

 


1

3

Вопрос ближе для тех, кто в теме со scala-lang.org может еще был опыт или просто знаком с SAP SuccessFactors. Что думаете, насчет возможности Scala как основы аналога (создания урезанного функционала, не всей системы не подумайте) SAP SuccessFactors?

(Чтоб вдруг не закидали тухлыми яйцами/помидорами, есть опыт java).

P.S. Извиняюсь если ошибся с темой форума.


Ответ на: комментарий от menangen

Меня, беспокоит, что к работе понадобится подключать сторонние приложения, одно из них на PHP (база на MySQL). Как понял, Scala не ограничит в этом смысле если делать через API.

Nicolo
() автор топика
Ответ на: комментарий от anonymous

Пишешь продуктивно, работает быстро, работать приятно, софт/либы всё продумано, все лучшие фишки питона скопированы и допилены со статическими типами. Всё то, что не любят в питоне - убрано в Scala и доведено до ума. Единственно, что ща популярность Scala падает из-за Kotlin, и будет падать дальше, как и Groovy, как и Ruby.

menangen ★★★★★
()
Ответ на: комментарий от menangen

что ща популярность Scala падает из-за Kotlin, и будет падать дальше

Разве в них сильное различие? Может «подводные камни» Scala решены в Kotlin, но тогда удалось ли сохранить все другие преимущества Scala?

Nicolo
() автор топика
Ответ на: комментарий от menangen

Какие «фишки» питона скопированы и допилены?

cdshines ★★★★★
()

Возможности, как у любого другого языка - бери и пиши. Умеешь на джаве, пиши на джаве, хочешь - пиши на скале. И так, и так получится.

cdshines ★★★★★
()

Чтобы писать на скале нормально – нужно понять – зачем и почему скала именно такая. Если нужно ехать не вникая в заложенные идеи – я бы не рекомендовал.

oxo
()

Про Сап ваш не скажу - не знаю.

Про Скалу скажу. некоторые используют ее как better java. Т.е. пишут императивно в синтаксисе Скалы. Но этот стиль не раскрывает всех возможностей Скалы как функционального языка.

Общего с питоном в скале - ну прям вообще не заметил.

Преимущества скалы - за счет функциональщины и иммутабельности она упростила синтаксис java, сведя к минимуму все «лишние» слова. Она умеет о многом «догадываться» в процессе компиляции. За счет этого можно даже создать свой синтаксис языка/фреймворка.

bvn13 ★★★★★
()
Ответ на: комментарий от menangen

Что за поток шизофазии я только что прочитал?

anonymous
()

PS: scala и kotlin это такие better C, только про java. В реале ничего не решают и в мире java выглядят как ruby

anonymous
()
Ответ на: комментарий от Nicolo

понадобится подключать сторонние приложения, одно из них на PHP

Тогда без разницы, хоть на Скале, хоть на Malbolge.

Miguel ★★★★★
()
Ответ на: комментарий от menangen

все лучшие фишки питона скопированы и допилены

Капец какой-то, насколько вывернуто мышление у вам подобных.

anonymous
()
Ответ на: комментарий от hateyoufeel

Продолжайте упражняться в каверканьи, пока выходит не очень. Титул Петросяна пока остаётся у меня.

anonymous
()

Если команда большая - то не стоит. Мне кажется, сложно договариваться будет об используемых фичах, путях реализации и code style.

RedPossum ★★★★★
()
Ответ на: комментарий от RedPossum

Никогда не писал на Scala но я тоже этого боюсь, мне кажется такая жесть будет если команда с разным опытом, надо тогда жесткий код ревью вводить, с линейкой для измерения и отбития, ведь, насколько я знаю, нету хороших статических анализаторов для Scala, наверное так же как и для Kotlin (то что в ide недостаточно). Только Java с хорошими статическими анализаторами либо наверное Go.

Но, теперь люди уходят от монолитов в сторону микросервисов, а жесткие код конвеншены нужны были при разработке монолитов, микросервисы же можно распилить между множеством мелких групп, у каждого свои конвеншены, релизные циклы, даже языки, так проблему разработки силами больших команд можно решать по разному.

anonymous
()
Ответ на: комментарий от menangen

Все смешалось в одну кучу...

Скала как допиленный фишками питон, это как «жопа» допиленная до «хлеб» четырьмя ошибками.

anonymous
()
Ответ на: комментарий от menangen

Каким боком скала к питону? Тем что для тебя программирование == питон? Но Одерски не ты.

anonymous
()
Ответ на: комментарий от hateyoufeel

Что за порнография! (мне понравилось)

anonymous
()
Ответ на: комментарий от menangen

Scala этакий питон в мире Java, бери и пиши.

Хера тебя торкнуло, не ешь такие грибы. Скала — говноподелие с намеком на илитарность. Переусложненное, говно, надо сказать. Тут уж или на елку влезть(кложур), или жопу не ободрать(ява).

anonymous
()
Ответ на: комментарий от anonymous

Хотелось бы услышать контр-аргументы, что может Python, чего не может Scala в языковых рамках, а не динамика/статика.

menangen ★★★★★
()
Ответ на: комментарий от Rastafarra

«Бери и пиши» означает отсутствие фабрик фабрик и галиматьи с лапшой, для простых решений - простой код.

menangen ★★★★★
()
Ответ на: комментарий от anonymous

Скала — говноподелие

Ну да, а Java - не говно? Java не может в ФП от слова совсем. И как язык Java умер, ничего нового, тот же C# обскакал по всем параметрам жабку.

menangen ★★★★★
()
Ответ на: комментарий от menangen
lambda это: (
str("пидон не может в фп"),
str("от слова совсем")
)

__init__():
    self.__даже_в_ооп = "не может"

Между жабой и си-решето 7 лет разницы, шмагли язык, не шмагли платформу. Даже интересно, есть хоть одна контора где на c# пишут из под линукса? А то теоретиков которые разглагольствуют про .NET Core полно, живых примеров нету.

anonymous
()
Ответ на: комментарий от anonymous

Где дотнет крутят на линуксах - есть. А разрабатывать под линуксом - на это извращенцев мало.

anonymous
()
Ответ на: комментарий от anonymous

Даже интересно, есть хоть одна контора где на c# пишут из под линукса? А то теоретиков которые разглагольствуют про .NET Core полно, живых примеров нету.

есть, названий не знаю - я не продаван, работаю на удалёнке в ТП. С Linux у них всё совсем плохо (в районе плинтуса), просят моно. Контора железячная, винды нет совсем.

anonymous
()
Ответ на: комментарий от Nicolo

Разве в них сильное различие?

Да. Kotlin - это такая Java, которая чуть лучше, чем оригинальная Java. Scala гораздо выразительнее. В Kotlin даже pattern matching не завезли, чего уж там про высокие материи говорить...

Zenom ★★★
()
Ответ на: комментарий от Zenom

Scala гораздо выразительнее.

В скала проблема с читаемостью кода. Может быть там лучше вывод типов, null-safety через Option заточен на fp, есть паттерн матчинг которого нету в котлин, но код на Kotlin читается проще. Нагуглил сравнение.

Aber ★★★★★
()
Ответ на: комментарий от Aber

В скала проблема с читаемостью кода.

Не больше, чем в любом другом языке. Код на любом языке читаем для того, кто умеет на этом языке читать.

но код на Kotlin читается проще

Портянка из вложенных if-ов вместо цепочки монад? Нет, не читается это проще.

Нагуглил сравнение.

Сравнение сделано фанатом Kotlin в стиле «мне так больше нравится, поэтому я назову Kotlin проще читаемым».

Zenom ★★★
()
Ответ на: комментарий от turtle_bazon

А т ли нужен этот паттерн матчинг? Неужели так много сложной обработки списков?

Нужен и часто. А при чём тут обработка списков? PM к любым данным применим.

Zenom ★★★
()
Ответ на: комментарий от Zenom

Применим то он к любым данным, но эффект от него видно только на списках и других структурных единицах.

turtle_bazon ★★★★★
()
Ответ на: комментарий от turtle_bazon

Сейчас даже ради интереса проверил как часто я использую PM в реальном коде на первом попавшемся проекте. Первым попавшимся проектом оказался транслятор SQL-like языка в исполнимый код для обработки parquet-файлов. Разумеется, весь разбор и трансляция AST запросов выполняется с очень частым применением PM.

Zenom ★★★
()
Ответ на: комментарий от turtle_bazon

Или если строку нужно разбить на части регуляркой. На при наличии в языке PM это гораздо красивее, потому как идея-то одна и та же.

Zenom ★★★
()
Ответ на: комментарий от Zenom

Разумеется, весь разбор и трансляция AST запросов выполняется с очень частым применением PM.

Весьма специфичный проект. :) Там как раз обработка списков и структур данных.

turtle_bazon ★★★★★
()
Ответ на: комментарий от turtle_bazon

Так или иначе работа с данными происходит везде. Общепринятый способ вытаскивать записи из БД - это заворачивать их в case-классы, которые очень удобно матчить для фильтрации, преобразования, преобразования с одновременной фильтрацией.

Zenom ★★★
()
Ответ на: комментарий от Zenom

Работа с данными чтобы с нуля это не так уж и часто. А всякие БД и прочие - там за тебя фреймворки всё делают. Так что для обычной жизни ПМ не сильно и нужен.

turtle_bazon ★★★★★
()
Ответ на: комментарий от turtle_bazon

Могу разве что предложить взять произвольный проект на Scala и погрепать на предмет использования ключевого слова case.

Zenom ★★★
()
Ответ на: комментарий от Zenom

Ну так там будет использование не выходящее за рамки обычного case в языках попроще.

turtle_bazon ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.