SQLite, Quiz, Czy w poprawnym miejscu umiescilem logike?

0

Czy do obsługi tego quizu stworzyć osobną klasę czy w klasie do obsługi bazy danych mogę to zostawić?
Jestem początkujący i mam problemy z takimi rzeczami jak podział projektu na klasy.
Na pewno jeszcze będę chciał dodać do tego, np: sprawdzanie czy odpowiedz jest od A do D, żeby małe litery też akceptowało, no i dodawanie pytań w trakcie pracy programu lub z pliku, a nie na sztywno w kodzie, jakieś menu wyboru.
Teraz dokładnie chodzi mi o metodę quiz z klasy QuizDB. Zostawić tak czy przenieść do innej klasy?
Jeszcze nie rozumiem ResultSet, PreparedStatement, .execute(), .executeQuery ale korzystam bo wiem jak działa.

Jak by ktoś zerknął byłbym bardzo wdzięczny.
https://github.com/Kilgharrah/Java/tree/master/Quiz_Java_Junior

1
  1. Logikę odpowiedzialną za połączenie do DB wydziel do innej klasy. Zrób sobie jakąś metodę getConnection i używaj connection zwracanego z niej. Nie zapominaj o zamykaniu (napisałeś odpowiednia metodę do tego)
  2. Metoda createTables() zwraca boola z którym nic nie robisz. WTF?
  3. Do pobrania ilości rekordów w DB użyj odpowiedniego zapytania SQL --> Count i wydziel do to od oddzielnej metody
  4. return null, na tym etapie edukacji niech Ci będzie ale lepiej rzucić wyjątek albo użyć Optionala
  5. Czemu używasz akurat LinkedList?
0

@artur52: LinkedList dlatego, że pytania mogą być usuwane/dodawane, chociaż i tak stworze pewnie baze pytan, a pozniej bede tylko dodawał następne. Myślisz, że ArrayList będzie lepsze?
Nad resztą popracuję na pewno!
Dzięki.

0
JareKanarek napisał(a):

@artur52: LinkedList dlatego, że pytania mogą być usuwane/dodawane, chociaż i tak stworze pewnie baze pytan, a pozniej bede tylko dodawał następne. Myślisz, że ArrayList będzie lepsze?

Przewaga LinkedList nad ArrayList widoczna jest dopiero jak w liście jest co najmniej kilkadziesiąt tysięcy elementów ;)

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