"Packaging" i rozbijanie na moduły. Struktura (większeg?) projektu.

Odpowiedz Nowy wątek
2015-02-24 22:13
0

Hej,

Mam pytanie odnośnie projektowania aplikacji. Robię z kolegą aplikację, na razie mamy podstawy ale już zauważyliśmy, że przyrost nowych klas jest bardzo duży. Moje pytanie odnosi się do "package". Mamy modele, dao, service, controllery, formularze, itp. Nasza aplikacja będzie miała coś w stylu:

  • Użytkownicy,
  • Produkty,
  • Umowy,
  • Faktury,
  • Obsługa klienta
  • itp

Nie wiemy czy wszystko wpakować do paczki typu: org.mojastrona. czy nie rozbić to na:
org.mojastrona.users.

org.mojastrona.products.
org.mojastrona.agreements.

org.mojastrona.invoices.*
itp

Jakie jest wasze zdanie ? Nie mamy zbyt dużego doświadczenia w Javie zwłaszcza w pisaniu większych aplikacji. Wcześniej robiliśmy w Symfony 2 i tam było rozbijanie na "bundle"(oczywiście namespace też był inny).

Pozdrawiam

Pozostało 580 znaków

2015-02-24 22:56
0

może poróbcie sobie pakiety ala: dao, service, controller, builder, validator, helper, dto, util...


PROGRAMY NA ZAMÓWIENIE, ZALICZENIA STUDENCKIE, KONFIGURACJA SERWERÓW, SYSTEMÓW I BAZ DANYCH, STRONY INTERNETOWE, POMOC W PROGRAMOWANIU, POPRAWIENIE I OPTYMALIZACJA APLIKACJI
JAVA, C++, LINUX, WWW, SQL, PYTHON
POSIADAM KOMERCYJNE DOŚWIADCZENIE
TANIO, SZYBKO I PORZĄDNIE
Z KOMENTARZAMI OBJAŚNIAJĄCYMI KOD
PISZ NA PRYWATNĄ WIADOMOŚĆ
CENY JUŻ OD 49,99ZŁ ZA PROGRAM
ZAJMIJ SIĘ TYM CO CIĘ NAPRAWDĘ INTERESUJE!

Pozostało 580 znaków

2015-02-24 23:14
0

@karolinaa
Własnie w tym momencie mamy tak. Mamy:

  • org.mojastrona.dao,
  • org.mojastrona.service
  • org.mojastrona.web
  • org.mojastrona.model
    itp

Zastanawiamy sięczy nie zrobić w ten sposób:
Dla produktów:

  • org.mojastrona.product.dao,
  • org.mojastrona.product.service
  • org.mojastrona.product.web
  • org.mojastrona.product.model
    Dla Umów:
  • org.mojastrona.agreemnet.dao,
  • org.mojastrona.agreemnet.service
  • org.mojastrona.agreemnet.web
  • org.mojastrona.agreemnet.model
    itp.

Pozdrawiam.

Pozostało 580 znaków

2015-02-24 23:23
0

To raczej zły pomysł. Przykładzik chcesz czy mi ufasz?


PROGRAMY NA ZAMÓWIENIE, ZALICZENIA STUDENCKIE, KONFIGURACJA SERWERÓW, SYSTEMÓW I BAZ DANYCH, STRONY INTERNETOWE, POMOC W PROGRAMOWANIU, POPRAWIENIE I OPTYMALIZACJA APLIKACJI
JAVA, C++, LINUX, WWW, SQL, PYTHON
POSIADAM KOMERCYJNE DOŚWIADCZENIE
TANIO, SZYBKO I PORZĄDNIE
Z KOMENTARZAMI OBJAŚNIAJĄCYMI KOD
PISZ NA PRYWATNĄ WIADOMOŚĆ
CENY JUŻ OD 49,99ZŁ ZA PROGRAM
ZAJMIJ SIĘ TYM CO CIĘ NAPRAWDĘ INTERESUJE!
Ja bym poprosił, jeśli można. - mad_penguin 2015-02-24 23:26
na przykład korzystam sobie spring jpa data i jakbym nie trzymała wszystkich dao w jednym pakiecie to przy tworzeniu jakiegoś całkowicie nowego musiałabym uaktualniać w context.xml <jpa:repositories base-package="kolejny.pakiet.z.dao"/> - karolinaa 2015-02-24 23:36
A co jeśli mamy 200 encji i po miesiącu chcemy zmienić drobną rzecz dotyczącą np. umów, szukamy 30 encji, które mają związek z umowami? :) Wzorzec BCE się kłania :) - Marszal 2015-02-25 11:13

Pozostało 580 znaków

2015-02-24 23:45

@Fluke to zależy. Gdyby te kawałki to były osobne moduły (np. mavenowe) i generalnie działałyby niezależnie od siebie to byłbym skłonny wziąć to pod uwagę. Ale raczej na to nie wygląda. Jeśli juz to dzieliłbym w drugą stronę tzn np.
org.mojastrona.service.produkt
org.mojastrona.service.web
itd


Masz problem? Pisz na forum, nie do mnie. Nie masz problemów? Kup komputer...

Pozostało 580 znaków

2015-02-25 07:18
1

A u nas znów właśnie dzielimy projekty merytorycznie. Czyli
projekt/moduł mavenowy - faktury
projekt/moduł mavenowy - produkty
projekt/moduł mavenowy - fk
projekt/moduł mavenowy - whm
projekt/moduł mavenowy - whm-wms

itp

oczywiście na końcu z tego i tak powstaje jedna aplikacja..te moduły nie mogę żyć bez siebie ale upraszcza to kodowanie, utrzymanie jakości kodu, testy. BO każdy zespół jest odpowiedzialny za swój moduł, a nie blob

Pozostało 580 znaków

2015-02-25 13:17
0

Ustaliliśmy, że pozostaniemy przy tej strukturze, którą mamy.

Dzięki wielkie za informację,

Pozdrawiam :)

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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