Маніфест архітектурної болю

Всім привіт!
Це буде незвичайна стаття. Це буде стаття-маніфест! Маніфест архітектурної болю!
Досить це терпіти, годі це тримати в собі. Візьми і скажи все, що думаєш про архітектуру. Все, що думаєш про «чистої архітектурі»!
Всі, всі, всі! Від початківців до нестримних гиків.
Все під кат!
image

Якщо ти заглянув сюди, значить нам з тобою по дорозі, дорогий читач.
Всіх нас об'єднує одне! Любов! Любов до краси, любов до порядку, любов до розширюваності і до тестируемости, любов до гнучкості і поддерживаемости! Так, це любов до архітектури.
Архітектура. Як багато в цьому слові. Як незвичайно і багатогранно воно. Для нас з тобою воно багато значить.
Ти прочитав багато статей, переглянув відео, спробував і реалізував різноманітні приклади. Ти можеш забути сходити за хлібом, але про архітектуру завжди пам'ятаєш.
Чи ти тільки в самому початку шляху. Ти вчишся, ти стараєшся. І ти хочеш, щоб люди, які продовжать твій проект, не бажали тобі горіти в пеклі на віки вічні.
Але ворог не дрімає! Він створив Android, придумав життєвий цикл, актівіті і фрагменти, адаптери та пермишены. І ворог дав нам усім цим користуватися, заманив нас, але при цьому не сказав, як правильно користуватися.
Вороги, вони такі.
А архітектура вона така, що кількість запитань завжди більше кількості відповідей. І чим далі, тим більше варіацій відповідей. І далеко не завжди ці варіанти спрацьовують так, як замислювалося.

Рік тому я виступав на Mobius 2016 з доповіддю — «Пишемо досліджуваний код». Ще на самій конференції мені задавали питання, відповіді на які я міг дати далеко не відразу. І я впевнений, що, якщо ти досвідчений розробник, у тебе завжди знайдеться завдання, над якою я міцно задумався.
Ще відкрию тобі маленький секрет. На форумах часто трапляються одні і ті ж питання. Якщо почитати код розробників, які пробують перший раз реалізувати «чисту архітектуру», то практично всі натикаються на одні і ті ж граблі. Тобі не здається це дивним? Може, варто упорядкувати всі ці питання і граблі?
Так давай об'єднаємо наші зусилля, дорогий читачу! Розкажи про свою проблему, яку не можеш вирішити ти або твій колега, або про проблему, яку вдалося перемогти і рішенням якою хочеться поділитися. Може, ти не згоден з так такої «чистої архітектурою», вважаючи, що «горою абстракції» тільки все сильніше заплутується. Може у тебе є свій погляд, свою думку на рахунок цього. Або у тебе є «вбивча завдання», яка зруйнує наше уявлення про ідеальний світ :) найголовніше не мовчи! Розкажи про свій біль!

Будь взаємодія повинна мати чіткий план і чіткий результат. Тому пропоную нам з тобою домовитися, що ми взагалі очікуємо один від одного.

Дорогий друже, я чекаю від тебе, що ти:

  1. Проглянеш моє відео з минулої конференції.
  2. Прочитаєш блог Fernando Cejas.
  3. Почитаєш про RxJava. Я настійно рекомендую ось цю книжку. Для мене вона стала справжнім відкриттям, навіть незважаючи на те, що я себе вважав розуміються в RxJava. Велике спасибі Дмитру Поліщуку за наводку.
  4. Почитаєш про Dagger 2. Тут я наведу свої статті (1, 2). У них вказані посилання на інші джерела.
  5. Почитаєш і спробуєш різні бібліотеки, які можуть полегшити твоє життя. Це Moxy, mosby та інші.
  6. Можеш навіть подивитися приклади від Гугла :)
  7. Сформулюєш проблеми, питання, незгоди. Пиши у коментарі, в приват, на пошту. Буду дуже радий!
Від себе ж я обіцяю наступне:

  1. Постараюся дати аргументовані, ясні і чіткі відповіді на найбільш поширені питання. Як приклад, це можуть бути такі питання. Повинен бути Context в Presenter? Потрібні getterы в View або Presenter? Як боротися з legacy кодом? Яка повинна бути структура пакетів? Питань дуже багато :)
  2. Розберу з тобою нетривіальні завдання. Як бути з навантаженим екраном? Чи можемо ми заиспользовать відразу кілька Презентеров? Потрібен EventBus нам? Як швидко ваше додаток перевести на рейки чистої архітектури? А якщо у нас все додаток було побудовано на паттерне «Спостерігач», те, що взагалі робити з цим??? Я думаю, у тебе знайдеться не менш підступне питання :)
Часу у нас з тобою не так вже й багато — до 21-22 квітня, коли пройде Mobius 2017 анонс). Ми повинні встигнути провести величезну підготовчу роботу, щоб наше фінальне спілкування було найбільш продуктивним!
Хочу порадувати тебе ще однією новиною! На Mobius буде ще виступати відомий і вищезгаданий Fernando Cejas. Він планує розповісти про еволюцію проекту. Про те, як при розвитку і зростанні проекту зберегти його красу і стрункість, розширюваність і поддерживаемость.
І ми з Fernando постараємося, щоб наші доповіді доповнювали і розвивали один одного. Адже ми обидва хочемо, щоб ти, дорогий читачу, вийшов з конференції натхненним новими ідеями і рішеннями!
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.