
Алексей
05.10.2018
17:59:44
Я просто пытался в свое время это понять, но поскольку на практике встречаться не приходилось, а объяснять некому - так и не разобрался, хотя в голове и отложилось немного об этом

Alexander
05.10.2018
18:00:15
Ну я вот постоянно использую, но до сих пор не понимаю
В смысле если сажусь и разбираю конкретный пример, то все понятно, но интуитивного понимания нет

Anna
05.10.2018
18:00:42
Я несколько раз попробовала объяснить и стало понятнее ?♀️ но всё равно залипаю каждый раз и в уме начинаю "вычислять" где кто

Google

Алексей
05.10.2018
18:01:04
Сложненько
Интересненько
В джавке с этим проще было

Alexander
05.10.2018
18:01:26
Не, там наоборот, еще хуже
Проблема возникает, когда пытаешься делать как в джаве

Igor
05.10.2018
18:01:45

Алексей
05.10.2018
18:01:46

Alexander
05.10.2018
18:01:58

Bogdan
05.10.2018
18:03:19
даже так

Alexander
05.10.2018
18:04:02
Это если declaration site variance

Bogdan
05.10.2018
18:04:19
out - использовать в методе, o in отдавать во вне

Google

Alexander
05.10.2018
18:05:13
В общем, у меня с этими in и out до сих пор как с артиклями, все время путаюсь, где что и нужно ли оно вообще

Алексей
05.10.2018
18:05:22

Bogdan
05.10.2018
18:05:24

Alexander
05.10.2018
18:05:35
да

Алексей
05.10.2018
18:05:56

Igor
05.10.2018
18:06:58

Bogdan
05.10.2018
18:07:05

Алексей
05.10.2018
18:07:29

Bogdan
05.10.2018
18:07:41

Alexander
05.10.2018
18:07:49

Igor
05.10.2018
18:08:31
В Dart все дженерики ковариантны (что по идеи должно вызывать проблемм еще больше, чем с масивами в джаве)
(так к слову)

Bogdan
05.10.2018
18:08:34

Alexander
05.10.2018
18:08:54
У меня ковариантые и контравариантные бывают тензоры в теории гравитации, массивы в эту ячейку памяти уже не лезут

Bogdan
05.10.2018
18:09:19

Anna
05.10.2018
18:09:33

Bogdan
05.10.2018
18:09:51

Alexander
05.10.2018
18:10:02
https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%B2%D0%B0%D1%80%D0%B8%D0%B0%D0%BD%D1%82%D0%BD%D0%BE%D1%81%D1%82%D1%8C_%D0%B8_%D0%BA%D0%BE%D0%BD%D1%82%D1%80%D0%B0%D0%B2%D0%B0%D1%80%D0%B8%D0%B0%D0%BD%D1%82%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)

Алексей
05.10.2018
18:10:14

Alexander
05.10.2018
18:10:16
для тех, кто без анг...

Алексей
05.10.2018
18:10:30
Надо разобраться бы с этим:)

Google

Anna
05.10.2018
18:11:11
И кстати, в "котлин в действии" тоже по-русски разжёвано ?♀️

Алексей
05.10.2018
18:24:30
Кажется, разобрался.
in T - гарантия возможности использования наследников типа применительно к входящему контейнеру для записи в него
out T - гарантия возможности применения (приведения к) более общего типа относительно входного типа T
Верно?

Bogdan
05.10.2018
18:31:42


Руслан
05.10.2018
18:51:58
Как то недавно здесь спрашивал, как люди справляются с миграциями пользуясь Exposed. Посоветовали использовать дополнительный инструмент управления миграциями, например FlyWay.
Подключил себе FlyWay, но обнаружил что в бесплатную версию не входят откаты миграций. Кажется, что это очень важная вещь, потому что я уже сталкивался с ситуациями, когда, например, допустил ошибку в скрипте и миграция выполнилась только на половину, в таблицу версий записались изменения и откатывать изменения приходится руками. Да и вообще возможность откатить миграцию выглядит востребованной.
Какую альтернативу FlyWay вы используете? Или все пользуются комерческой версией это либы?
У тебя даже в флайвей либо накатывается файл миграции, либо нет. Поэтому проблем не будет с этим. Откат в флайвей именно работает для целых файлов миграции, а не для поломанных скриптов. Для поломанных скриптов есть транзакции внутри.

