
Vitaly
29.06.2018
10:30:26
Не по советуете группы каналы по uwp xamarin разработке?

Serhii
29.06.2018
10:33:17

Летучая
29.06.2018
12:23:01

Google

Max
29.06.2018
12:27:43
Оно очень удобно, но чисто в колено себе выстрелить боюсь

Roman
29.06.2018
12:29:47
А Elmish.Xamarin кто-то уже ковырял? Он только для Forms или для Android отдельно можно сделать?

Летучая
29.06.2018
12:29:49

Max
29.06.2018
12:31:16
Есть некоторая проблема с хранением этих значений в неком своем поле и сохранении на устройство, в случае необходимости
Например, чтобы восстановить состояние
Тут как бы все немного (много) сложнее, чем бахать в WPF

Летучая
29.06.2018
12:33:42
Вообще я игрался с Xamarin.Forms и там с Фоди было норм. В Xamarin.Native наверно есть свои нюансы, действительно (на самом деле было бы интересно послушать доклад на эту тему)

Max
29.06.2018
12:39:37

Google

Max
29.06.2018
12:40:14
И если вдруг наберем, то возможно выступим тут http://techtrain.ru/ , в отдельном треке по Xamarin
Для Android - это +- критично, ведь твоя Shared выполняется в своем рантайме на ведре
и там начинаются проблемы с высвобождением каких-нибудь таймеров и прочего, на что фуди тоже навешает все, что ему надо
Да и есть ограничение на количество методов (хотя, это легко обходится, но все же)
Чисто из-за размера даже выходит, что лишний кодоген тебе не нужен

Летучая
29.06.2018
12:45:04

Max
29.06.2018
12:45:15

Летучая
29.06.2018
12:45:22
Или ты про кеширование PropertyChangedEventArgs?

Roman
29.06.2018
12:45:23

Max
29.06.2018
12:45:38

Летучая
29.06.2018
12:46:49
+
Ну тут да. Но! Можно посмотреть историю коммитов и вытащить из нугета версию, где эти кеши ещё не ввели :D
А вообще, если это действительно проблема, можем попробовать законтрибутить, чтобы кеши было можно нахрен выключить.

Max
29.06.2018
12:47:42

Летучая
29.06.2018
12:49:07

Max
29.06.2018
12:49:09
и подключения к фуди
Накидаешь пример?
Но тут смотри какая тема, если мы храним эти значения, было бы не плохо их еще и получать с других страниц, по надобности
И вот ты уже получил веретено из непонятно чего
Что решается стандартной записью в Properties приложения, обернутой в OnPropertyChanged()

Google

Max
29.06.2018
12:51:56
Так что я думаю когда ты пишешь продакшон, мейби не стоит мудрить

Kirill
29.06.2018
13:11:09
И чуть дописав логику как раз можно сделать хранение пропертей, сейчас в моей реализации они все банально в ConcurrentDictionary<string, object>

Летучая
29.06.2018
13:17:55

Kirill
29.06.2018
13:19:23

Летучая
29.06.2018
13:20:34
Про сохранение стейта конечно интересные аргументы, надо будет поискать решение. Надо стремиться в противоположную бойлерплейту сторону, 2018 год же на дворе :)

Vladislav
29.06.2018
13:20:59

Kirill
29.06.2018
13:21:16
Зачем использовать библиотеки с черной магией для таких простых задач, когда можно без них?)
потому что boxing/unboxing
Проверял же и тебе о результатах отпиисывался.
Кучу раз писал в Dictionary<string, object> разного типа объекты и примитивы, и в кучу разных словарей в зависимости от типа - разницы никакой не заметил. то один способ быстрее, то другой. На уровне статистической погрешности работает. Так что не вижу смысла усложнять логику. И прям много Binding Property в приложении, что критичны теоретические миллисекунды на эти операции, когда есть задержка на сетевые запросы, отрисовку и тд, которые на порядки дольше выполняются?

Vladislav
29.06.2018
13:24:36
на такие мелочи можно забить

Kirill
29.06.2018
13:25:42
Ну сам попробуй протестить - я не нашел задержек на boxing/unboxing даже на миллионах операций

Kirill
29.06.2018
13:25:50

Кита
29.06.2018
13:28:56

