
Юрий
17.11.2016
12:47:22
лежит, да
вот только сучонок работать не хочет)))

Максим
17.11.2016
13:42:37
Расскажите, что значит вот такая запись?
class Singleton {
public Object get() {
synchronized(Singleton.class) {
return instance;
}
}
Можно же залочить и объектом

Google

Максим
17.11.2016
13:42:56
вот в чем принципиальная запись между ними?
synchronized(obj) {}
где, obj - заранее проинициализированное поле этого же класса

Alexey
17.11.2016
13:46:09
@kmaxim смотри на static-методы

balolam
17.11.2016
13:46:13
и знаешь, такую запись считают плохой практикой
Желательно не синхронизироваться на SomeClass.class

Andre
17.11.2016
13:46:54

Максим
17.11.2016
13:46:56
запись - на .class?

balolam
17.11.2016
13:47:10

Andre
17.11.2016
13:47:32

balolam
17.11.2016
13:47:37
Правда без ленивой инициализации

Google

balolam
17.11.2016
13:47:57
+ лучше уже Kotlin-й синглтон

Максим
17.11.2016
13:47:59
ага, я когда-то читал 4 способа организации Singleton в джава

balolam
17.11.2016
14:03:02

Nikita
17.11.2016
14:03:36

balolam
17.11.2016
14:03:56

Nikita
17.11.2016
14:04:22

balolam
17.11.2016
14:04:35
+ бывают случаии, когда для создания инстаца нужен к примеру Context (я такого не люблю, но так делают)

Максим
17.11.2016
14:04:58
синглтон - воообще анти-паттерном считается

balolam
17.11.2016
14:05:48

Nikita
17.11.2016
14:06:08

Reaver
17.11.2016
14:06:36

Dmitry
17.11.2016
14:06:52
где считается? кто считает?)

balolam
17.11.2016
14:09:26
где считается? кто считает?)
Это просто способ, который в неумелых руках превращается сквозную функциональность + найдется тот кто еще утечку памяти так заработает

Максим
17.11.2016
14:09:32
первая ссылка в гугле

balolam
17.11.2016
14:09:32
А так, я нормально бы к ним относился

Максим
17.11.2016
14:09:32
http://automated-testing.info/t/singleton/1636

Dmitry
17.11.2016
14:09:43
в мобильных девайсах как раз лучше иногда держать в памяти что-то нежели заставлять GC жрать время

balolam
17.11.2016
14:09:44
Та ясное дело

Максим
17.11.2016
14:10:10
а так вообще, я и сам долгое время баловался синглтоном ))

Google

Dmitry
17.11.2016
14:10:14
ну там все про большую жаву

balolam
17.11.2016
14:10:54

Dmitry
17.11.2016
14:10:59
тут ресурсы ограничены: я не говорю что все надо в синглтонах делать - но они нужны в некоторых случаях
используйте, не смотрите умные статьи об архитектурах) На практике лучше познается

balolam
17.11.2016
14:13:25

Dmitriy
17.11.2016
14:14:20
memory leaks
не стоит контекст хранить

Andre
17.11.2016
14:14:52
У нас тут мобайл, нам крайне нежелательно создавать много объектов и провоцировать гц

balolam
17.11.2016
14:14:55

Dmitry
17.11.2016
14:15:20
где лики?

balolam
17.11.2016
14:15:22

Gerc
17.11.2016
14:16:12

Dmitry
17.11.2016
14:16:39
кому нужен rx)Ну кроме мульти сетевых запросов)

Andre
17.11.2016
14:16:40
Я вот еще вчера был крайне удивлен, что сеттеры и геттеры при частом использовании сильно замедляют работу приложения

Dmitry
17.11.2016
14:16:51
смотря где
внутри самого класса - компилятор умный - все заинлайнит

Andre
17.11.2016
14:17:19
Когда один раз используешь - не страшно, но в цикле там элементарно миллисекунды съедаются

Dmitry
17.11.2016
14:17:23
снаружи уже нет(

Andre
17.11.2016
14:17:51
Вот как раз я про "снаружи" :)

Alexey
17.11.2016
14:17:53
@andremacareno гугл же где-то говорил, что сеттеры с геттерами далвик оптимизирует? Миллисекунды?!

Google

Dmitry
17.11.2016
14:18:36
далвик ничего не оптимизирует

Andre
17.11.2016
14:18:49

Dmitriy
17.11.2016
14:18:50
В чем тут утечка?
ты когда пытаешься сохрвнить контекст а instance, тебе компилчтор говорит, что эт плохая идея

Alexey
17.11.2016
14:19:24
@volkovskiyda и что, ты его слушаешь?

Dmitriy
17.11.2016
14:19:31
всегда

Dmitry
17.11.2016
14:19:32
не

Andre
17.11.2016
14:19:38

Dmitry
17.11.2016
14:19:39
не компилятор а lint
ты ему укажи что тут безопасно

Andre
17.11.2016
14:20:09
К тому же, ты можешь просто зануллить ссылку, когда тебе она больше не нужна

balolam
17.11.2016
14:20:50
всегда
Дак в чем утечка? Утечка ссылки на то что для жизненного цикла приложения и ак выступает в роли синглтона?

Максим
17.11.2016
14:21:32
А кстати, геттеры/сеттеры съедают же лимит методов DEX?
Я в последних приложениях для DTO стал юзать паблик-поля просто