
Igor
26.04.2017
20:00:09
Где набросил?
у меня обратный вопрос, а где он по делу говорил, а не жирно тролил и флудил?

Vitaliy
26.04.2017
20:00:41

? animufag ?
26.04.2017
20:00:42

Quantum Harmonizer
26.04.2017
20:00:43

Google

Vitaliy
26.04.2017
20:00:55
Что угодно придумаете, лишь бы не говорить, что ситуация и правда имеет место быть.
И мне многие ребята на то же самое жаловались

? animufag ?
26.04.2017
20:02:31

Vitaliy
26.04.2017
20:03:11
Да нет, обучить всегда можно. Если есть время и человек готов слушать.
Но какой слушать, когда он опытный и у него уже позиция своя есть.

Quantum Harmonizer
26.04.2017
20:03:38

Vitaliy
26.04.2017
20:03:44
Извините, коллеги, наболело.
Это не троллинг, это просто то, что сейчас есть.

Quantum Harmonizer
26.04.2017
20:04:17

Михаил
26.04.2017
20:06:52
имхо нет программистов которые не готовы слушать. зависит лишь от того насколько для слушающего авторитетен вещающий

? animufag ?
26.04.2017
20:07:54
энивей андроид не особо располагает, чтобы на нём писали правильно, тестируемо.
а вам это вроде бы и не важно. У вас тут страдания от того что приходят люди собеседоваться на мобильного разработчика и не знают АБИ БАЙТ-КОД ГЦ. жесть вам, конечно, не повезло с новичками.

Dmitry
26.04.2017
20:07:58
Но в итоге все сводится к конкретному человеку и тому, как он использует инструменты, а не сам факт использования данных инструментов говорит что человек что-то знает/не знает.

Google

Vitaliy
26.04.2017
20:08:16
В джаве таких мест мало.
В Котлине чуть побольше.
Хотя тоже мало.

? animufag ?
26.04.2017
20:09:09
например?

Vitaliy
26.04.2017
20:09:19
А это ты мне скажи.

? animufag ?
26.04.2017
20:09:31
лол

Vitaliy
26.04.2017
20:09:33
В каких местах, по-твоему, Котлин неявно аллоцирует объекты?

? animufag ?
26.04.2017
20:09:40
ну кажись я слился с твоего собеседования

Dmitry
26.04.2017
20:09:42
собеседования тайм

Vitaliy
26.04.2017
20:09:58
И мне потом что-то говорят про троллинг.
Просто поинтересовался.

? animufag ?
26.04.2017
20:10:11
а ну ты про лямбдочки

Vitaliy
26.04.2017
20:10:18
Неа.
Они почти везде инлайнятся
Особенно в stdlib
И это одно из немногих мест, где Котлин быстрее джавы

Quantum Harmonizer
26.04.2017
20:10:50
Добавлю от себя, что есть методы стдлибы, для которых в Anko есть "бесплатная" замена. :)

Vitaliy
26.04.2017
20:11:04
Именно так :)

Google

? animufag ?
26.04.2017
20:11:16
ну инлайнятся. и не захватывают скоп?

Vitaliy
26.04.2017
20:11:29
Скоп тоже инлайнится
А вот те лямбды, ссылки на которые нужно держать, уже не заинлайнить

? animufag ?
26.04.2017
20:11:49
нифига какое крутое слово

Boris
26.04.2017
20:13:03

Quantum Harmonizer
26.04.2017
20:13:49

Vitaliy
26.04.2017
20:13:51
Что я пытаюсь сказать, в общем.
Когда я выбираю разработчика, я ищу разработчика, который будет решать проблемы, а не создавать новые. В виде поиска правильных архитектур, ЯП, либ, и прочего. Мне нужен человек, который сможет правильно написать видеопроигрыватель на ведре, чтобы он стабильно и быстро работал, и который не будет изобретать велоссипеды при этом. А большинство Котлинистов будут с умным видом холиварить, переписывать все на Котлин и говорить, что фича не будет доставлена в срок, потому что рефакторинг и что-то там всплыло в Rx.
Я могу поделиться, почему бы и нет :)
Возможно, не все случаи покрою, но все-таки.
Попробуем обсудить?
Или опять будете меня троллить?


Михаил
26.04.2017
20:16:04
Что я пытаюсь сказать, в общем.
Когда я выбираю разработчика, я ищу разработчика, который будет решать проблемы, а не создавать новые. В виде поиска правильных архитектур, ЯП, либ, и прочего. Мне нужен человек, который сможет правильно написать видеопроигрыватель на ведре, чтобы он стабильно и быстро работал, и который не будет изобретать велоссипеды при этом. А большинство Котлинистов будут с умным видом холиварить, переписывать все на Котлин и говорить, что фича не будет доставлена в срок, потому что рефакторинг и что-то там всплыло в Rx.
котлин имхо не при чем

