Презентация, объясняющая концепцию реактивных потоков с использованием Android SDK и RxJavа. Рассчитано на программистов с любым стажем, которые жеалют начать использовать эту концепцию в своих программах.
Реактивные потоки -- это круто.
23. 23
User user = new User("Jake Mobius");
/**
* 100 качественных строчек кода
*/
final String name = user.getName();
//этот assert легко может упасть
assert("Jake Mobius".equals(name));
24. 24
// какой-то тред
User user = new User("Jake Mobius");
fetchInfo(user);
final String name = user.getName();
//этот assert легко может упасть
assert("Jake Mobius".equals(name));
25. 25
// какой-то тред
User user = new User("Jake Mobius");
fetchInfo(user);
final String name = user.getName();
//этот assert легко может упасть
assert("Jake Mobius".equals(name));
// в это же время
// другой какой-то тред
user.setName("Jake Popik");
94. 94
// когда больше не надо слушать этот EditText
nameSubs.unsubscribe();
Observable<String> nameObs = EditTextObservable.from(nameEditText);
Subscription nameSubs = nameObs
.doOnNext(name -> {
Log.i(TAG, "new user name : " + name);
})
.subscribe(name -> {
signUpTitle.setText("Sign up, " + name);
});
171. • объектов аллоцируется больше
• сложно дебажить
• логируйте много
• пишите правильно сразу
171
Ложечка дегтя
172. • объектов аллоцируется больше
• сложно дебажить
• логируйте много
• пишите правильно сразу
• сложно объяснить
172
Ложечка дегтя
173. • объектов аллоцируется больше
• сложно дебажить
• логируйте много
• пишите правильно сразу
• сложно объяснить
• сложно найти крутую команду
173
Ложечка дегтя