@scala_ru

Страница 501 из 1499
Alexander
16.02.2017
21:17:00
Народ, я вот 100 лет не писал ничего гуишного (посл. раз на плюсах 5 лет назад). А вот сейчас нужно. Что из GUI-фреймворков для scala посоветуете? Приложение типа клиента для мессенджера, но хотелось бы что-то посовременнее изучить))

Alexander
16.02.2017
21:18:40
Хотелось бы кроссплатформенно, конечно..

Nikita
16.02.2017
21:19:27
На мобилки или десктопы?

Google
Alexander
16.02.2017
21:20:55
Сейчас десктоп

На андрюшу позже)

Nikita
16.02.2017
21:22:35
Меня может быть сейчас закидают, но под десктоп я бы не стал использовать скалу. По поводу андроида, имхо, тоже самое, взял бы xamarin на f# или react-native, ибо кросс-платформено

?Ivan
16.02.2017
21:24:07
qt посмотри

Nikita
16.02.2017
21:24:10
Но scalajs с phonegap тоже вариант, наверно, если очень хочется

Alexander
16.02.2017
21:24:11
qt посмотри
А что насчёт Swing и ScalaFX. Это что сходу гугл выдал

?Ivan
16.02.2017
21:25:34
Я тебя понимаю, но то, что я сейчас пишу, я пишу "в рамках" самообразования по Scala
тогда scalsfx, заодно кучу велосипедов напишешь в процессе.

я писал на javaFX, много чего сделано костыльно, нормальных контролов толком нет, в общем после опыта гуя на c# мне не понравилось

Alexander
16.02.2017
21:29:14
понятно. а свинг не смотрел?

Vladislav
16.02.2017
21:30:46
qt посмотри
Серьёзно? ? совет дня прям

?Ivan
16.02.2017
21:31:09
некоторые св-ва с одинаковым названием у разных контролов в javaFX работают по разному. Со swing не работал

Alexander
16.02.2017
21:31:30
Серьёзно? ? совет дня прям
Честно говоря даж я улыбнулся)

Google
?Ivan
16.02.2017
21:33:50
Честно говоря даж я улыбнулся)
ну тогда напишите чем он плох, с учётом того что просили кроссплатформенно и с мобилками. Я вижу только Scala.js со всеми вытекающими и qt

Alexander
16.02.2017
21:37:23
ну тогда напишите чем он плох, с учётом того что просили кроссплатформенно и с мобилками. Я вижу только Scala.js со всеми вытекающими и qt
Я что-нибудь новенькое искал) кутю я как раз на ++ юзал когда-то. Интересно было б увидеть что-то новое. А так ничем не плох, конечно

А scalafx вообще не подгружается чего-то.

а нет, вру. просто в доках ошибка.

.
16.02.2017
22:40:22
Может знает кто, есть какой-то ресурс где можно вбросить код и получить код ревью?

.
16.02.2017
22:45:11
Отлично. У меня есть команда из меня и меня. Ах да, еще я на подхвате. Пожалуй кого-то из этих ребят попрошу провести ревью.

Anton
16.02.2017
22:45:41
lmgify https://www.google.ee/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=automated+code+review

Anton
16.02.2017
22:46:15
хотя, это больше как статические анализаторы всё

.
16.02.2017
22:46:51
Anton
16.02.2017
22:47:06
вот прикольный сервис кажется https://www.codacy.com/

.
16.02.2017
22:47:28
хотя, это больше как статические анализаторы всё
Плагином для идеи пользуюсь и почитываю практики, но это несколько не то всеж.

Спасибо, посмотрю.

Baruch
16.02.2017
22:51:04
У меня фигурка Йоды
а у меня Род Джонсон

Wystan
16.02.2017
22:51:35
Эх. Старая школа. У меня тульпа Рил Мейер.

Baruch
16.02.2017
22:52:03


у него правда ноутбук пострадал

Google
.
16.02.2017
22:55:51
Спасибо!

