Похожие приложения с похожим кодом и одним проектом - PullRequest
0 голосов
/ 09 апреля 2019

Привет и прежде всего спасибо заранее, у меня есть вопрос, связанный со структурой проекта.

Представьте себе следующую ситуацию: у нас есть 4 приложения с практически одинаковыми функциями.Давайте назовем их A, B, C и D. Все изначально встроены в Swift / Objective-C.Можно предположить, что почти 85% кода одинаковы для A, B, C и D. То же самое для ресурсов, но, вероятно, с меньшим процентом.

Теперь у меня есть один git-проект с по крайней мере 4 ветками (по одной для каждого приложения).Когда я разрабатываю новую функцию в приложении A, я использую git checkout --patch A <filename>, чтобы внести изменения, которые меня интересуют, в другие приложения.Процесс медленный, так как я должен сделать те же 3 вещи, чтобы внести изменения во все остальные 3 ветви.Представьте, что версия Swift внутри приложения обновлена, и почти все файлы должны быть обновлены ... Было бы лучше, чем делать то же самое 4 раза, но все еще медленно.

Есть ли оптимальный способсправиться с этим?В iOS, поскольку имя пакета не связано с именем папок, в которых находятся файлы кода, это действительно опция (медленная, но опция), но как этого добиться в Android?Одна и та же активность с почти одинаковым кодом находится по двум разным путям (com.company.A.Activiy и com.company.B.Activiy) между ветвями A и B, поэтому checkout --patch не работает.Любые решения?Любой оптимальный способ?

Заранее спасибо !!!

1 Ответ

1 голос
/ 09 апреля 2019

Для этого сценария я бы извлек ядро ​​приложения, которое было бы идентично для всех проектов, в свой собственный библиотечный проект, а затем ссылался на эту библиотеку в каждом из 4 проектов.Любые изменения в этой библиотеке просто требуют перекомпиляции в 4 проектах пользовательского интерфейса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...