Size: a a a

2020 October 18

AL

Alexander Larin in Kotlin Moscow
Ⓢⓔⓡⓖ
#вопрос Коллеги, подскажите, каким способом лучше реализовать конвейер по обработке данных.
А нет случайно какого-то паттерна типа wizard/wizardstep для такой задачи? Или там отсутствует конкретика реализации самого объекта?
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Вариант с добавлением lazy полей сработал нормально, на каждом этапе создаётся новый класс со ссылками на предыдущий через lazy{}, лишнего копирования не происходит, скорость работы на больших списках приемлемая. Теперь бы придумать хорошее название для этого "паттерна". а) FieldsPipeline б) DataWizard , Ещё варианты?
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Переход от предыдущего шага на следующий задается вполне элегантно через extension функции списков, например: fun List<DataStep3>.toNextStep() : List<DataStep4>{...}, что позволяет записать весь процесс трансформации с первого до последнего шага в столбик.
Если под паттернами понимать сборник рецептов, как в книге о вкусной и здоровой пище, то я бы такой рецептик туда включил 😀
источник

SB

Sergey Barmin in Kotlin Moscow
Ⓢⓔⓡⓖ
Вариант с добавлением lazy полей сработал нормально, на каждом этапе создаётся новый класс со ссылками на предыдущий через lazy{}, лишнего копирования не происходит, скорость работы на больших списках приемлемая. Теперь бы придумать хорошее название для этого "паттерна". а) FieldsPipeline б) DataWizard , Ещё варианты?
Пропустил сам вопрос, но вроде жук реализует такой подход интерфейсами-маркерами
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Ⓢⓔⓡⓖ
#вопрос Коллеги, подскажите, каким способом лучше реализовать конвейер по обработке данных.
.
источник

SB

Sergey Barmin in Kotlin Moscow
Хм, может через мапу, а свойства самого класса описать через делегат от мапы?
источник

SB

Sergey Barmin in Kotlin Moscow
Хотя звучит не очень надежно
источник

AL

Alexander Larin in Kotlin Moscow
Ⓢⓔⓡⓖ
Переход от предыдущего шага на следующий задается вполне элегантно через extension функции списков, например: fun List<DataStep3>.toNextStep() : List<DataStep4>{...}, что позволяет записать весь процесс трансформации с первого до последнего шага в столбик.
Если под паттернами понимать сборник рецептов, как в книге о вкусной и здоровой пище, то я бы такой рецептик туда включил 😀
>Если под паттернами понимать сборник рецептов, как в книге о вкусной и здоровой пище, то я бы такой рецептик туда включил 😀
ну описанию у тебя это уже паттерн стейт-машина.
источник
2020 October 23

Ⓢⓔⓡⓖ in Kotlin Moscow
#вопрос Коллеги, подскажите чистую Kotlin-библиотеку для отрисовки графиков, которая может работать в браузере, и на десктопной Java?
источник

SB

Sergey Barmin in Kotlin Moscow
@noraltavir вроде писал что-то такое?
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Он математическую либу писал вроде? :)
источник

AN

Alexander Nozik in Kotlin Moscow
Sergey Barmin
@noraltavir вроде писал что-то такое?
У нас не совсем чистая, там рендер жсный, но https://github.com/mipt-npm/plotly.kt
Если нужно чисто котлиновскую, то https://github.com/JetBrains/lets-plot-kotlin, но там меньше возможностей
источник

AN

Alexander Nozik in Kotlin Moscow
Ⓢⓔⓡⓖ
Он математическую либу писал вроде? :)
Я много чего писал
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Кул. Там есть возможность накладывания нескольких линий на один график?
источник

AN

Alexander Nozik in Kotlin Moscow
Ⓢⓔⓡⓖ
Кул. Там есть возможность накладывания нескольких линий на один график?
Разумеется. И там и там.
источник

AN

Alexander Nozik in Kotlin Moscow
Есть еще не вполне живой https://charts-kt.io/
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
И несколько графиков один-под-другим так чтобы не было смещения из-за других UI-элементов, при изменении размеров окна например?
источник

AN

Alexander Nozik in Kotlin Moscow
Ⓢⓔⓡⓖ
И несколько графиков один-под-другим так чтобы не было смещения из-за других UI-элементов, при изменении размеров окна например?
Да, что угодно. Плотли - вообще все, что угодно умеет, но там нужен веб-вью на десктопе. lets-plot тоже много что умеет, но он послабее
источник

AN

Alexander Nozik in Kotlin Moscow
Зато рендерит нативно
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Спасибо!
источник