Witam wszystkich.
Mam bardzo długie pytanie. Trochę już programuje w Delphi, przegooglałem nieco grup dyskusyjnych i nie znalazłem pomocy. A więc zaczynamy....
Chcę napisać program. Taka aplikacja typu test, quiz, czy też ankieta.
Założenia:
- Aplikacja typu test serwuje pytania losowo z danej kategorii
- Pytania są podzielone na: Kategorie, poziom trudności, podkategorie
- Pytania mogą być typu: wybierz jedną z odpowiedzi, wybierz kilka, posegreguj, wpisz odpowiednie ... i t p .
- Program nie może wykorzystywać zadnej bazy danych, plików xml i t p.
- Program powinien korzystać z komponentów znajdujących się tylko na zakładkach standard i adv...
Mój pomysł to:
Mamy główną aplikację ? MainAPP. Jako że z góry zakładam, iż pytania mogą być bardzo złożone ? tzn. nie takie proste jak wybierz jedną z trzech odp. [radiogroup] ? to chciałbym aby każde pytanie było na oddzielnym formularzu, lub jakimś innym komponencie (jakim?). Tak więc, pytanie 1 jest na formie , pytanie 2 na formie 2 ...... Jako że można każdą formę zapisać do biblioteki dll, tak też bym chciał zrobić. czyli jedno pytanie = jeden plik dll [biblioteka]. Taka biblioteka składająca się z formularza, komponentów, procedur sprawdzających poprawność odpowiedzi, udzielająca odpowiedzi itp ? czyli jedna biblioteka kompletnie obsługująca dane pytanie. Taką bibliotekę ładowałoby się dynamicznie do aplikacji głównej ? innymi słowy każde pytanie ładowane byłoby dynamicznie. Zadaniem aplikacji głównej jest odpowiednie ładowanie bibliotek [kolejność, kategoria, poziom trudności], liczenie poprawnych odpowiedzi, mierzenie czasu i t p. Każde pytanie [biblioteka] po udzieleniu odpowiedzi zwracałoby do aplikacji głównej odp. czy udzielono prawidlowej odpowiedzi.
Taki jest mój pomysł. Jeśli ktokolwiek chciałby napisać pytanie do Aplikacji głównej ? tobi to w Delphi w bardzo prosty sposób [?dla programisty?] a nastepnie wrzuca taka bibliotekę do katalogu z pytaniami.
Dlaczego nie chce korzystać z bazy danych, xml, plików tekstowych w celu przechowywania i ładowania pytań i odpowiedzi ?
ODP. 1. Komponenty te są już w droższych wersjach delphi, chcę skorzystać tylko ze standardowych.
ODP. 2. Pytania są i będą bardzo skomplikowane, gdzie wymagana jest obsługa wyjątków, zdarzeń on click na rysunkach regionach i t p.
ODP. 3. Forma bibliotek ładowanych dynamicznie, sprawia ze w danym momencie w pamięci jest zawsze jedno tylko pytanie, niezależnie czy test ma pytań 10 czy 10000.
ODP. 4. inne względy :)
Teraz moje pytania.
- Czy ma ktoś może lepsze pomysły ? Chętnie wysłucham.
- Pokażcie największe problemy w mojej propozycji
- Jeśli to dobry pomysł, to teraz pomóżcie :)
a. jak zorganizować nazwy bibliotek aby można było je ładować dynamicznie określając kategorie , poziom trudności, itp
b. Jak ładować takie biblioteki [kawałek procedurki mile widziany]
c. Czy aplikacja główna powinna być typu Parent a pytania na formach typu child i ładowane do wnętrzna głównej aplikacji czy może po prostu Formy z pytaniami powiny sie po kolei pokazywać po sobie [jesli tak to jak show modal czy samo show ?]
Wszystkim cierpliwym dziekuje za ewentualną pomoc.
Dajcie upust swojej wyobraźni i może coś mi się uda tu naprodukować.
Tymczasem pozdrawiam.
PS Pewnie o czymś zapomniałem ... najwyżej dopisze niżej :)