Картинки к моему рассказу о том, что такое фреймворки и с чем их едят, что лучше не есть и как выбрать приправы для приготовления. Тезисы тут: http://backendconf.ru/2016/abstracts/2123.html
2. • Тестировщик
• Разработчик
• Руководитель разработчиков
• Руководитель тестировщиков
• Руководитель проектов
• CTO
• CIO
С 2002 года до сих пор
3. О чем мы с вами поговорим
• Фреймворки…, и зачем их пишут?
• Почему их так много?
• Плюсы и минусы применения.
• Наиболее распространённые мифы.
• На что стоит обратить внимание при выборе.
8. Зачем же их пишут?
• Удобство разработки;
• Ускорение разработки;
• Сокращение рутины и затрат;
• Стандартизация и структуризация;
9. Зачем же их пишут?
• Удобство разработки;
• Ускорение разработки;
• Сокращение рутины и затрат;
• Стандартизация и структуризация;
• Тот, что есть – плохой;
10. Зачем же их пишут?
• Удобство разработки;
• Ускорение разработки;
• Сокращение рутины и затрат;
• Стандартизация и структуризация;
• Тот, что есть – плохой;
• А кто из вас не начинал писать свой?
12. Плюсы
• Типовые задачи уже решены;
• Есть шансы укорить разработку;
• Есть шансы делать одинаково;
• Есть шансы быстрее находить людей;
13. Плюсы
• Типовые задачи уже решены;
• Есть шансы укорить разработку;
• Есть шансы делать одинаково;
• Есть шансы быстрее находить людей;
• Разрабатывают профессионалы.
18. Фреймворк == безопасность
• Открытый код;
• Обилие сторонних разработок;
• Публичные анонсы патчей;
• А много кто из вас тестирует безопасность?
19. Легко подменить инженера
• У вас популярный фреймворк?
• Ваш проект только начат?
• У вас есть CR и стандарт на разработку?
20. Легко подменить инженера
• У вас популярный фреймворк?
• Ваш проект только начат?
• У вас есть CR и стандарт на разработку?
• Без сноровки – овнокод
21. Скорость разработки
• Если нужно типовое решение;
• Если не волнует обратная совместимость;
• Если низкая текучка;
22. Скорость разработки
• Если нужно типовое решение;
• Если не волнует обратная совместимость;
• Если низкая текучка;
• Если есть специалисты.
23. Заказчику это нужно
• Зависит от проекта;
• Многие из них – жертвы моды;
• Часто собирают команду под проект;
24. Заказчику это нужно
• Зависит от проекта;
• Многие из них – жертвы моды;
• Часто собирают команду под решение;
• На самом деле нужно рабочее решение
25. Фреймворк плохой, потому что:
• не может что-то из коробки;
• если так уже умеет другой фреймворк;
• в нем сделать вот так нельзя;
26. Фреймворк плохой, потому что:
• не может что-то из коробки;
• если так уже умеет другой фреймворк;
• в нем сделать вот так нельзя;
• не нравится кому-то из сильных инженеров.
28. Комьюнити и ваши силы
• На сколько популярно решение?
• Как давно оно на рынке?
• Насколько интенсивно развитие и поддержка?
• Какой ваш личный опыт?
• Есть ли время на изучение?
• …
29. Процесс разработки
• А сколько лет будут поддерживать?
• Качество документации вас устраивает?
• На сколько автоматизирована разработка?
• Есть ли интеграции с стилевыми библиотеками?
• Есть ли другие интеграции?
• …
30. Функционал и Тестирование
• Из коробки можно начинать?
• Есть ли скелеты приложений?
• Есть ли интеграция с unit-фреймворками?
• На сколько прозрачен механизм тестирования?
• …
31. Возможности для расширения
• Есть ли библиотеки готовых компонент?
• Есть ли прозрачный процесс разработки расширений?
• А нет ли возможности собрать ваше приложение
сразу?
• …
32. Производительность и отладка
• Легко ли отлаживать?
• Результаты бенчмарков удовлетворяют?
• Есть ли обратная совместимость?
• Есть ли солидные ресурсы на вашей технологии?
• …
33. Критериев может быть куда больше
• Удобство работы с данными;
• Кэширование;
• Удобство роутинга;
• Продолжать можно долго;
34. Критериев может быть куда больше
• Удобство работы с данными;
• Кэширование;
• Удобство роутинга;
• Продолжать можно долго;
• Ваш критерий может быть основным.