|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton Зачем я должен помнить что ListMap - это иммутабельная версия LinkedHashMap? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2022, 23:31 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
Полезная штука. Давно не хватало. import ... as. Код: java 1. 2.
Собственно она не в тройке. Она еще в старых версиях была. Просто жаль что в Java нету. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2022, 01:26 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
А как это работает? Подобный синтаксис вызывает смущение. Код: java 1. 2. 3. 4. 5. 6. 7. 8.
Тоесть я знаю как работает LRU. Мне интересно как читать такой синтаксис. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2022, 01:33 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton А как это работает? Подобный синтаксис вызывает смущение. Код: java 1. 2. 3. 4. 5. 6. 7. 8.
Тоесть я знаю как работает LRU. Мне интересно как читать такой синтаксис. Похоже на обёртку вокруг linkedhashmap Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28.
Так проще и на java. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2022, 09:37 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton, Так понятнее?))) Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Ну или так Код: java 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2022, 09:42 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
Да. С трейтом как-то понятнее. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2022, 09:59 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
Как в сборщике SBT копировать зависимости в свой фолдер? Для maven я делал вручную так. Код: java 1.
Для SBT установил флажок Код: java 1.
Но не вижу чтоб копировались. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2022, 19:11 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton, Выключить useCoursier. Потому что с ним баг . Может быть, еще настроить configurationsToRetrieve. Или по рабоче-крестьянски. Пишем свой task, в нем берем managedClasspath и из него копируем куда угодно. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2022, 22:25 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
Есть пример такой таски? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2022, 22:54 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mad_nazgul O_79_O самое главное во всей этой чехарде jvm языков - все они останутся на уровне инди приложений ,а джава будет дальше двигаться,потому что почему? правильно ,потому что комьюнити просто огромное гугл лет 5 назал кричал что заменит жаву на что то там - в итоге что то там так и осталось что то там в этой истории все хорошо,но главное что джава трахнула всех) Вообще-то гугл уже заменила Java на что-то другое. Если смотреть на вакансии, то для Android разработчиков Kotlin mast have однозначно. Да и для бакендеров, как я, kotlin знать желательно. Т.к. часто под вакансиями Java-разработчиков скрывается Kotlin. На двух последних работах java-разработчики писали на Kotlin. <:o) на котлы заменили но это вроде как в мобилке только. а бэк - там разгул. и джава и скала и те же котлы и всякие груви с кложами. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2022, 12:08 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton, Точно такой нет, но есть очень похожая. Выложил здесь . Это древний sbt, но проблем перевести на новый не должно быть. Начинать смотреть можно с assemblyExploded и assemblyClasspath. Наверное, нужно будет managedClasspath вместо fullClasspath. Ну и целевой каталог по-другому настроить. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2022, 00:27 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
Капец это сколько кода надо написать для простой вещи? Мне по сути надо 3 артифакта скопировать. Код: java 1.
Из maven repository к себе локально чтоб дернуть spark-submit где просто есть один параметр который перечисляет все сборки. Толстый jar собирать не хочу. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2022, 01:49 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton Капец это сколько кода надо написать для простой вещи? Мне по сути надо 3 артифакта скопировать. Блин, ну а если попробовать понять, что там происходит? И там как раз много лишнего. А для "трех файлов" все сводится к чему-то в духе Код: sql 1. 2. 3. 4.
Плюс немного магии для связи. Или вообще Код: sql 1. 2. 3. 4. 5. 6. 7.
Не тестировал, это общая идея. P.S. Я не собираю fat jar! Я собираю executable jar и zip-архив со всеми нужными библиотеками. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2022, 21:50 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
А вот как идеологически верно создавать инстации классов в Scala? Тоесть аналог java Class.forName(..).newInstance() ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2022, 20:20 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton А вот как идеологически верно создавать инстации классов в Scala? Тоесть аналог java Class.forName(..).newInstance() Для каких нужд? Рефлексия в скале не нужна, есть type class-ы. Единственное что приходит на ум - некая плагинная архитектура, или operability with java, ну в таком случае тот же самый Class.forName(..).newInstance() ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2022, 20:58 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
Есть конфигурация. Код: java 1. 2.
И есть реализация которая содержит condition. Поскольку сервис ограниченный и платный то для задач тестирования и отладки я использую заглушку. Мок. Код: java 1. 2. 3. 4. 5. 6.
Вот хочу избавится от явного кондишена и указать просто полное имя класса в контексте языка Scala. Вместо true/false - полное имя класса. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2022, 23:00 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton Есть конфигурация. Код: java 1. 2.
И есть реализация которая содержит condition. Поскольку сервис ограниченный и платный то для задач тестирования и отладки я использую заглушку. Мок. Код: java 1. 2. 3. 4. 5. 6.
Вот хочу избавится от явного кондишена и указать просто полное имя класса в контексте языка Scala. Вместо true/false - полное имя класса. Ну тут все адовый java-style, так что в таком же стиле и надо инстанцировать через Class.forName(), бессмысленно спрашивать о том как лучше сделать такое в scala. В Scala просто так не делают. Примерно такой же смысл как использовать hibernate на scala. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2022, 09:18 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
А как идеологически правильно? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2022, 09:29 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
Хм... каррирование и частичная вычислимость. Что есть общее и что - разница? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2022, 19:11 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton А как идеологически правильно? Вкратце - 1) все внешние модули через трейты. trait GeoStrategy 2) зависимость описывается через implicit. def doWork(implicit geo: GeoStrategy) либо сложнее через Final Tagless архитектуру, но это долгий рассказ 3) Все имплементации описываются в отдельных файлах. StrategyLive { impliciut val geo = new GeoStratgey}, StrategyMock{implicit val geo = GeoMock} 4) Никакого чтения в рантайме. Надо запустить тест - запусти тест, если реальный апп - то его. Решается созданием двух мейн классов App{ import StrategyLive._} Test{import StartegyTest._} 5) Со спарком немного сложнее, там надо смотреть по обстоятельствам. Там не совсем идеологический scala style, что-то среднее, если надо то можно и Class.forName() ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2022, 19:31 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
забыл ник mayton А как идеологически правильно? Вкратце - 1) все внешние модули через трейты. trait GeoStrategy 2) зависимость описывается через implicit. def doWork(implicit geo: GeoStrategy) либо сложнее через Final Tagless архитектуру, но это долгий рассказ 3) Все имплементации описываются в отдельных файлах. StrategyLive { impliciut val geo = new GeoStratgey}, StrategyMock{implicit val geo = GeoMock} Да. Да вот на эту тему есть какой-то пример? Читая Одерского или Хорстмана я не нахожу четкого ответа на вопрос. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2022, 19:53 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton забыл ник пропущено... Вкратце - 1) все внешние модули через трейты. trait GeoStrategy 2) зависимость описывается через implicit. def doWork(implicit geo: GeoStrategy) либо сложнее через Final Tagless архитектуру, но это долгий рассказ 3) Все имплементации описываются в отдельных файлах. StrategyLive { impliciut val geo = new GeoStratgey}, StrategyMock{implicit val geo = GeoMock} Да. Да вот на эту тему есть какой-то пример? Читая Одерского или Хорстмана я не нахожу четкого ответа на вопрос. Ну тут на самом деле в scala сообществе большой такой косяк. Это довольно сложные концепции, к тому же завязанные на ФП, на просто хелловорлде они не совсем понятны и скорее оверкилл и оверинжениринг. Не встречал хороших статей которые обьясняют прямо с нуля. Сам прорывался к пониманию не один месяц, джуны и мидлы сразу после освоения нормальный туториал написать не могут, а те кто уже в теме пишут слишком сложно и не обьясняют некоторые концепты. А езе более всего осложняет ситуацию факт что вся эта машинерия(считай подход) сконцентрированы в сторонних библиотеках(cats, zio как основные) и имеют немного разные подходы и терминологию. Для начала надо разобраться что такое Type Class и Final Tagless, по последнему может вот это поможет - https://medium.com/becompany/tagless-final-in-scala-best-practices-8e5368d217d7 Лично я сторонник ZIO ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2022, 20:36 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
Для начала надо разобраться что такое Type Class и Final Tagless, по последнему может вот это поможет - https://medium.com/becompany/tagless-final-in-scala-best-practices-8e5368d217d7 С TypeClass знаком. Ну по крайней мере они не вызывают вопросов. А вот Final Tagless - это надо посмотреть... Вообще заметил что чем дальше погружаешся в правильный ФП - тем больше код превращается в доказательство теоремы. И разработчик - вроде как шизофреничный математик который сам себе что-то доказывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2022, 01:05 |
|
Scala 3.0.0 релизнулась
|
|||
---|---|---|---|
#18+
mayton Вообще заметил что чем дальше погружаешся в правильный ФП - тем больше код превращается в доказательство теоремы. И разработчик - вроде как шизофреничный математик который сам себе что-то доказывает. Что-то в этом есть. Но с другой стороны может программа и должна быть такой? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2022, 17:40 |
|
|
start [/forum/topic.php?fid=59&msg=40136828&tid=2120227]: |
0ms |
get settings: |
16ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
56ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
406ms |
get tp. blocked users: |
0ms |
others: | 350ms |
total: | 839ms |
0 / 0 |