Содержание
- 2. О себе 7 лет в Android-разработке В ЦФТ с 2013 г. Разработал более десятка проектов
- 3. О чем буду говорить 1. С чего все начиналось 2. Как набирали команду и решали задачи
- 4. О чем буду говорить 1. С чего все начиналось 2. Как набирали команду и решали задачи
- 5. О чем буду говорить 1. С чего все начиналось 2. Как набирали команду и решали задачи
- 6. О чем буду говорить 1. С чего все начиналось 2. Как набирали команду и решали задачи
- 7. О чем буду говорить 1. С чего все начиналось 2. Как набирали команду и решали задачи
- 8. О чем буду говорить 1. С чего все начиналось 2. Как набирали команду и решали задачи
- 9. С чего все началось?
- 10. Бизнес поставил задачу Новый дизайн Масштабироваться Увеличить скорость разработки фич Улучшить стабильность
- 11. Бизнес поставил задачу Новый дизайн Масштабироваться Увеличить скорость разработки фич Улучшить стабильность
- 12. Бизнес поставил задачу Новый дизайн Масштабироваться Увеличить скорость разработки фич Улучшить стабильность
- 13. Бизнес поставил задачу Новый дизайн Масштабироваться Увеличить скорость разработки фич Улучшить стабильность
- 14. Но не все так просто…
- 15. Проблема №1 Архитектура
- 16. ? MVPVM?
- 17. ? MVPVM?
- 18. ?
- 20. Проблема №2 Ресурсы и стили
- 23. Проблема №3 Рефакторинг
- 24. Смотрим покрытие тестами
- 26. В результате получили
- 27. Монолитный проект – сложно масштабироваться Нет архитектуры – кругом спагетти-код Долгий рефакторинг – тонем в техдолге
- 28. Монолитный проект – сложно масштабироваться Нет архитектуры – кругом спагетти-код Долгий рефакторинг – тонем в техдолге
- 29. Монолитный проект – сложно масштабироваться Нет архитектуры – кругом спагетти-код Долгий рефакторинг – тонем в техдолге
- 30. Монолитный проект – сложно масштабироваться Нет архитектуры – кругом спагетти-код Долгий рефакторинг – тонем в техдолге
- 31. Монолитный проект – сложно масштабироваться Нет архитектуры – кругом спагетти-код Долгий рефакторинг – тонем в техдолге
- 33. Набираем команду, решаем задачи
- 34. Какая структура проекта будет?
- 35. Паттерн проектирования?
- 36. Прошло много часов, ни одного решения
- 41. Критерии эффективной команды
- 42. Единомышленники 1 tech lead Прагматичный выбор технологий Уровень знаний не ниже среднего 1 команда = 4-5
- 43. Единомышленники 1 tech lead Прагматичный выбор технологий Уровень знаний не ниже среднего 1 команда = 4-5
- 44. Единомышленники 1 tech lead Прагматичный выбор технологий Уровень знаний не ниже среднего 1 команда = 4-5
- 45. Единомышленники 1 tech lead Прагматичный выбор технологий Уровень знаний не ниже среднего 1 команда = 4-5
- 46. Единомышленники 1 tech lead Прагматичный выбор технологий Уровень знаний не ниже среднего 1 команда = 4-5
- 47. Разбираем приложение по кирпичикам
- 48. 1 фича = 1 стикер ~ 5 месяцев Оценка на 1 чел (S, M, L, XL),
- 49. Строим архитектуру
- 50. Требования к архитектуре Масштабируется Бизнес-логика отделена от представления и данных Тестируется Не зависит от реализации: UI,
- 51. > Interactor InteractorImpl > Repository Entity RepositoryImpl > DataSource DataSourceImpl EntityConverter Model Presenter > View Activity
- 52. Но мы наступили на грабли :(
- 53. Грабли №1 Бизнес-логика == представлению
- 58. > Repository Entity
- 65. Грабли №2 Бойлерплейт с конвертерами
- 66. RepositoryImpl > DataSource DataSourceImpl EntityConverter Model
- 71. Entity RepositoryImpl > DataSource DataSourceImpl EntityConverter Model
- 72. Entity RepositoryImpl > DataSource DataSourceImpl > Repository
- 73. Выбираем технологии
- 74. Не тратить время на изобретение велосипедов
- 77. Dagger2 Room
- 78. “Если хочешь рассмешить Бога, расскажи ему о своих планах”
- 79. Проблема №1 Dagger2
- 86. Проблема №2 Rx Hell
- 87. Rx Rx Rx
- 91. Еще один пример
- 93. Правило «Логика использования технологии не должна быть сложнее логики решения задачи»
- 94. Тесты нам помогают
- 95. Не принимаем код без Unit-тестов
- 98. В одной упряжке с дизайнерами
- 102. Не попадаем в дедлайн
- 103. Строим итеративный план спринтов
- 105. Даты
- 106. Задачи
- 108. Но команде прозрачно и бизнесу спокойно
- 109. Эпилог “Если головоломка не сложилась, и тебе уже не собрать пазлы — начни сначала”© Death Note
- 110. Переписать приложение с нуля и не потерпеть фиаско – можно! Но для этого…
- 111. Дизайнеры могут помочь, для этого есть все инструменты Задать вопрос – «А нужно ли?» Собрать команду
- 112. Дизайнеры могут помочь, для этого есть все инструменты Задать вопрос – «А нужно ли?» Собрать команду
- 113. Дизайнеры могут помочь, для этого есть все инструменты Задать вопрос – «А нужно ли?» Собрать команду
- 114. Дизайнеры могут помочь, для этого есть все инструменты Задать вопрос – «А нужно ли?» Собрать команду
- 115. Дизайнеры могут помочь, для этого есть все инструменты Задать вопрос – «А нужно ли?» Собрать команду
- 116. Дизайнеры могут помочь, для этого есть все инструменты Задать вопрос – «А нужно ли?» Собрать команду
- 117. Нам это удалось, чего и вам желаем!
- 119. Скачать презентацию




















































































































Устройство компьютера
Мобильные приложения для тренировки мозга
Киберпреступность
Презентация на тему Поисковые системы Интернета
Язык разметки HTML
Циклы. Исполнитель робот
Народная программистская мудрость
Знаковые информационные модели
Алгоритмические языки и программирование. Стандартные потоки
Программные средства компьютерных коммуникаций. Назначения и классификация
Выбор наилучшего варианта методом линейного программирования
Понятие модели Что такое модель Виды моделей
Разработка проекта подвижной испытательной лаборатории для поиска устройств негласного съема информации
Детский конкурс Эра эрудитов. Дистанционное участие в конкурсе через систему Личный кабинет дошкольника
Лекция 3
СМИ. Задачи СМИ
Фильтр всех домов
Разработка программного продукта по предметной области, автоматизированная работа предприятия ОАО ФСК ЕЭС Верхне-Донское ПМЭС
Профилактика интернет зависимости
Графическая модель издания. Часть 4
Виконання операцій з надання послуг копіювального центру. Робота з принтером
Развитие программирования. Лекция 1
Система удаленной визуализации трехмерных объектов с использованием сред виртуальной реальности. Описание модели
Информационные технологии. Определение информационных технологий
Самостоятельная работа по информатике
Знакомство с языком программирования. Линейные вычислительные алгоритмы
Императивное программирование
Знатоки глобальной сети