
Vasily
16.10.2017
15:33:02
В XAML все будет понятнее выглядеть
В разы

Friedrich
16.10.2017
15:33:25
А потом ты такой наворачиваешь биндинг

Google

Vasily
16.10.2017
15:33:27
И отладить проще
А чо биндинг?
Биндинг потом
После разметки

Friedrich
16.10.2017
15:33:57
textbox {
text ==> t1.text + t2.text
}

Nikolay
16.10.2017
15:34:02
Не обязательно MVVM использовать

Vasily
16.10.2017
15:34:19

Friedrich
16.10.2017
15:34:24
Ну то есть типизированные биндинги прямо в коде гуя

Nikolay
16.10.2017
15:34:25

Vasily
16.10.2017
15:34:39
Могу объяснить, почему кривовато

Friedrich
16.10.2017
15:34:47
А потом ты меняешь таргет для билдеров, и они начинают таргетить какой-нибудь виртуальный OM.
Который потом согласуется с реальным.
И становится совсем вкусно!

Google

Friedrich
16.10.2017
15:36:01
Ну то есть, в общем, я хочу т.н. «Elm architecture» или «React-подход» для Авалонии.

Nikolay
16.10.2017
15:36:32

Friedrich
16.10.2017
15:36:56
XAML вряд ли будет играть какую-то роль в таком проекте, а вот F# — вполне удобное средство для реализации нужных механизмов.

Igor
16.10.2017
15:37:28
А кто-нибудь это реально смотрел https://twitter.com/csoren/status/916435316336136194 ?
Можно от туда какие-то наработки взять?

Диёр
16.10.2017
15:37:35
*Когда поясняют программисты*

Vasily
16.10.2017
15:37:38
Самая большая кривизна тут - привязка к элементам отображения

Igor
16.10.2017
15:37:57
https://github.com/csoren/elmish-sample elm architechture в формах!

Pavel
16.10.2017
15:38:04
Да, как в котлине для андроид. Очень круто!

Vasily
16.10.2017
15:38:36
Ну т.е. t1.Text+t2.Text писать, конечно, крут о

Nikolay
16.10.2017
15:38:37

Vasily
16.10.2017
15:38:47
Но при рефакторинге будет куча проблем
XAML должен быть максимально простым
Без всякого г..на в виде хитрожопых кастомных конвертеров и прочих мультибиндингов

Friedrich
16.10.2017
15:39:32

Pavel
16.10.2017
15:39:35
Максимально простой xaml - это отсутствие xaml :D

Vasily
16.10.2017
15:39:40
Все решается на уровне модели отображения данных

Nikolay
16.10.2017
15:40:13

Friedrich
16.10.2017
15:40:31

Google

Vasily
16.10.2017
15:41:02
Миллион проблем при разработке клиентского приложения обычно связан с тем, что логику не отделяют от отображения
Как в случае ув. @fvnever

Nikolay
16.10.2017
15:41:32

Vasily
16.10.2017
15:41:43
Он самый, родимый

Friedrich
16.10.2017
15:42:10
Не. У тебя просто вместо XAML-разметки становится код. Концепция с разделением логики и отображения не меняется.

Pavel
16.10.2017
15:42:15

Nikolay
16.10.2017
15:42:16
Можно написать одну большую какашку, а можно много маленьких, я думаю второе, это наш путь!
Как с микросервисами

Friedrich
16.10.2017
15:42:25
Те же модельки или другой вариант архитектуры, а вместо вьюшки — DSL.

Vasily
16.10.2017
15:42:35
Если делать DSL, то на модели под ним
Привязку данных этц
DSL на собственно XAML - идея, требующая вдумчивого обсуждения

Pavel
16.10.2017
15:47:38
Подход точно такой же как и в elm

Nikolay
16.10.2017
15:48:34

Pavel
16.10.2017
15:49:04
Я тоже на это надеюсь

Igor
16.10.2017
16:17:01
Готовимся читать много статей Марка на русском ?
https://twitter.com/DotNextConf/status/919925702262222848

Evgeniy
16.10.2017
17:26:27
Надо бы перевести уже статью про жираф.
И хайпануть.

Google

Anna
16.10.2017
17:41:46

Evgeniy
16.10.2017
17:42:54

Anna
16.10.2017
17:43:33
А, спасибо! А то я немного с луны ?

Nikolay
16.10.2017
17:43:46

Anna
16.10.2017
17:44:29
Перевела? ?
Пару предложений дописала к уже переведённому абзацу ?

Igor
16.10.2017
17:50:00
Кто-нибудь читал “Why functional programming matters” John Hughes?

Mikhail
16.10.2017
17:59:34
Приветствую всех! Сколько раз выручали уже меня, помогите еще разок. Возможно глупый вопрос, но все же, как объеденить несколько массивов в один? Вот у меня есть один массив точек array1 (CCPoint[]) и второй array2(CCPoint[]), а как получить третий массив array3(CCPoint[]) который включает в себя два первых?

Nikolay
16.10.2017
18:02:30
Не помню точно
Либо так let array3 = Array.concat array1 array2

Mikhail
16.10.2017
18:08:30
Вот только теперь применить немного не получается, но видимо дело уже в другом
У меня если первый и второй массив - это результат выполнения функции с параметром
Тогда если мы пробуем написать что-то типа
let points = Array.append getQuarter(Quarter.First) getQuarter(Quarter.Second)
То компилятор ругается

Klei
16.10.2017
18:10:55
Там вроде даже в сообщении сказано, про обособление скобками.

Mikhail
16.10.2017
18:12:16
Скобки не помогают

Klei
16.10.2017
18:12:31
А так не пройдет?
let points = Array.append (getQuarter Quarter.First) (getQuarter Quarter.Second)

Google

Mikhail
16.10.2017
18:12:46
Тапками не кидайте, я плохо понимать по F# ))) А что такое пайпы?

Klei
16.10.2017
18:13:04
|> и <|, также ||> |||> и т.п.

Mikhail
16.10.2017
18:14:02

Klei
16.10.2017
18:14:40
Тогда не понятно, почему вариант со скобками не сработал.
По идее (getQuarter Quarter.First) тождественно (getQuarter(Quarter.First)).

Mikhail
16.10.2017
18:16:32

Klei
16.10.2017
18:16:45
Да ладно, если что-то серьезное, то еще раз встретися. Пока надо писать свой код)

Mikhail
16.10.2017
18:17:50
И еще раз спасибо за отзывчивость!

Andrew
16.10.2017
18:22:32
Ребят, не сочтите меня троллем, но кто из здешней аудитории использует f# в продакшене?

Mikhail
16.10.2017
18:24:28

Andrew
16.10.2017
18:25:00
А что за продукт?

Mikhail
16.10.2017
18:26:46
А что за продукт?
Название продукта сказать? Или достаточно просто описать, что это за приложение?

Andrew
16.10.2017
18:27:34
Любой вариант подойдёт :–) мне в целом интересно, почему именно фшарп взяли

Mikhail
16.10.2017
18:29:49
Скажем так, это кросплатформенное приложение которое уже лежит в AppStore и GooglePlay. Продается с девайсом дополнительным. Само приложение на Xamarin Forms, а бекэнд на F# + CocosSharp
Я его тоже спрашивал "Почему", сейчас скину ответ, если найду в переписке