Тема номер два: Распределенные системы и синхронизация данных.
Пытливый читательский ум мог заметить, что можно провести параллель с предыдущей темой, так как есть пересечения по понятиям (транзакции и транзакционная память, консенсус и тд) и проблематике.
Вместо нескольких процессоров, уровней кэширования и мемори барьеров фигурируют ноды и репликация данных. А если вам не повезет, то появятся разрывы сети и тогда придется звонить в техподдержку!
Резонный вопрос — причем тут мобильная разработка. Очевидно, что каждый девайс с инстансом приложения представляют из себя независимую ноду распределенной сети.
А если перед вами встала задача изменить какие-то данные оффлайн, потом синхронизовать с сервером, либо несколькими пользователями поизменять данные на разных девайсах, скорее всего столкнетесь с проблемами, которые совсем недавно решались в вопросах проектирования баз данных.
Для ликбеза рекомендую ознакомиться с курсом лекций от Мартина Клеппмана youtube.com/watch?v=UEAMfL…
Поздравляю, после просмотра у вас в рекомендациях на ютубе появятся видео, как Мартин играет на пианино у себя на канале. Это на случай, если заскучаете.
Мартин очень много сделал для хип-хопа в свои годы и в Россию приезжал несколько лет назад на @hydraconference. Вот выступление youtube.com/watch?v=_odfim…, которое все еще релевантно в вопросах мобильной разработки. В целом на канале гидраконф можно найти и еще полезных выступлений.
Антон Давыдов