Wzorzec na dużą ilość zmiennych.

0

Cześć. Borykam się z pewnym problemem, który "zanieszczyszcza" mi kod, mianowicie, mam obsłużyć excele/csv'ki z ilością kolumn 40+, do tego walidacja, kalkulacie itp. Wykorzystuję apache POI.
W jaki sposób mogę zapobiec tworzeniu 40+ zmiennych?

0

A dlaczego chcesz zapobiec ich tworzeniu?

0
mad_penguin napisał(a):

A dlaczego chcesz zapobiec ich tworzeniu?

Wydaje mi się że można zrobić to lepiej, dodatkowo nie spotkałem się w żadnym (dobrze napisanym) programie z tym żeby jakaś klasa zawierała dużą ilość zmiennych, które są walidowane, można się łatwo w tym wszystkim zagubić, zazwyczaj jest to robione w XML'u.

1

Stwórz obiekt który reprezentuje wiersz. Przykładowo jeśli CSV zawiera klientów to będzie to Customer.
W kodzie będziesz miał listę klientów po sparsowaniu pliku czyli List<Customer>

Najlepiej to pokaż nam ten kod.

0

A tak swoją droga to rzeczywiście potrzebujesz tych 40 kolumn? Bo wydaje mi się to dziwne żeby CSVka miała tyle kolumn

5

Możesz sobie na przykład podzielić te wiersze na kategorie. Nie sądzę, żeby wszystkie kolumny były równie ważne i opisujące ten sam wymiar.
Np jeśli masz wiersz Customer z kolumnami: Name, Surname, Age, Street, City, Postal, AccountNumber, Balance, AccountType...
Podziel to takie klasy:

Customer:
   - PersonalInfo
      - Name
      - Surname
      - Age
   - Address
      - Street
      - City
      - Postal
   - Account
      - AccountNumber
      - Balance
      - AccountType

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