Size: a a a

Kotlin Community

2020 May 05

AN

Alexander Nozik in Kotlin Community
Vladimir Sitnikov
Всё-таки нужен пример случая где от callback'ов сильно плохо. Как-никак, а в Gradle их сильно меньше, чем, например, в обычном js (который до async/await) и меньше, чем в rx.*
так там как раз мало колбэеков. Если бы они были, можно было бы завернуть нормально. Колбэки фактически есть только на подключение плагинов
источник

T

Tàu Ngầm Hạt Tiêu... in Kotlin Community
Roman Ushakov
@android_ru but it's russian android group
Thanh you so much
источник

AN

Alexander Nozik in Kotlin Community
По хорошоему, все, что делается через Action, должно быть колбэком
источник

VS

Vladimir Sitnikov in Kotlin Community
Alexander Nozik
По хорошоему, все, что делается через Action, должно быть колбэком
Я в смысле: сейчас их мало, т.к. не нужны.

Давай пример какой-нибудь, где превращение action в suspend (или добавление новых suspend) упростит написание скрипта/плагина
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Sitnikov
Я в смысле: сейчас их мало, т.к. не нужны.

Давай пример какой-нибудь, где превращение action в suspend (или добавление новых suspend) упростит написание скрипта/плагина
я писал. Резолв конфигурации или компилляции в котлин
источник

AN

Alexander Nozik in Kotlin Community
а можно как-то отключить
This build uses unsafe internal compiler arguments:

-XXLanguage:+InlineClasses
я в курсе, я уже подписался
источник

VS

Vladimir Sitnikov in Kotlin Community
Alexander Nozik
я писал. Резолв конфигурации или компилляции в котлин
Ты про 'Например ты не можешь делать плаги, который просто так добавляет зависимости, потому что соурс-сетов в этот момент еще нет'?

А как тут помогут корутины? У тебя в голове есть пример синтаксиса, который бы заработал после корутинизации?
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Sitnikov
Ты про 'Например ты не можешь делать плаги, который просто так добавляет зависимости, потому что соурс-сетов в этот момент еще нет'?

А как тут помогут корутины? У тебя в голове есть пример синтаксиса, который бы заработал после корутинизации?
Вот у нас есть некоторый Action например kotlin{target{...}}. Смысл в том, что тело этого target запускается не прямо вот сейчас, а когда этот target будет задекларирован.
источник

AN

Alexander Nozik in Kotlin Community
Это можно сделать и без корутин
источник

AM

Andrew Mikhaylov in Kotlin Community
Alexander Nozik
а можно как-то отключить
This build uses unsafe internal compiler arguments:

-XXLanguage:+InlineClasses
я в курсе, я уже подписался
Нельзя, насколько я знаю. А то уберёте варнинг, что-то сломается, а вы потом пойдёте ругаться на JetBrains, какие они плохие. А так вам на каждый билд напоминалочка -- в случае чего вы ССЗБ :)
источник

AN

Alexander Nozik in Kotlin Community
Andrew Mikhaylov
Нельзя, насколько я знаю. А то уберёте варнинг, что-то сломается, а вы потом пойдёте ругаться на JetBrains, какие они плохие. А так вам на каждый билд напоминалочка -- в случае чего вы ССЗБ :)
Я в курсе что я ЗБ. Ну ладно. Просто он это на каждый модуль плюет
источник

VS

Vladimir Sitnikov in Kotlin Community
Alexander Nozik
Вот у нас есть некоторый Action например kotlin{target{...}}. Смысл в том, что тело этого target запускается не прямо вот сейчас, а когда этот target будет задекларирован.
Это уже зависит от реализации плагина. Если kotlin plugin вызывает action сразу, то это его проблема. И эта проблема ортогональна корутинизации :-/
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Sitnikov
Это уже зависит от реализации плагина. Если kotlin plugin вызывает action сразу, то это его проблема. И эта проблема ортогональна корутинизации :-/
В приципе согласен
источник

QH

