Search
Write a publication
Pull to refresh
1
0

Пользователь

Send message
Мы вынесли из приложения немалую часть кода в отдельные компоненты. Часть из получившегося стала обычными библиотеками, а часть — фреймворками. В них мы поместили помимо кода еще и другие ресурсы, также в этих фреймворках у нас хранятся уже готовые модели и алгоритмы работы с ними. Эти фреймворки можно брать и использовать в других проектах. Это также была одной из наших целей.
  • Начнем с того, что каждый вывод подкрепляется историей, как мы этому пришли. Об этом наш материал.
  • Нет четкого критерия того, что является признаком, что необходим фреймворк, а что — нет. Данная статья — это наш опыт. Для кого-то он может показаться не подходящим, но мы выделили для себя критерии, которые подкрепили необходимость фреймворка. К примеру, при изменении версии API меняются методы, классы моделей. Писать это все ручками не хотелось. Поэтому у нас есть шаблоны автогенерации кода. Модуль отвечающий за правила генерации тоже часть этого слоя. Также в этом слое используются и популярные библиотеки. Вот все это немного навязывает определенную архитектуру. Хотелось бы так же добавить, что наш фреймворк используют другие команды наших разработчиков.
  • Почему фрейморк, а не просто библиотеки? Мы помимо библиотек вынесли отдельный сетевой слой, который сильно влияет на архитектуру нашего мобильного приложения.
Три ключевые для нас причины: достаточный объем кода, понимание бизнеса и первая стартовая задача. На тему фреймворк или нет можно рассуждать долго. Самый главный аргумент, что мы помимо вынесенных библиотек, вынесли отдельный сетевой слой, который сильно влияет на архитектуру нашего мобильного приложения. Собственно исходя из этого, мы можем говорить о собственном фреймворке.
Спасибо за обратную связь. Возможно, вы не заметили, но мы выделили наши три ключевых признака для создания фреймворка:
  • Мы наработали достаточную базу кода
  • Бизнес начал понимать наши (т.е. и свои) архитектурные нужды
  • Возникла подходящая задача
Напишите, пожалуйста, на почту korolevav@psbank.ru. Коллеги постараются вам помочь.
А если не секрет, что используете для проверки уязвимости кода? Используете ли статические анализаторы?
Добрый день, чем пользуетесь при кодогенерации?

Information

Rating
Does not participate
Works in
Registered
Activity