Search
Write a publication
Pull to refresh
13
0
Михаил @Mikhail_dev

User

Send message
Я полностью согласен. И я понимаю этот минус.
Просто в статье, в комментариях пишут что мол плохо, что антипаттерн, но всякие доводы что там несколько раз может быть инициализирован, что данные в нём теряются и подобное — смешны. К этому и вёл я.

Если такая уж тема пошла, то скажите, как быть с глобальными данными? Есть к примеру у нас довольно часто изменяющиеся данные, которые мы должны получать в разных частях приложения, будь то сервис или UI. Сохранять в базу — это будет оверхед, ибо данные очень часто изменяются (к примеру датчики телефона, данные с NMEA протокола и т.д.). Постоянно дёргать ПЗУ будет неправильно. Как эту задачу решить элегантно? Я использую для этого Singleton.
тесты — это единственное, ибо покрыть тестами сложно.
что-то изменили и сломалось? дык кто виноват?? вы вызываете метод у объекта и этот метод должен ровно то, что от него просят. если вы его сломали, то не важно, в синглтоне он или нет, он не работает.
и да, я не горжусь и не защищал, а говорю где его можно использовать. только с тестами проблема. или есть еще что?
Вот Вам и проблема синглтона для Андроида. Что делать, если мы запустили выбор файла и пока была открыта галерея наше приложение закрылось и по возвращению у нас нет сессии, перекинуть на окно логина? Круто, я в чате шлю файл другу, но вместо этого меня выкидывает из сессии. Очень крутое поведение.

В чем проблема то? Всё зависит от кейса. Я сейчас же говорил про кейс к примеру тех же банковских приложений, когда сессия будет считаться невалидной, и её не надо сохранять. Но можно и сохранить, это ВООБЩЕ не проблема. Взяли и сохранили в том же синглтоне. Что не так?
Вы же понимаете, что в приложениях для Android абсолютно нормально при очередном вызове getInstance() получить новый экземпляр класса? К этому нужно быть готовым.

А вот с этого момента поподробнее. С чего вы решили что вы получите новый экземпляр класса?
Не совсем понял. Ну вот есть сессия у нас, она не может быть сохранена. Окей, приложение умерло вместе с ней. Дальше при запросе данных сессии в синглтоне, мы смотри, не null ли она к примеру, и если да, то производим необходимые действия.
Есть к примеру Singleton, к которому подписываются и отписываются Activity/Fragments/Service при изменении нашего местоположения. Это один из кейсов.

>В целом не буду с Вами спорить, на вкус и цвет все фломастеры разные.
В целом в споре рождается истина, так что давайте =)
То, что хранение данных в синглтоне плохая идея.
Мы довольно активно используем синглтоны, потому как они:

1. Удобны, особенно как обсерверы
2. Редко выгружаются (ибо загрузка происходит класслодером)
3. Являются хорошим кешем.

И то, что они выгружаются… И что с того? в конструкторе инициализацию прописал и всё встанет на свои места. Критические данные кешируем на ПЗУ при необходимости, откуда мы их берем при инициализации. Что не так то?
То, что хранение данных в синглтоне плохая идея.
Мы довольно активно используем синглтоны, потому как они:

1. Удобны, особенно как обсерверы
2. Редко выгружаются (ибо загрузка происходит класслодером)
3. Являются хорошим кешем.

И то, что они выгружаются… И что с того? в конструкторе инициализацию прописал и всё встанет на свои места. Критические данные кешируем на ПЗУ при необходимости, откуда мы их берем при инициализации. Что не так то?
Интересно, у минусующих кроме инстинкта кликания, есть умение обосновывать свои действия?
Не скажи. Бывало такое, что бегаешь весь день, а потом понадобилось зайти к кому-нибудь на некоторое время. Если с одеждой гораздо проще, то носки могут издавать неприятный запах.
То, что эклипс гуглом не поддерживается, а студия — да?
Здравствуйте. Подскажите, будут ли видео со второго и третьего дня конференции?
Гугл добавил метод в Android SDK: Log.wtf для вывода лога. И это в Англоговорящей стране, Карл!
Тоже считаете гугл плохим и некультурным? Или только хаять русское способны?
Ага, я когда-то пол дня потратил в анализе того, почему мои активности умирают на 5 версии андроида, а на другом телефоне с четверкой всё хорошо, пока не докопался до этой штуки, которую включил и забыл.
Я думал уже не осталось людей, которые обращают на это внимание, ан нет.
Использую в общении такие слова как активность, активити, и ничего, никто пока еще от этого не умер и все сразу понимали смысл.

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity