Hallo Allerseits,
ich brauche mal bitte Hilfe/Denkanstöße hinsichtlich eines Problems.
Ich möchte für meine Studies eine Lernhilfe basteln. Mein erster Ansatz war folgender:
Es existiert pro Lernkapitel ein Pool aus ca. 20-30 Fragen.
Ich öffne eine Form (mit QDesigner erstellt) im der ein PDF-Formular dargestellt wird (bspw. über ActiveX und Acrobat-Reader).
Im Formular sind die Fragen und die jeweiligen Antwort-Optionen darunter als Check-Boxen (bspw. "Ja", "Nein", "keine Ahnung") enthalten.
(Bitte keine Diskussion über die Sinnhaftigkeit der Antwort-Optionen, soll hier nur als Beispiel dienen.)
Der Fragebogen wird durchgearbeitet und am Ende gespeichert und kann durch mich ausgewertet werden.
Das Ganze halte ich nicht gerade für elegant. Zumal ich das Ganze eventuell noch ausbauen möchte.
Der nächste Ansatz ist folgender:
Ich öffne eine Form, lese eine Frage ein, und kann in der Form über Checkboxen die Antwort geben. Die jeweilige Antwort wird in der Datei
mit den Fragen als Zeile unter der Frage eingefügt.
Soweit so gut. Nur liegt der Teufel für mich im Detail:
1. Wenn die Bearbeitung zwischendurch abgebrochen wird, wie finde ich nach dem erneuten Öffnen der Fragedatei wieder den Einstieg bei der
nächsten unbeantworteten Frage? Über Suchmuster in der Fragedatei? Habe da noch keine sinnvolle Idee...
2. Ich möchte nicht allzuviele Frage-Dateien anlegen, also in einer Frage-Datei Unterkapitel definieren.
Wie kann ich nach Kapitelüberschriften separieren? Formatierte Datei erstellen und explizit nach Format "Überschrift" suchen und ab dann
frageweise einlesen? Irgendwie auch nicht der sinnvollste Ansatz...
Über Anregungen und Ideen wäre ich sehr dankbar.
Viele Grüße
Brandenburger
Lernhilfe erstellen
- __blackjack__
- User
- Beiträge: 14002
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Brandenburger: Warum PDF? Warum unstrukturierte Textdateien, beziehungsweise irgendetwas Eigenes statt ein Standardformat?
Wenn die Daten/Dokumente Struktur haben sollen, dann nimm ein Format das Datenstrukturen (de)serialisieren kann. Beispielsweise JSON. Darin kannst Du dann auch die Antwort(en) zu den Fragen speichern. Entweder gleich wenn eine Frage beantwortet wird, oder wenn der Benutzer explizit speichert. Beim Programmabbruch könnte man dann automatisch speichern, oder den Benutzer wenigstens darauf hinweisen wenn noch ungespeicherte Antworten bestehen und nachfragen ob noch gespeichert werden soll.
Muss es denn eine Desktopanwendung sein? Für so etwas könnte man auch eine Webanwendung schreiben.
Wenn die Daten/Dokumente Struktur haben sollen, dann nimm ein Format das Datenstrukturen (de)serialisieren kann. Beispielsweise JSON. Darin kannst Du dann auch die Antwort(en) zu den Fragen speichern. Entweder gleich wenn eine Frage beantwortet wird, oder wenn der Benutzer explizit speichert. Beim Programmabbruch könnte man dann automatisch speichern, oder den Benutzer wenigstens darauf hinweisen wenn noch ungespeicherte Antworten bestehen und nachfragen ob noch gespeichert werden soll.
Muss es denn eine Desktopanwendung sein? Für so etwas könnte man auch eine Webanwendung schreiben.
“The best book on programming for the layman is »Alice in Wonderland«; but that's because it's the best book on anything for the layman.” — Alan J. Perlis
-
- User
- Beiträge: 16
- Registriert: Donnerstag 3. Februar 2022, 09:32
Hallo __blackjack__,
danke für die schnelle Antwort und den Tip.
Irgendwie mag ich so recht keine Webanwendung erstellen.
Da ich im früheren Leben (C und C++) auch immer nur Desktopanwendungen habe und erst seit kurzem wieder mit dem Programmieren angefangen habe, sind mir die Webanwendungen noch recht suspekt. Habe mich damit noch nicht auseinander gesetzt. Bin auch erst seit kurzem dabei mich Python zu nähern.
Was wäre der Vorteil einer Webanwendung?
Gruß Brandenburger
danke für die schnelle Antwort und den Tip.
Irgendwie mag ich so recht keine Webanwendung erstellen.
Da ich im früheren Leben (C und C++) auch immer nur Desktopanwendungen habe und erst seit kurzem wieder mit dem Programmieren angefangen habe, sind mir die Webanwendungen noch recht suspekt. Habe mich damit noch nicht auseinander gesetzt. Bin auch erst seit kurzem dabei mich Python zu nähern.
Was wäre der Vorteil einer Webanwendung?
Gruß Brandenburger
Der große Vorteil einer Webanwendung ist, das du sie nicht verteilen musst und der Anwender muss sie nicht installieren.
Es ist nur ein Browser nötig.
Und es müssen auch nicht irgendwelche Dinge zu dir geschickt werden.
Das wird alles auf dem Webserver erledigt und dort gespeichert.
Gerade in deinem Fall sehe ich nur Vorteile - aber keinen einzigen Nachteil. Außer, dass die Webanwendung natürlich gehostet werden muss.
Es ist nur ein Browser nötig.
Und es müssen auch nicht irgendwelche Dinge zu dir geschickt werden.
Das wird alles auf dem Webserver erledigt und dort gespeichert.
Gerade in deinem Fall sehe ich nur Vorteile - aber keinen einzigen Nachteil. Außer, dass die Webanwendung natürlich gehostet werden muss.
-
- User
- Beiträge: 16
- Registriert: Donnerstag 3. Februar 2022, 09:32
Hallo Sparrow,
danke für die schnelle Antwort.
Die Vorteile sind für mich absolut nachvollziehbar.
Jedoch möchte ich (aufgrund der für später geplanten Funktionalität) die Anwendung nicht gerne hosten.
Ich möchte vielmehr, dass es als Anwendung nur auf einigen PC's läuft und bei Bedarf genau auf diesen PC's gestartet und bearbeitet werden kann.
Jetzt habe ich mir mal überlegt, dass als Datei-Format doch XML infrage käme. Bietet doch eigentlich alles was ich benötige, Überschriften, Textbodys etc.
Habe ich da einen Denkfehler?
Andererseits habe ich mal schnell eine XML-Datei mit Word erzeugt. Nur eine Zeile Text, aber 3 Seiten Beschreibung. Ich denke, dass liegt daran, dass Word hier tausende Formatierungen einfügt, die ich nicht brauche.
Meine Fragenkataloge habe ich mit Word erstellt (schon seit geraumer Zeit in Gebrauch z.B. in Moodle). Müsste ich jetzt alles neu in XML erstellen um nur die essentials in meinen XML-Dateien zu haben? Muss ich alles händisch dort einpflegen?
Gruß Brandenburger
danke für die schnelle Antwort.
Die Vorteile sind für mich absolut nachvollziehbar.
Jedoch möchte ich (aufgrund der für später geplanten Funktionalität) die Anwendung nicht gerne hosten.
Ich möchte vielmehr, dass es als Anwendung nur auf einigen PC's läuft und bei Bedarf genau auf diesen PC's gestartet und bearbeitet werden kann.
Jetzt habe ich mir mal überlegt, dass als Datei-Format doch XML infrage käme. Bietet doch eigentlich alles was ich benötige, Überschriften, Textbodys etc.
Habe ich da einen Denkfehler?
Andererseits habe ich mal schnell eine XML-Datei mit Word erzeugt. Nur eine Zeile Text, aber 3 Seiten Beschreibung. Ich denke, dass liegt daran, dass Word hier tausende Formatierungen einfügt, die ich nicht brauche.
Meine Fragenkataloge habe ich mit Word erstellt (schon seit geraumer Zeit in Gebrauch z.B. in Moodle). Müsste ich jetzt alles neu in XML erstellen um nur die essentials in meinen XML-Dateien zu haben? Muss ich alles händisch dort einpflegen?
Gruß Brandenburger
Deine Beschreibung, dass es nur auf bestimmten PCs laufen und nur bei Bedarf gestartet werden soll, ist eher ein Pro für eine Webanwendung. Denn bei einer Desktopanwendung kannst du nicht kontrollieren, wann sie gestartet wird. Es sei denn, sie kommuniziert mit einem zentralen Server. Dann kannst du aber auch direkt eine Webanwendung bauen.
Gehen tut das mit XML. Nur ist XML fürchterlich hässlich und unnötig komplex.
Ich würde, wie __blackjack__ JSON empfehlen.
Mir persönlich wäre es viel zu umständlich etwas in Word zu schreiben, dann dort seltsam zu exportieren und an irgendwelche Rechner von Hand zu Fuß zu verteilen.
Ich würde eine Webanwendung schreiben, bei dem im Backend, die Daten direkt gepflegt werden. Kein Word, kein Verteilen. Ich sehe nur Vorteile.
Gehen tut das mit XML. Nur ist XML fürchterlich hässlich und unnötig komplex.
Ich würde, wie __blackjack__ JSON empfehlen.
Mir persönlich wäre es viel zu umständlich etwas in Word zu schreiben, dann dort seltsam zu exportieren und an irgendwelche Rechner von Hand zu Fuß zu verteilen.
Ich würde eine Webanwendung schreiben, bei dem im Backend, die Daten direkt gepflegt werden. Kein Word, kein Verteilen. Ich sehe nur Vorteile.
Das "XML" das Word benutzt ist damals bei seiner Einfuehrung massive & zurecht kritisiert worden. Das ist kein XML, das ist einfach eine im lesbaren-Zeichen-bereich angefertigte binaere serialisierung. Damit kann und soll niemand wirklich arbeiten, was der Sinn eines echten XML Dokumentes waere. Entsprechend ist das auch kein Autorensystem fuer XML-Dokumente. Fuer sowas gibt es spezialisierte Tools wie zB FrameMaker.
Zu den Nachteilen einer GUI vs Web-Anwendung haben meine Vorredner alles gesagt. Dem wuerde ich mich nachdruecklich anschliessen - eine solche Anwendung lokal zu installieren und zu warten, als auch die Komplexitaet sie ueberhaupt zu entwickeln, ist alles signifikant groesser als eine Webanwendung. Und Dinge wie PDF-Darstellung zB bietet ein Browser frei Haus.
Zu den Nachteilen einer GUI vs Web-Anwendung haben meine Vorredner alles gesagt. Dem wuerde ich mich nachdruecklich anschliessen - eine solche Anwendung lokal zu installieren und zu warten, als auch die Komplexitaet sie ueberhaupt zu entwickeln, ist alles signifikant groesser als eine Webanwendung. Und Dinge wie PDF-Darstellung zB bietet ein Browser frei Haus.
-
- User
- Beiträge: 16
- Registriert: Donnerstag 3. Februar 2022, 09:32
Hallo __deets__,
danke für die Antwort.
Also werde ich wohl um eine Webanwendung nicht drumherum kommen. Jetzt mache ich mir langsam Sorgen, ob ich mich nicht doch in Hinsicht "Programmiermethoden" als antiquiert bezeichnen muss. Ich habe mich noch nie mit Webanwendungen auseinander gesetzt. Und dachte auch, dass das für mich niemals nötig werden wird.
Aber so kann man sich irren...
danke für die Antwort.
Also werde ich wohl um eine Webanwendung nicht drumherum kommen. Jetzt mache ich mir langsam Sorgen, ob ich mich nicht doch in Hinsicht "Programmiermethoden" als antiquiert bezeichnen muss. Ich habe mich noch nie mit Webanwendungen auseinander gesetzt. Und dachte auch, dass das für mich niemals nötig werden wird.

Aber so kann man sich irren...
Ich weiss nicht, ob du hier mitliest, oder nur deine eigenen Beitraege betrachtest (kein Vorwurf, sollte dem so sein!). Aber hier diskutiert gerade ein anderer User die Transformation seines Rechentrainers, der auf LibreOffice Calc basiert, in eine Webandwendung. Denn wenn er das nicht tut, dann ist seine signifikant aufwaendige Arbeit fuer die Katz. Schueler und Stundenten haben Mobiltelefone und Tablets. Darauf installiert sich kein Desktop-Client. Und zusaetzlich sind Browser die fortgeschrittenste und flexibelste GUI-Technologie. Wie Anwendungen heutzutage aussehen, definieren nicht mehr MS & Apple. Sondern Google, Facebook und Co. Auch aus eigener Erfahrung als ehemaliger Webentwickler & ehemalige Anwendungsentwickler einer C++-GUI-Anwendung: letzeres ist anstrengender, und weniger flexibel. Es geht bei uns nicht anders, weil wir perfomance-kritisch sind. Aber selbst unseren Raum "bedroht" der Browser. Das ist eine Frage der Zeit. Wenn dich das Thema "lernen" interessiert, hier zb eine unserer Anwendungen:
https://learningmusic.ableton.com/
Das waere im Leben nicht mit vertretbarem Aufwand mit C++ passiert. Und erreicht Menschen in aller Welt.
https://learningmusic.ableton.com/
Das waere im Leben nicht mit vertretbarem Aufwand mit C++ passiert. Und erreicht Menschen in aller Welt.
-
- User
- Beiträge: 16
- Registriert: Donnerstag 3. Februar 2022, 09:32
Q__deets__,
ja, ich versuche auch ein wenig mitzulesen. Passt aber nicht immer zeitlich.
Stimmt, mittlerweile (und gerade in Corona-Zeiten) bemerke ich bei den Online-Vorlesungen, dass viele Studies der Online-Lehrveranstaltung per Smartphone beiwohnen (sehe ich an den Pictogrammen im Browser).
Ich habe mal eben den Link geöffnet. Tolle Sache!!! Da kann sogar ein völlig unmusikalischer Mensch wie ich etwas damit anfangen.
Aber Webentwicklung ist für mich immer noch ein Buch mit sieben Siegeln...
Muss mir erst einmal das grundlegende Herangehen klarmachen.
ja, ich versuche auch ein wenig mitzulesen. Passt aber nicht immer zeitlich.
Stimmt, mittlerweile (und gerade in Corona-Zeiten) bemerke ich bei den Online-Vorlesungen, dass viele Studies der Online-Lehrveranstaltung per Smartphone beiwohnen (sehe ich an den Pictogrammen im Browser).
Ich habe mal eben den Link geöffnet. Tolle Sache!!! Da kann sogar ein völlig unmusikalischer Mensch wie ich etwas damit anfangen.
Aber Webentwicklung ist für mich immer noch ein Buch mit sieben Siegeln...
Muss mir erst einmal das grundlegende Herangehen klarmachen.
Schöne Seite, vielen Dank für den Link!__deets__ hat geschrieben: Mittwoch 9. Februar 2022, 12:24 Wenn dich das Thema "lernen" interessiert, hier zb eine unserer Anwendungen:
https://learningmusic.ableton.com/
Das waere im Leben nicht mit vertretbarem Aufwand mit C++ passiert. Und erreicht Menschen in aller Welt.
Dieser Thread ist übrigens gemeint: viewtopic.php?f=7&t=53873Brandenburger hat geschrieben: Mittwoch 9. Februar 2022, 12:42 ja, ich versuche auch ein wenig mitzulesen. Passt aber nicht immer zeitlich.
(..)
Aber Webentwicklung ist für mich immer noch ein Buch mit sieben Siegeln...
Muss mir erst einmal das grundlegende Herangehen klarmachen.
MorgenGrauen: 1 Welt, 8 Rassen, 13 Gilden, >250 Abenteuer, >5000 Waffen & Rüstungen,
>7000 NPC, >16000 Räume, >200 freiwillige Programmierer, nur Text, viel Spaß, seit 1992.
>7000 NPC, >16000 Räume, >200 freiwillige Programmierer, nur Text, viel Spaß, seit 1992.
-
- User
- Beiträge: 16
- Registriert: Donnerstag 3. Februar 2022, 09:32
@kebap
ja vielen Dank, habe den Thread bereits gefunden.
ja vielen Dank, habe den Thread bereits gefunden.