@kotlin_lang

Страница 702 из 982
dimiii
12.06.2018
11:23:44
Ой, зачем эти страшные костыли? Это ж не Джава, всё-таки.
Согласен, зачем огород городить не совсем понятно (хотя в статье были аргументы, но не очень убедили, надо будет перечитать). Все же моя деляночка мне пока больше нравится.

Котлин дал нам что-то новое в решении expression problem?

Igor
12.06.2018
11:43:59
Котлин дал нам что-то новое в решении expression problem?
Думаю стоит подождать тайп-классов

dimiii
12.06.2018
11:46:19
Думаю стоит подождать тайп-классов
Ну хотя бы и так, хотя я надеюсь, что им удастся придумать что-то лучшее, что-то более выразительное, хотя бы чуть-чуть. Чем просто копировать достижения из начала 90х.

Google
Валерка
12.06.2018
11:49:59
Можно ли в рекурсивной функции выйти из всей рекурсии Т.е. есть стек вызовов: recursion() //*** recursion() recursion() recursionInvoker() Можно ли из помеченного вызова сделать return сразу в recursionInvoker()?

Kirill
12.06.2018
11:51:51
Это уже не будет рекурсией тогда, по идее.

Алексей
12.06.2018
12:05:01
Throw
Оригинально, но каждый такой return будет недешево обходиться:)

1337
12.06.2018
12:05:46
рекурсия вообще недешевая

Kirill
12.06.2018
12:05:55
Почему?
Насколько я понимаю, смысл рекурсии в том чтобы пройти до дна, а потом вернуться через весь стек ко входу.

1337
12.06.2018
12:05:58
и нинужна в принципе

Алексей
12.06.2018
12:06:15
dimiii
12.06.2018
12:06:22
рекурсия вообще недешевая
tailrec fun .... https://www.programiz.com/kotlin-programming/recursion

1337
12.06.2018
12:06:46
ну я от джавы отталкивался

Quantum Harmonizer
12.06.2018
12:06:53
и нинужна в принципе
Ну не, есть же задачи, рекурсивные по своей природе.

1337
12.06.2018
12:06:54
там хвостовой нет

Google
Алексей
12.06.2018
12:07:23
Насколько я понимаю, смысл рекурсии в том чтобы пройти до дна, а потом вернуться через весь стек ко входу.
Ну рекурсия-то никуда не девается:) мы просто пулей пролетаем до нужного места, вместо того, чтобы шагами возвращаться

Quantum Harmonizer
12.06.2018
12:07:32
там хвостовой нет
Хвостовая рекурсия решает чисто итеративные задачи, настоящая — рекурсивные.

1337
12.06.2018
12:08:00
числа фибоначи в проде считаете?

Алексей
12.06.2018
12:08:37
Quantum Harmonizer
12.06.2018
12:09:11
числа фибоначи в проде считаете?
Нет, деревья обходим. JSON, XML/DOM и т. п.. Фибоначчи вычисляется итеративно.

Алексей
12.06.2018
12:09:13
это не тот канон, о каком речь, но задача та же

1337
12.06.2018
12:12:02
а json/xml итеративно не вычисляются?

деревья это вообще вещь в себе

Алексей
12.06.2018
12:13:28
а json/xml итеративно не вычисляются?
А как ты их итеративно вычислишь? Только если стэки объеков-корней использовать

1337
12.06.2018
12:13:53
ну да, BFS тот же через очередь

Алексей
12.06.2018
12:14:03
А как ты их итеративно вычислишь? Только если стэки объеков-корней использовать
Но это тоже самое, по сути, и пригодиться может только если память беречь надо

Quantum Harmonizer
12.06.2018
12:14:33
а json/xml итеративно не вычисляются?
Вычисляются, если завести свой стек ?

1337
12.06.2018
12:15:12
рекурсия это для laba2.cpp, на проде никогда не видел чтобы из использовали, опасно же

1337
12.06.2018
12:34:34
что регулярки?

Quantum Harmonizer
12.06.2018
12:36:56
Регулярки?
Синхрофазотроны?

Google
Mikhail
12.06.2018
12:44:00
Синхрофазотроны?
Ошибся, нет рекурсии в регулярках

Но, например, стоит задача удалить директорию. Как обойтись без рекурсии?

1337
12.06.2018
12:49:00
разве нет библиотечных функций?

зачем велосипеды городить за счет работодателя

Mikhail
12.06.2018
12:53:12
dimiii
12.06.2018
12:53:39
>Как обойтись без рекурсии? корекурсия ) , >walkFileTree, зачем велосипеды городить ну справедливости ради, вопрос стоял не о конкретной реализации, а о практической полезности рекурсии

Quantum Harmonizer
12.06.2018
12:53:48
Files.walkFileTree, Files.delete
рекурсивные небось?)

dimiii
12.06.2018
12:53:59
корекурсивные

Руслан
12.06.2018
12:54:45
любая рекурсия заменяется итерацией. а раскурчивать графы через стек одно удовольствие

