Pull to refresh

Comments 6

Спасибо за статью, давно не видел примеров на RxJava, интересно было узнать есть ли сильные различия на андроиде и десктопе.
Подскажите, человеку который который никогда не писал для андроидов, а callback hell в примерах кода — это особенность мобильной разработки?

Devcolibri а теперь попробуй набрать что-нибудь такое из середины текста и не сначала слова. Поиск по одному слову — это ерунда и даже если по нескольким словам подряд — это трата времени
Спасибо за статью. На мой взгляд, один из важных момент при работе с Rx — помнить про подписки и не забывать отписываться от них. В приведенных примерах, как-то про это забыли. У Вас в данном случае создается бесконечный Observable, подписка на который нигде не сохраняется, но от которого нужно отписаться в onDestroy(). Хотелось бы, чтобы пользователи, которые будут читать статью, видели «картину в целом» и следовали хорошим практикам.
Devcolibri думаю в данном примере правильнее будет использовать заместо оператора distinct() более простую версию distinctUntilChanged(). В случае distinct() мы не сможем два раза искать по одной и той же строке, что как по мне вообще не логично для данного примера. Т.е сначала мы ввели имя Петя и получили какой-то результат, потом ввели имя Даша и снова получили результат, b вдруг мы решили снова искать по имени Петя, но результат уже не получили.
Да, верно подмечено. Спасибо за замечание, добавил примечание переводчика в статью.
Devcolibri не надо так пользоваться kotlin:

val searchView = menu?.findItem(R.id.action_search)?.actionView as SearchView
           // Set up the query listener that executes the search
    searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener {


Плохо когда nullable принуждают к notNullable, а потом без проверки вешают на него листенер.
Это то же самое, что и!!! — это грех за такое Бреслав накажет.
Свалитесь вы как-нить с NPE(и черт с вами). Не думаю, что стоит обучать «ТАКОМУ» подходу…

А теперь короночка, Devcolibri, которая ставит под вопрос функциональность вашего поиска — обратите внимание на оператор ".distinct()".
Приведу в пример такой кейс: держите вы в голове поисковой запрос «Null safety in Kotlin». Вводите его… постепенно… с новыми символами вам предлагаются варианты. Это хорошо… набрав данный запрос до конца и увидев соответствующие подсказки от поиска. А потом у ужасом осознаете, что вы не знаете, что такое «null safety» в принципе! и решаете почитать про это… вы начинаете стирать ваш поисковой запрос… и… и… и .distinct() ломает вашу жизнь.
Sign up to leave a comment.

Articles