Vyatcheslav
17.02.2017
04:28:29
А что насчёт Swing и ScalaFX. Это что сходу гугл выдал
swing вроде deprecated. Scalafx лично я не советую, у него API мозговыносящий, с обилием дряных операторов (как в scalaz любят). Кроме того, он полностью не покрывает API javafx. Я начал писать приложуху на scalafx, потратил день на это дерьмо, плюнул, написал тоже самое на javafx (на scala) за полчаса и сверху функциональности добавил. Единственный момент - советую сразу писать на 2.12.1, потому что с SAM все становится проще и не надо писать имплиситные обертки для Java-йских классов с 1 методом

Alexander
17.02.2017
04:29:26
Да, я уже примерно так и делаю.

Vyatcheslav
17.02.2017
04:29:32
короче, будь у меня терпение на неделю, чтобы побольше пруфов набрать, я бы сделал тикет в awesome-scala, чтобы это говно оттуда убрали

Alexander
17.02.2017
04:29:43
там 50/50 выходит scalafx/javafx

Vyatcheslav
17.02.2017
04:30:40
ты рискуешь, миксуя :) у scalafx своя иерархия во многих местах

Alexander
17.02.2017
04:33:30
в какой-то мере правильно, но с другой стороны я пока не вижу, как это может помешать.

в моём конкретном случае

Vyatcheslav
17.02.2017
04:34:44
в какой-то мере правильно, но с другой стороны я пока не вижу, как это может помешать.
Отговаривать не буду, но отпиши плиз в чатик через недельку-две, как у тебя дела со связкой scalafx/javafx. Интересно узнать

Alexander
17.02.2017
04:35:36
конечно. но ротложуха простенькая совсем (пока?)

*приложуха

спать пора)))

Vyatcheslav
17.02.2017
04:35:57
поле ввода и список сообщений? :D

ну ок, раз простенькое, тогда наверное не будет проблем

Юрий
17.02.2017
04:36:27
Слава, юзай Qt

Alexander
17.02.2017
04:36:28
пока да. ну ещё выбор собеседников, менюшка, регистрация

Vyatcheslav
17.02.2017
04:37:20
Слава, юзай Qt
А че, есть биндинги для Скалы? Оо Я пока прототип пишу, а потом да, планировал C++/QT

Alexander
17.02.2017
04:37:41
но, конечно, подобные момеенты "радуют" несказанно val listView = new ListView[String](messagesList) listView.setCellFactory{ _ => { new javafx.scene.control.ListCell[String] { override def updateItem(str: String, empty: Boolean): Unit = { setText(str) setWrapText(true) ...

ибо скаловский ListCell не даёт оверрайдить updateItem

Vyatcheslav
17.02.2017
04:39:13
Вот! Это первое, с чем я столкнулся. Прям тоже самое, только с таблицами

Google
Alexander
17.02.2017
04:40:20
ну да. пока разбирался начитался много всякого))

А че, есть биндинги для Скалы? Оо Я пока прототип пишу, а потом да, планировал C++/QT
Кстати, поддержу вопрос! Я, кажется, что-то видел, но оно было то-ли очень древнее, то-ли наоборот недоношенное

Юрий
17.02.2017
04:43:44
А че, есть биндинги для Скалы? Оо Я пока прототип пишу, а потом да, планировал C++/QT
Врядли :D Но для нормального десктопного приложения ничего лучше C++/Qt на текущий момент нет. Надеюсь, скоро что-нибудь приедет из раста, потому что С++ адовенько после скалы использовать, конечно

возможно, scala-native откроет возможности для создяния scala-Qt

вот тогда заживем :D

Vyatcheslav
17.02.2017
04:45:48
эээх… )

Max
17.02.2017
04:49:15
Alexander
17.02.2017
04:50:04
Раньше, как минимум, были биндинги для явы
Ты не про http://qtjambi.org/ ? Он вроде помер...

Vyatcheslav
17.02.2017
04:58:01
ребят, кто с Play работает - можно как-то запустить асинхронную задачу перед стартом самого Play, чтоб Play запустился после того, как она завершится? Пока из вариантов - запускать эту задачу в виде отдельного приложения. Ну или Await делать :D

Admin
ERROR: S client not available

Aleksei
17.02.2017
05:00:47
люблю такое, асинхронная задача в синхронном контексте =)