Михаил
26.04.2017
20:16:13
просто это модное ныне веяние

Vitaliy
26.04.2017
20:16:24
Сам ЯП скорее всего и правда не виноват

Boris
26.04.2017
20:16:29
Попробуем обсудить?
я так жду информации о тех самых местах в котлине которые создают проблемы для гц

Vitaliy
26.04.2017
20:16:39
Порог вхождения низкий, ситуация как с пыхой
Ну и спикеры везде

Boris
26.04.2017
20:16:49
должна же эта беседа иметь хоть какой-то практический смысл

Vitaliy
26.04.2017
20:16:56
Конечно.

Михаил
26.04.2017
20:16:57

Google

Михаил
26.04.2017
20:17:14
как можно щас не зная джавки в котлин сразу?

Vitaliy
26.04.2017
20:17:16
Конечно.
Автобоксинг nullable-типов — если var i = 34;, i = null, то 34 будет автобоксингом.
forEarch {} для коллекций — создается итератор.

Boris
26.04.2017
20:18:43
почему низкий?
порог вхождения действительно ниже и я не вижу ничего плохого в том, что появляется много новичков которые хотят себе легкой жизни, в конце концов не ради этого ли мы вообще хоть что-то пишем

Vitaliy
26.04.2017
20:18:45
Обычный автобоксинг при ставке в коллекции, например.

Dmitry
26.04.2017
20:18:51
Так автобоксинг и в джаве автобоксинг

Vitaliy
26.04.2017
20:19:21

Dmitry
26.04.2017
20:20:05
Просто я не сказал бы что это неявные, т.к. если примитив объявлен как nullable, то прямо заявляется что это не примитив, а обертка будет. Соответственно будет автобоксинг

Admin
ERROR: S client not available

Vitaliy
26.04.2017
20:20:16
Это уже вам решать.
Я говорю об неочевидных случаях, когда это не в лоб.

Quantum Harmonizer
26.04.2017
20:20:35
А вот здесь неплохо бы в исходники смотреть: mapOf(k0 to v0, k1 to v1)

Vitaliy
26.04.2017
20:20:46
Интристиксы в коде — все параметры/поля проверяются кострукциями вида Intristics.checkParametrNonNull(param, "param"); При этом создается строка. Которая, правда, компилируется в константу, но тем не менее.

? animufag ?
26.04.2017
20:20:52

Quantum Harmonizer
26.04.2017
20:21:09

? animufag ?
26.04.2017
20:21:16
ну он выдаст ошибку что ты заранее не сказал что тип нулейбл

Vitaliy
26.04.2017
20:21:27
var же

Google

Quantum Harmonizer
26.04.2017
20:21:29

? animufag ?
26.04.2017
20:21:35
тип выведется как Int

Vitaliy
26.04.2017
20:21:42
Вроде бы необязательно задавать тип там
Замыкания в Котлине реализуются через Ref<T>.

Quantum Harmonizer
26.04.2017
20:22:02

Boris
26.04.2017
20:22:34

Vitaliy
26.04.2017
20:22:35
Соответствнно имеем два случая оверхэда: в случае замыкания ссылки будет создан просто Ref<>.

? animufag ?
26.04.2017
20:22:41

Quantum Harmonizer
26.04.2017
20:22:52

Vitaliy
26.04.2017
20:22:59
В случае замыкания примитивов будет Ref + autoboxing.

Dmitry
26.04.2017
20:23:02
var же
обязательно, так как тип в первом присваивании тип был выведен как nonnull, а в него потом пытаются записать null. Компилятор даст ошибку и потребует указать тип явно

Vitaliy
26.04.2017
20:23:21
Ну поменяте местами null и 34

? animufag ?
26.04.2017
20:24:01

Quantum Harmonizer
26.04.2017
20:24:07

? animufag ?
26.04.2017
20:24:08
ну ок понятно

Dmitry
26.04.2017
20:24:09
поменял, тогда тип выведется как Nothing? ибо информации для вывода типа недостаточно

Vitaliy
26.04.2017
20:24:17

Quantum Harmonizer
26.04.2017
20:24:30
PUTFIELD kotlin/jvm/internal/Ref$IntRef.element : I

Vitaliy
26.04.2017
20:25:08
Ну вот вам списочек и набрался.
Я в байткод Котлина вчитывался давно, так что возможно, вам будет, чем его дополнить — если вы исследовали сами.

? animufag ?
26.04.2017
20:26:00
итак нулейбл примитив = непримитив = проблемы с гц?
Достаточно просто знать GC и места, в которых ЯП может создавать проблемы для него.