Struktura aplikacji

0

Cześć,

mam pytanie odnośnie struktury / organizacji aplikacji. Chciałbym dla praktyki stworzyć API, aplikację webową oraz w przyszłości dorzucić do tego aplikację mobilną. W jaki sposób przechowywać to w repozytorium? Podział na katalogi czy zupełnie oddzielne repozytoria? Może w jeszcze inny sposób?

1

Dobre pytanie, ale chyba najlepiej, jak to będa oddzielne repo.

1
  • Jeśli będziesz miał jedno repo to na pewno będzie to prostsze. Problem się zacznie jak kodu zacznie być więcej
  • Jeśli to będą osobne repa to pewnie musisz pomyśleć o jakimś sposobie integracji kodu. Najprostsza integracja to podpinanie części wspólnych przez submoduły w gicie, ale to jest odradzane. Prawilna integracja to wydawanie paczek/bibliotek, najlepiej jakim CI, ale to już jest kłopotliwe.

BTW ja osobiście swój hobbystyczny projekt podzieliłem. Jeszcze nie wiem jak będę integrować kod, bo na razie piszę część wspólną. Jak nie znajdę CI zintegrowanego z GitHubem zdolnego wydawać biblioteki to chyba użyję submodułów :(

0

Robię coś podobnego i mam jedno repozytorium. I nie martwię się o nic. Wszystko jest częścią jednej solucji.

1

mam pytanie odnośnie struktury / organizacji aplikacji. Chciałbym dla praktyki stworzyć API, aplikację webową oraz w przyszłości dorzucić do tego aplikację mobilną. W jaki sposób przechowywać to w repozytorium? Podział na katalogi czy zupełnie oddzielne repozytoria? Może w jeszcze inny sposób?

Kilka pytań pod rozwagę:

  1. Kto będzie nad tym pracować? Tylko ty czy kilka osób?
  2. Na ile te projekty mają być zsynchronizowane ze sobą? np. czy jeśli zmienisz rzecz X, czy będziesz ją musiał zmienić we wszystkich aplikacjach (np. zmieniasz coś w API i wszystkie aplikacje muszą podążyć za zmianami). Czy może te zmiany będą bardziej niezależne?
  3. Czy ten sam kod będzie używany w kilku aplikacjach? (np. wspólna biblioteka core'owa)
  4. Czy ten sam kod ma być również używany w innych aplikacjach niezwiązanych z tymi projektami (np. biblioteka pomocnicza, która może się przydać w innych projektach).
  5. czy coś cię ogranicza technicznie? (np. podzielisz apkę na wiele repo i co dalej? Czy twoje IDE będzie to obsługiwać, czy apka się będzie inaczej budować itp.).

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