Quantum Harmonizer
12.06.2018
12:55:48
а, ну там есть свой стек, судя по коду :)

ну вот пропатчить ДОМ — это же рекурсивная по своей сути задача

LayoutInflater рекурсивыный, но это не показатель, потому что Android — вообще рассадник антипаттернов)

Oleg
12.06.2018
13:01:32
LayoutInflater рекурсивыный, но это не показатель, потому что Android — вообще рассадник антипаттернов)
читаешь умные книжки про паттеры, читаешь - а тут такое заявление)

Quantum Harmonizer
12.06.2018
13:02:20
читаешь умные книжки про паттеры, читаешь - а тут такое заявление)
Если собрать все книжки по антипаттернам, получится андроид как раз)

Alexander
12.06.2018
14:42:32
То же самое можно сказать про любую крупную систему

Обычно эти антипаттерны появдяются как рав в процессе поиска граблей в этих крупнух системах

Egor
12.06.2018
14:44:32
Нууу, нет. Будем честны, ни в одной системе нет настолько плохого АПИ, как в Андроиде, взять хотя бы количество синглтонов. Да там на каждый функционал свой синглтон, а что может быть хуже неявной передачи состояния? Когда каждую фичу приходится гуглить

Anton
12.06.2018
14:51:21
окей а ты бы как спроектировал апи?)

Google
Anton
12.06.2018
14:51:22
расскажи

и что значит "каждую фичу приходится гуглить"

Quantum Harmonizer
12.06.2018
14:53:48
окей а ты бы как спроектировал апи?)
если убрать рефлексию, язык уже вынудит сделать всё не настолько говёно

Egor
12.06.2018
14:56:32
Ну вот например, самое банальное - захотелось мне на активити впихнуть фрагмент. Не знай я, как это устроено, я бы подумал, что за подобный функционал отвечает сама активити, но нет - мне нужно расчехлить FragmentManager, а откуда я это узнаю, кроме как из гугла? Самодокументируемый код - пффф. И то же самое про LayoutInflater и SharedPreferences, и если я подумаю, я вспомню ещё.

Quantum Harmonizer
12.06.2018
14:57:17
SharedPreferences, Bundle, Intent и прочие гетерогенные мапы в статических языках — фуфуфу

Sergey
12.06.2018
14:57:20
расскажи
Вот ненадо, в архитектурном чате уже занимались этим ? это был испанский стыд )

Quantum Harmonizer
12.06.2018
14:57:25
кстати, -> @pofftop

Egor
12.06.2018
14:57:31
Ну и я вообще молчу про то, что вы ВЫНУЖДЕНЫ юзать IDE, потому что вручную дописывать циферки в R - это, извините, выше человеческих сил

Quantum Harmonizer
12.06.2018
14:57:43
Вот ненадо, в архитектурном чате уже занимались этим ? это был испанский стыд )
там этим занимались даже до того, как я ушёл оттуда, а это было не один месяц назад)

Anton
12.06.2018
14:58:39
Sergey
12.06.2018
14:58:48
А где можно почитать об этом?
Там почистили давно

Egor
12.06.2018
15:01:25
SharedPreferences, Bundle, Intent и прочие гетерогенные мапы в статических языках — фуфуфу
на SharedPreferences, кстати, грешно грешить, в ванильной джаве префсы также устроены

Anton
12.06.2018
15:02:21
пропертис? что за префсы в джаве?

Egor
12.06.2018
15:03:10
пропертис? что за префсы в джаве?
https://docs.oracle.com/javase/8/docs/technotes/guides/preferences/index.html

Quantum Harmonizer
12.06.2018
15:03:25
Anton
12.06.2018
15:03:41
спс

Egor
12.06.2018
15:12:09
Да ладно, не так уж оно плохо, юзать можно ?

Vladimir
12.06.2018
15:13:56
Google
Quantum Harmonizer
12.06.2018
15:14:57
Ой, я про Properties
это да, мощный класс)

Alexander
12.06.2018
15:15:10
С чем сравнивать. В Андроиде полно очень клевых решений. Есть и неудачные, но кто же знал, что они будут неудачными, когда их делали... Это беда любого успешного проекта, даже самого языка Java. Как только что-то становится успешным и становится очень много пользователей, обратная совместимость не дает возможности исправить косяки.

Alexander
12.06.2018
15:17:17
Наследование контекстов

Quantum Harmonizer
12.06.2018
15:18:36
Наследование контекстов
вот в больное место щас было

Alexander
12.06.2018
15:18:56
Я на андроиде в последний раз писал года три назад, там все уже начало сыпаться под своим весом, но вообще платформа на меня произвела очень хорошее впечатление.

Quantum Harmonizer
12.06.2018
15:19:52
Я именно поэтому всегда ратую за то, чтобы в котлине не добавлали ничего новго в язык без очеь хороших причин и делали все на уровне библиотек.
Да, я вот до сих пор слезу пускаю при упонимании того, что в котлине хотят сделать SAM-интерфейсы.

Страница 702 из 982