
Alexey
19.09.2017
08:54:49
по деньгам оч. зависит от того, как договоришься (как и везде, собственно). Минимальная зп, на которую могут пригласить (согласно тк Го) составляет 40 тысяч в год до налогов
налоги большие и прогрессивные
до 52 тысяч в год налог 32%, с суммы выше 52 тысяч, налог 51% или около того

Алексей
19.09.2017
08:55:41
Alexey можно еще пару вопросов по RN ?тут люди жалуются что SC сильно тормозят, емнип ты адаптировал их под RN, есть идеи как уменьшить оверхэд?)

Google

Кирилл
19.09.2017
08:55:47
исусе

Alexey
19.09.2017
08:56:11
однако, для высококвалифицированных специалистов есть скидка на налоги в размере 30% (т.е. 30% дохода не облагается налогами) на 5 лет
SC тормозят под RN? ?

Алексей
19.09.2017
08:58:12
так так, надо вспомнить кто говорил такое ?

Кирилл
19.09.2017
08:58:24
)

Алексей
19.09.2017
08:58:35

Alexey
19.09.2017
08:58:40
странно такое слышать, честно говоря. SC используют StyleSheet.create под капотом, сложности могут возникнуть только в динамических стилях
остальное вообще можно транспилить на этапе сборки

Кирилл
19.09.2017
08:59:36

Алексей
19.09.2017
08:59:37
Я насколько помню был разговор о том что SC создают враппер, и из-за этого якобы увеличивается время рендера ?

Alexey
19.09.2017
08:59:48
но если мы говорим о динамических стилях, то тут никуда не уйдешь - всё равно придется в рантайме считать, какое бы решение Вы не использовали
ну, это тоже верно, но ощутим ли этот оверхед?
это из разряда разговоров о создании функций на каждый рендер

Google

Alexey
19.09.2017
09:00:32
а-ля onClick={() => alert(...)}

Кирилл
19.09.2017
09:00:37
не знаю насколько мой эксперемент был чист, но по моим подсчетам в 1.5 рааз

Denis
19.09.2017
09:01:06
Алексей, привет. Рад видеть :) Парни, кто ещё с докладом по React Native выступить?)

Alexey
19.09.2017
09:01:20
угу, только если посмотреть бенчи, там получится что-то в районе 5 миллионов операций в секунду
я сильно сомневаюсь, что существует мобильное приложение, которое потребует такую производительность

Алексей
19.09.2017
09:01:43
@iblia а ты где обитаешь? не хочешь выступить? ?
я бы может и выступил, но я в СПБ)

Alexey
19.09.2017
09:02:28
я не особо религиозен в этих вопросах. Мне кажется, подобные вещи стоит оптимизироват в последнюю очередь. Чаще всего есть намного более очевидные ошибки, которые являются причиной проблем с производительностью

Denis
19.09.2017
09:03:01

Кирилл
19.09.2017
09:04:08

Алексей
19.09.2017
09:05:52
Alexey и еще один вопрос) хотя это скорее не вопрос, а просто у меня есть идея, просто охота обсудить) все тут постоянно страдают с навигацией, и вот идет постоянная борьба js решений, с нативными) что если нам попробовать взять идею с react-native-interactable и реализовать примитивы на нативной стороне, а уже поверх сделать апи как в react-navigation? ?

Alexey
19.09.2017
09:06:12
или ты имеешь ввиду кастомную навигацию какую-нибудь?
ты можешь создать свой AnimationController и прокинуть его в JS

Алексей
19.09.2017
09:08:09

Alexey
19.09.2017
09:08:37
Да, но если есть возможность не изобретать велосипед, то зачем?
нативная реализация поддерживает огромное количество опций конфигурации
т.е. можно закастомайзить абсолютно всё

Google

Алексей
19.09.2017
09:09:16

Alexey
19.09.2017
09:09:30
вопрос просто в том, насколько гранулярный доступ должен был прокинут в JS
ну вообще, это возможно
но тут момент будет

Oleh
19.09.2017
09:10:11

Sergey
19.09.2017
09:11:21
подскажите плз модуль для выбора мелодии для нотификации под андроид что бы когда чекнул мелодию оно еще и проиграла

Алексей
19.09.2017
09:13:28
Alexey нет, смысл в другом) просто когда у тебя родная навигация используется, то тебе приходится лезть в нативку на каждый чих, и вот в wix пытаются сделать апи поверх, но как мне показалось в процессе использования, что это не очень возможно, все же апи разные. в react-navigation удобно то, что все в js и из-за этого большой простор для кастомизации. Однако много людей жалуется на перфоманс, да и виден запрос в RN у людей, на более нативное решение. Мне просто понравилось как в react-native-interactable сделали декларативное апи поверх нативной реализации, и поэтому мне кажется, что реализация навигации в таком ключе может быть интересна ?

Albert
19.09.2017
09:13:57
Подскажите почему не кэширует изображения, делаю как в доке?
<Image source={{ uri: 'ImageURL', cache: 'default' }}/>

Кирилл
19.09.2017
09:14:23

Алексей
19.09.2017
09:14:25

Igor
19.09.2017
09:15:09
А на каких событиях компонента правильно подвисываться и отписываться от BackHandler ?