Alexandr
05.10.2018
19:08:49
Что было? 350+ сообщений не почитаю(

Quantum Harmonizer
05.10.2018
19:11:02
Оно и понятно.

Alexandr
05.10.2018
19:11:13

Alexandr
05.10.2018
19:11:38
Но в постгресе точно есть

Nameless
05.10.2018
19:15:30

Руслан
05.10.2018
19:16:08
Но в постгресе точно есть
Да и в Марии должен быть. Оракл и мссивэквел в платной поставке anyway. Тут скорее вопрос что зачем использовать такие базы где этого нет, и как вы вообще с такой базой живёте

Quantum Harmonizer
05.10.2018
19:16:38

Nameless
05.10.2018
19:16:49
я занимаюсь андроидом, про большую jvm вышла ложь, про андроид правда, вот и не надо было глотку надрывать орами

Google

Quantum Harmonizer
05.10.2018
19:19:00

Bogdan
05.10.2018
19:21:06

Nameless
05.10.2018
19:21:26

Quantum Harmonizer
05.10.2018
19:21:34

Nameless
05.10.2018
19:21:45
Где?
# Run complete. Total time: 00:00:48
Benchmark (iterations) Mode Cnt Score Error Units
BenchMark.indexed 1 thrpt 10 986.116 ± 27.244 ops/s
BenchMark.iterator 1 thrpt 10 966.844 ± 78.411 ops/s

Bogdan
05.10.2018
19:22:31

Nameless
05.10.2018
19:22:33

Admin
ERROR: S client not available

Bogdan
05.10.2018
19:23:13

Nameless
05.10.2018
19:23:38

Quantum Harmonizer
05.10.2018
19:23:41
Лучше бы сунуть сумму в чёрную дыру

Nameless
05.10.2018
19:23:56

Quantum Harmonizer
05.10.2018
19:24:24

Nameless
05.10.2018
19:25:15
о прикольно, ща

Alexandr
05.10.2018
19:25:25

Quantum Harmonizer
05.10.2018
19:26:18
не факт, что андроид вообще умеет создавать их на стеке

Alexandr
05.10.2018
19:26:39

Nameless
05.10.2018
19:29:56

Google

Quantum Harmonizer
05.10.2018
19:30:51
вот этого я ожидал :)

Nameless
05.10.2018
19:31:18
пару раз прогнал, indexed на 0-10% быстрее
Benchmark Mode Cnt Score Error Units
BenchMark.indexed thrpt 10 925.891 ± 23.426 ops/s
BenchMark.iterator thrpt 10 887.582 ± 25.611 ops/s

Руслан
05.10.2018
19:44:40

Bogdan
05.10.2018
19:46:20

Nameless
05.10.2018
19:47:03

Bogdan
05.10.2018
19:50:58
За что купил за то и продаю
Ну вот, ты продаешь конкретный случай. Зачастую бизнес логика больше влияет на скорость чем цикыл, и этим стоит заниматься когда прижало, нужна скорость. Посмотри доклады Шипилева. Ну и если ты со старта циклы пыиаешь оптимизировать, может в с нада кодит, или напрямую инструкциями
Выиграешь еще 1к оп/с
Простого гет из масива

Nameless
05.10.2018
19:51:53
Да и зачем переписывать если можно сразу написать indexed

Bogdan
05.10.2018
19:52:48

Руслан
05.10.2018
19:53:15

Nameless
05.10.2018
19:53:31

Руслан
05.10.2018
19:54:41
К счастью в котлин изначально нельзя так писать

Bogdan
05.10.2018
19:55:46

Nameless
05.10.2018
19:55:52