Летучая
29.06.2018
13:28:56
Н-да, однако, на WPF/UWP проект без Fody я бы, конечно, не сел. Вьюмодели многократно раздуваются и усложняются, отнимая на себя много времени, Fody значительно упрощает код. Насчёт XF с вами спорить не буду, возможно, у него пока особый путь :)

Кита
29.06.2018
13:29:21
Это равнозначно проблеме супер-вьюконтроллера на нативном iOS и которую решают дроблением

Kirill
29.06.2018
13:29:53

Летучая
29.06.2018
13:30:09

Google

Kirill
29.06.2018
13:30:32

Летучая
29.06.2018
13:31:10
После бэкграунда на Ангуляре предпочитаю не видеть мусор типа INPC в своём коде.

Кита
29.06.2018
13:32:27
а ещё нужно бывает завязать одну преперти на другу. Set может возвращать bool значение изменилась проперти или нет. Если да - то какая-то логика изменения другой проперти. И у той тоже в сеттере какая-то логика

Kirill
29.06.2018
13:33:10
INPC :)
Ну, как сказал - это не проблема вообще) И логика вызова, на сколько знаю, одинакова и на винде и в формс.
В текущем проекте всего в нескольких местах вызывается INPC вручную, в тех сценариях, когда от одной проперти зависит другая, да и этого можно избежать легко, используя те же конвертеры

Летучая
29.06.2018
13:34:01

Admin
ERROR: S client not available

Летучая
29.06.2018
13:34:45

Кита
29.06.2018
13:34:45

Kirill
29.06.2018
13:34:47
Вместо написания 2 строк добавлять 2 библиотеки. Ну такое себе..))

Кита
29.06.2018
13:35:26
именно
При этом во многом от бойлерплейта ты избавляешься и за собой кучу всего что тебе не нужно и может выстрелить в ногу - не тащишь.

Kirill
29.06.2018
13:37:34
А уитывая что каждая библиотека добавляет времени к времени сборки/деплоя, размеру приложению, возможным багам..
Поэтому такие простые вещи, которые легко сделать без библиотек - предпочитаю сам делать)

Летучая
29.06.2018
13:38:09
Извечный, конечно, холивар. Таскать за собой замарин размером в 20 мегабайт и зажимать 100 килобайт для библиотек, которые жизнь спасают.
Если мне будет важен размер бинарника, я возьму плюсы или котлин. :) В общем это всё скорее вопрос религии либо конкретно Замарина. В Uwp и Wpf-мирах с Fody проблем нет.

vladimir
29.06.2018
13:40:09
как-то передёргиваете
на плюсах сложно будет кроссплатформу с нативными вьюшками написать

Кита
29.06.2018
13:40:09

Evgeniy
29.06.2018
13:41:13
Есть предложение проголосовать за бесплатный профайлер:
https://xamarin.uservoice.com/forums/144858-xamarin-platform-suggestions/suggestions/32298319-xamarin-profiler-s-huge-paywall-propagates-low-qua

Kirill
29.06.2018
13:41:34

Кита
29.06.2018
13:45:00

Google

Летучая
29.06.2018
13:45:36
в каком месте 20мб?
А насколько там сейчас можно ужать сборку? Года 2-3 назад вроде были какие-то такие цифры

Кита
29.06.2018
13:50:27
Я не понимаю только если все dll aotятся то зачем упаковывать ещё этих dll на 10мб, но если не упаковать - ничего работать не будет. Благо они сжимаются хорошо
На флагманах просто моментальный запуск. Даже нет необходимости делать какой-то сплэш) но не на флагманах 1сек все же показывать что-то надо как мне кажется)

Летучая
29.06.2018
14:00:10
Круто. ???
Годный тутор и опенсорс для вкатывания в реактивность, кстати https://github.com/kentcb/WorkoutWotch

Кита
29.06.2018
17:17:23

Max
29.06.2018
17:22:16

Iván
29.06.2018
17:22:25
плюсы можно и в Xcode открыть так-то

Max
29.06.2018
17:22:39

Iván
29.06.2018
17:24:32
imo VS4Mac должен быть сфокусирован на .NET потому что у нас нет другого выхода
а когда гуй можно открыть в нативном, плюсы в каком стороннем редакторе от IntelliJ – ну ок, потерпится
явно мощности ограничены у их команды
вот там в голосованиях просят Node.js и Python когда есть VS Code уже

Max
29.06.2018
17:26:34

Кита
29.06.2018
17:28:39