Alexey
19.09.2017
09:15:24
Alexey нет, смысл в другом) просто когда у тебя родная навигация используется, то тебе приходится лезть в нативку на каждый чих, и вот в wix пытаются сделать апи поверх, но как мне показалось в процессе использования, что это не очень возможно, все же апи разные. в react-navigation удобно то, что все в js и из-за этого большой простор для кастомизации. Однако много людей жалуется на перфоманс, да и виден запрос в RN у людей, на более нативное решение. Мне просто понравилось как в react-native-interactable сделали декларативное апи поверх нативной реализации, и поэтому мне кажется, что реализация навигации в таком ключе может быть интересна ?
понял. Да, тут сложнее. Если нужна реально кастомная, сложная навигация, то всё равно вряд ли получится декларативно её задать используя любой из вышеописаных подходов
но для простых кейсов может сработать
я просто пока не вижу всей картины в целом, тяжело сказать

Albert
19.09.2017
09:16:02

Alexey
19.09.2017
09:16:02

Кирилл
19.09.2017
09:16:51

Alexey
19.09.2017
09:17:16
я полагаю, что SC имплементируют sCU
чтобы такого не происходило

Кирилл
19.09.2017
09:18:46
сейчас нет примера под рукой, но насколько я помню sc не создают дополнительных компонентов с sCU

Google

Kyrylo
19.09.2017
09:19:56

Алексей
19.09.2017
09:20:47

Alexey
19.09.2017
09:22:43
но я прям правда сильно сомневаюсь, что происходит ререндер каждый раз просто из-за сравнения стилей
тема визуального отображения компонентов никогда не была моей сильной стороной, но будет интересно сделать небольшой ресёрч на эту тему ?

Kyrylo
19.09.2017
09:26:59

Alexey
19.09.2017
09:31:05

Алексей
19.09.2017
09:31:54

Kyrylo
19.09.2017
09:37:14
? Спасибо, но пока довольствуюсь локальными. Может когда-то и поменяется это ¯\_(ツ)_/¯

Alexey
19.09.2017
09:37:38
так что нет разницы, используешь ли ты [] или {}

Кирилл
19.09.2017
09:41:36
так что нет разницы, используешь ли ты [] или {}
если я ничего не путаю это вообще не об этом.. по ссылке метод StyleSheet.flatten, который как раз из айдишек делает обьект и лишает нас оптимизайций бриджа:
Refering to style objects directly will deprive you of these optimizations

Alexey
19.09.2017
09:42:52
Насколько я помню, было много планов реализовать эту оптимизацию, но она так и осталась "в планах", по крайней мере так говорят комменты в том же классе
если мы говорим об одном и том же: https://github.com/facebook/react-native/blob/1e8f3b11027fe0a7514b4fc97d0798d3c64bc895/Libraries/StyleSheet/StyleSheet.js#L80

Алексей
19.09.2017
09:44:52

Alexey
19.09.2017
09:45:16
но опять же, эта часть RN не моя сильная сторона, я могу ошибаться
но я не верю, что используя [] ноды будут перерисоввываться. Они будут участвовать в процессе реконсилиации(? reconciliation), но это не будет влеч за собой ререндеринг
или я по прежнему не о том говорю? ?

Кирилл
19.09.2017
09:48:56
разве нет?

Google

Алексей
19.09.2017
09:49:38

Кирилл
19.09.2017
09:50:08
секунду, mad skillz history search

Alexey
19.09.2017
09:52:15
будут сравниваться не массивы, а reference id смерженых стилей
т.е. [foo, bar] смержатся в baz и baz'у будет присвоен id. Если при сл. реконсилиации смерженные стили будут совпадать с baz, то перерисовки не произойдет
по крайней мере это то, как я понимаю это ?

Кирилл
19.09.2017
09:54:58
а вот, нашел, но я сам пример тогда не скинул(
через ReactPerf замерил рендер 5000 styled.View и <View style={...}/>

Alexey
19.09.2017
09:57:45
так, и что по итогу?
кстати, ты использовал SCv2
там просто препроцессинг появился, что может существенно оптимизировать рантайм время

Кирилл
19.09.2017
10:01:55
кстати, ты использовал SCv2
неа, тогда была вроде первая версия, тогда понравилась что стили создаются через StyleSheet.create, даже если используются props для каждого нового значения props создаются отдельные стили со своим индексом. Но вот массив смутил и не стал продолжать

Alexey
19.09.2017
10:03:30
вот тут вот есть подробное описание (чтобы не пересказывать весь changelog): https://medium.com/styled-components/announcing-v2-f01ef3766ac2
тут речь идёт о ssr для веба, но где-то был тред про rn

Кирилл
19.09.2017
10:05:02

Alexey
19.09.2017
10:05:50
я думаю, что он делает это на JSе и нода не передается через мост в нативку
надо покопаться в коде и найти эту часть

Кирилл
19.09.2017
10:07:22

Alexey
19.09.2017
10:07:51
ага, мне кажется, так и происходит, но надо посмотреть

Alex
19.09.2017
10:27:41
Добрый день, можете пожалуйста подсказать, могу ли я как то заюзать в react native - console.log, если работаю с expo ?