Architektura dla rodziny aplikacji

0

Pracuję nad dużym projektem i potrzebuję wyprodukować dwie aplikacje: pierwsza aplikacja to pełna wersja ze wszystkimi funkcjami, druga aplikacja to wersja uproszczona o innej nazwie, innym splashscreenie i zredukowanej liczbie funkcji.
W tej chwili przełączam typ aplikacji zmieniając w kodzie wartość statycznej stałej, która ukrywa niektóre funkcje z menu, itp.
Problem polega na tym, że potrzebuję robić automatyczny TeamSystem Build na serwerze obydwu aplikacji osobno, tak żebym codziennie rano (albo na żądanie) dostawał dwa niezależne pliki instalacyjne.
Jak to zrobić? Ma ktoś może jakieś linki do artykułów opisujących wzory postępowania w przypadku tworzenia rodziny prawie identycznych aplikacji? Najprościej by było stworzyć drugą solucje, ale wtedy powstałby problem ze śledzeniem zmian w pierwszej.

0

jeśli używacie jakiegoś przyzwoitego systemu SCM to wtedy można by zrobić projekty ze wspólnym kodem, a pliki z kodem, który ma się różnić z powodu wersji, można trzymać na osobnych branchach. Reszta to odpowiednie reguły dla SCM żeby nakarmić system do buildowania odpowiednich wersji.

W przypadkach zmian (np. błędy wykryte w jednej wersji impaktujące drugą wersję) w plikach na osobnych branchach trzeba by propagować zmiany ale to i tak mniej roboty niż utrzymywanie w całości dwóch osobnych branchów dla wszystkich plików.

Ostatecznie zostaje zaszycie dopasowania się do wersji w logice aplikacji, tak jak to robicie teraz.

0

Dzięki za wskazanie kierunku - to właśnie zrobiłem: używam MS TeamSystem do kontroli wersji i zrobiłem w nim osobną gałąź dla mniejszej aplikacji, propagacja zmian z głównej aplikacji działa bez problemu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1