Quantum Harmonizer in Kotlin Community
Quantum Harmonizer
Это давно сделано, логи у них есть, задача — критикал.
А пока некоторые классы можно редактировать только в блокноте.
Короче, моё нытьё выключалось одним флажком.
источник

VP

Vladimir Petrakovich in Kotlin Community
Quantum Harmonizer
Короче, моё нытьё выключалось одним флажком.
Теперь джава не нужна? 😄
источник

QH

Quantum Harmonizer in Kotlin Community
Vladimir Petrakovich
Теперь джава не нужна? 😄
теперь только в качестве эксперимента
источник

М

Михаил in Kotlin Community
Здравствуйте. Подскажите как в котлине реализовать синглтон с констуктором или может есть какое-то лучшее решение. Суть в том, что мне надо иметь доступ к одному FragmentManager из 2-х классов, один из них активити, второй адаптер. В Java это было проще сделать:                       public class ViewPresenter implements ChangeView{
   public static ChangeView changeView;
   private FragmentManager fragmentManager;
   private int containerId;
   public ViewPresenter(FragmentManager fragmentManager){
       this.fragmentManager = fragmentManager;
       changeView = this;
   }

   @Override
   public void setFragment(int containerViewId, Fragment fragment) {
       fragmentManager.beginTransaction()
               .add(containerViewId, fragment)
               .commit();
       this.containerId = containerViewId;
   }

   @Override
   public void changeFragment(Fragment fragment) {
       fragmentManager.beginTransaction()
               .addToBackStack("")
               .replace(containerId,fragment).commit();
   }
}
источник

AN

Alexander Nozik in Kotlin Community
Михаил
Здравствуйте. Подскажите как в котлине реализовать синглтон с констуктором или может есть какое-то лучшее решение. Суть в том, что мне надо иметь доступ к одному FragmentManager из 2-х классов, один из них активити, второй адаптер. В Java это было проще сделать:                       public class ViewPresenter implements ChangeView{
   public static ChangeView changeView;
   private FragmentManager fragmentManager;
   private int containerId;
   public ViewPresenter(FragmentManager fragmentManager){
       this.fragmentManager = fragmentManager;
       changeView = this;
   }

   @Override
   public void setFragment(int containerViewId, Fragment fragment) {
       fragmentManager.beginTransaction()
               .add(containerViewId, fragment)
               .commit();
       this.containerId = containerViewId;
   }

   @Override
   public void changeFragment(Fragment fragment) {
       fragmentManager.beginTransaction()
               .addToBackStack("")
               .replace(containerId,fragment).commit();
   }
}
Синглтон с конструктором не бывает
источник

ПГ

Павло Гриник... in Kotlin Community
Михаил
Здравствуйте. Подскажите как в котлине реализовать синглтон с констуктором или может есть какое-то лучшее решение. Суть в том, что мне надо иметь доступ к одному FragmentManager из 2-х классов, один из них активити, второй адаптер. В Java это было проще сделать:                       public class ViewPresenter implements ChangeView{
   public static ChangeView changeView;
   private FragmentManager fragmentManager;
   private int containerId;
   public ViewPresenter(FragmentManager fragmentManager){
       this.fragmentManager = fragmentManager;
       changeView = this;
   }

   @Override
   public void setFragment(int containerViewId, Fragment fragment) {
       fragmentManager.beginTransaction()
               .add(containerViewId, fragment)
               .commit();
       this.containerId = containerViewId;
   }

   @Override
   public void changeFragment(Fragment fragment) {
       fragmentManager.beginTransaction()
               .addToBackStack("")
               .replace(containerId,fragment).commit();
   }
}
хочу уточнить некоторые моменты
1. Это ведь не синглтон
2. А зачем так извиваться, вместо того, чтобы fragment manager просто передать из активити в адаптер?
источник

М

Михаил in Kotlin Community
Павло Гриник
хочу уточнить некоторые моменты
1. Это ведь не синглтон
2. А зачем так извиваться, вместо того, чтобы fragment manager просто передать из активити в адаптер?
а как лучше это сделать? Хотел сделать один фрагмент менеджер на весь проект. Dependency Injection нет смысла делать?
источник