Vyatcheslav
17.02.2017
05:01:45
ну уотакуот вышло :)

.
17.02.2017
05:04:05
У тебя старт скрипт же есть

Заверни старт приложения в обертку какую-то и ее уже стартуй

Vyatcheslav
17.02.2017
05:10:32
А что ты делаешь в этой задаче?
аггрегирует данные с левой базы и пишет в нашу. Это надо сделать разово перед стартом. Согласен, что странно, но уотакуот :)

Заверни старт приложения в обертку какую-то и ее уже стартуй
ну как раз отдельное приложение. Интересны другие варианты, если они вообще есть

.
17.02.2017
05:11:22
А почему не сделать это во время первого подключения к бд?

Sergey
17.02.2017
05:12:47
Я с play не работал, ну просто блокируй интерфейс, и загружай, пользователю покажи прогрессбар

Vyatcheslav
17.02.2017
05:12:56
потому что хотелось бы, чтоб первый запрос не занимал по времени больше 10 секунд :)

Google
.
17.02.2017
05:14:02
Но ведь в таком случае у тебя старт приложения по +10 секунд будет занимать

Vyatcheslav
17.02.2017
05:14:50
да, на старт как-то пофиг, да и все равно костыльно это как-то. Проще тогда уж действительно отдельное приложение запускать перед стартом плеевского

Sergey
17.02.2017
05:15:35
.
17.02.2017
05:15:39
Вообще, как контроллеры реализованы? Как класс или объект

Vyatcheslav
17.02.2017
05:16:07
классы. Ладно ребят, сделаем отдельную приложуху )

.
17.02.2017
05:16:12
Если они не инстанцируются каждому пользователю то можно там вкрутить

Sergey
17.02.2017
05:18:52
Зачем вобще что-то слева загружать. Загружай асинхронно в приложении, без перезапусков?

Vyatcheslav
17.02.2017
05:19:49
это нужно сделать только 1 раз, перед запросами пользователей. Это как инициализация

Sergey
17.02.2017
05:21:13
Каждый раз при рестарте сервера?

Проработайте архитектуру, тут что то странное. Эти внешние процессы не нужны. Обновления из другой бд можно подгружвть и без рестарта приложения

Vyatcheslav
17.02.2017
05:25:41
отличный вопрос :) Да, вообще странно

.
17.02.2017
05:28:29
http://stackoverflow.com/questions/4907603/where-do-i-put-startup-code-in-play-framework

а вот это не релевантно случайно?

Vyatcheslav
17.02.2017
05:36:30
это для первого play :)

.
17.02.2017
05:37:47
Там чуть ниже для второго примеры, ещё чуть ниже для 2.3.2

https://www.playframework.com/documentation/2.5.x/GlobalSettings#Scala

Похоже, что нужный кейс

Vyatcheslav
17.02.2017
05:42:44
точнее так: @deprecated("Use dependency injection", "2.5.0") trait GlobalSettings { Не, Сергей отличный вопрос задал. Оказалось (меня другой разраб спросил про запуск перед play), что нужно каждый раз при перезапуске это делать. А если каждый раз - то почему именно при перезапуске. Наверное, задача была не до конца проработана

Юрий
17.02.2017
05:44:20
Сам плэй можно инициализировать ручками

Sergey
17.02.2017
05:44:21
Да, мало инфы про информацию из баз, что бы дать конкретные архитектурные советы

Юрий
17.02.2017
05:44:24
у него есть entry point

Vyatcheslav
17.02.2017
05:44:54
Сам плэй можно инициализировать ручками
Это я искал, но не нашел :( Не напомнишь, как?

Страница 501 из 1499