
Михаил
25.06.2017
10:39:00
отсутствие static (при переписывании некоторых моментов на котлин это самая большая боль)

DarkMentat
25.06.2017
10:39:24

Anton
25.06.2017
10:40:04

Михаил
25.06.2017
10:40:13

Google

DarkMentat
25.06.2017
10:40:39
ну да, companion objects часто уродливо выглядят

Михаил
25.06.2017
10:41:24
override синим поначалу не нравилось, сейчас привык
раньше по коду с помощью желтых @Override проще было глазами бегать

Denis
25.06.2017
10:42:11

Dmitry
25.06.2017
10:42:38

Михаил
25.06.2017
10:43:06
final забыл
если ты о static final, то лично мне это как-то не очень нравилось визуально

Михаил
25.06.2017
10:43:54
На джаве куда удобнее писать только из-за того что там все стабильно работает

Михаил
25.06.2017
10:44:50

DarkMentat
25.06.2017
10:45:36
public по-умолчанию?

Михаил
25.06.2017
10:46:46
Ну например хопа и в новой версии релизной у меня автоимпорты отломалимь в одном классе, приходилось пару раз студию перезапускать. Мелочи, но на них уходит время, которое вообще не хочется на такое тратить

Михаил
25.06.2017
10:49:47

Google

Жабра
25.06.2017
11:05:43
Наоборот, хорошо что они убрали static.

Шурик
25.06.2017
11:07:31

Михаил
25.06.2017
11:12:31

Жабра
25.06.2017
11:13:55
А так же статик противоречит парадигме ООП. И почти везде можно придумать как обойтись без статика.

Gleb
25.06.2017
11:14:46

Михаил
25.06.2017
11:17:08

Михаил
25.06.2017
11:18:32

Alexey
25.06.2017
11:19:12

Quantum Harmonizer
25.06.2017
11:20:38

Шурик
25.06.2017
11:22:49

Quantum Harmonizer
25.06.2017
11:26:14

Шурик
25.06.2017
11:27:40
и как правило статика ))

Dmitry
25.06.2017
11:30:35

Dmitriy
25.06.2017
11:31:21

Quantum Harmonizer
25.06.2017
11:31:45

Dmitriy
25.06.2017
11:32:02
Нууу

Quantum Harmonizer
25.06.2017
11:32:02
Тоже процедурщина, только не уродливо.

Dmitriy
25.06.2017
11:32:25
В том-то и дело. Самообман)
Контекста не имеем так же

Google

Gleb
25.06.2017
11:36:30

Konstantin
25.06.2017
11:51:48

DY
25.06.2017
12:05:05

Михаил
25.06.2017
12:05:53

DY
25.06.2017
12:08:47

Михаил
25.06.2017
12:09:30

Igor
25.06.2017
13:25:23
А можете высказать свое мнение: стоит ли (при условии неплохого знания плюсов и чистого си) начинать изучение не с java а прямиком с kotlin? Знакомому нужен совет, я даже не уверен, что бы стоит сказать

whalemare
25.06.2017
13:28:31
Igor В котлине ничего плохого нет. Он сочетает в себе много парадигм и классных фич из других языков. Особенность его также в том, что он использует JVM, тобишь джаву все равно учить придется так или иначе (структура данных и все вот это), но не синтаксис. Помимо этого еще на нем не очень много вакансий и зарабатывать здесь и сейчас сложно.

Anton ?
25.06.2017
13:30:13
Если начинающий - однозначно java. Как уже сказали выше всё равно придётся с ней работать. К тому же информации и обучающих материалов для java больше.

Umren
25.06.2017
13:30:45
на андроиде мало вакансий?

whalemare
25.06.2017
13:31:22

whalemare
25.06.2017
13:31:27
на андроиде, да

Igor
25.06.2017
13:35:43

Umren
25.06.2017
13:37:13
по джаве книг много толковых

Anton ?
25.06.2017
13:37:14

whalemare
25.06.2017
13:37:58

Igor
25.06.2017
13:39:30

Umren
25.06.2017
13:39:55
если он плюсы знает, то можно и сразу в котлин
зная плюсы можно любой другой язык освоить быстро)

Google

whalemare
25.06.2017
13:41:00
да, скорее всего это так) обычно если хватает сил на плюсы то на все остальное уже смотришь как на деткий сад)

Umren
25.06.2017
13:41:18
угу

Dmitry
25.06.2017
14:05:55
всё-же, минимально знать джаву будет не лишним. например, знать, во что компилится код, почему, когда делаешь switch-case по всем значениям enum-а, надо делать ветку для default, и пр.

Igor
25.06.2017
14:06:56

Anton
25.06.2017
14:09:46
Да уж свич кейс по енаму самое главное знание в джаве

Dmitry
25.06.2017
14:10:45
это просто пример

Igor
25.06.2017
14:11:24
это просто пример
да мне вот интересно стало почему я впервые слышу об этом? Так ответ - null хэндлить, или там оптимизация какая-то идет?

Dmitry
25.06.2017
14:11:51
в enum можно будет добавить новое значение, при этом сохранится обратная совместимость

Admin
ERROR: S client not available

Igor
25.06.2017
14:12:55
мм... забавно

Dmitry
25.06.2017
14:14:36
"открытость для расширения" из OCP

Vitalii
25.06.2017
14:28:53

Igor
25.06.2017
14:29:56

Quantum Harmonizer
25.06.2017
14:31:32

Vitalii
25.06.2017
14:32:38

Dmitry
25.06.2017
14:33:31
что угодно

Anton
25.06.2017
14:55:17
Зачем делать switch на enum? :)
Switch - это же по сути замена if. Неважно на чем его делать, если он вносит ясность и добавляет удобства. Так можно дойти "зачем switch, есть else-if" ))

Quantum Harmonizer
25.06.2017
15:03:19

Михаил
25.06.2017
15:04:45

Quantum Harmonizer
25.06.2017
15:06:22

Google

Vitalii
25.06.2017
15:06:58

Anton
25.06.2017
15:07:22
If'у - if'ово, when'у - when'ово

Dmitry
25.06.2017
15:25:02
логика в enum-ах - нарушение srp

Igor
25.06.2017
15:50:42

Sergey
25.06.2017
16:27:34
Switch кажется вообще антипаттерн

Quantum Harmonizer
25.06.2017
16:36:04

Михаил
25.06.2017
16:37:19
полиморфизм и гора if else

Sergey
25.06.2017
16:40:30
Нет гора if else не решает проблему и это тоже плохо
Вот нашел статью касательно вопроса https://refactoring.guru/ru/replace-conditional-with-polymorphism
Ключевая проблема if else и switch в том что никогда не знаешь сегодня у тебя 3 условия, завтра 4... 10... 110

Михаил
25.06.2017
16:43:28
а проблема в чем?

Sergey
25.06.2017
16:44:42
В том что ты всегда можешь получить огромное количество if else, который плохо читаетсяи допускаются ошибки

Михаил
25.06.2017
16:45:38
поэтому в котлине есть when)
тем более не всегда возможно инкапсулировать логику в объекте, потому что ей именно в нем не место

Михаил
25.06.2017
16:50:32
error: incompatible types: NonExistentClass cannot be converted to Annotation
Откуда может эта ошибка появляться на всех объявлениях даггеровских аннотаций? Причем такое только в версии 1.1.3

Михаил
25.06.2017
16:54:14
посмотри на другие ошибки компиляции

Михаил
25.06.2017
16:54:57
В проекте ничего не менял, только версию котлина менял

Михаил
25.06.2017
16:55:21
вот и проблемы тулинга)

Михаил
25.06.2017
16:55:25