Rolf B: Einstieg in eine Webapp-Entwicklung

Beitrag lesen

Hallo Struktur,

Ein einfacher Login als Startseite, dann soll man Kriterien festlegen die zu bewerten sind, anschließend werden die festgelegten Werte mit einer Punktzahl (z.B. Schulnoten System) bewertet und am Ende soll eine Gesamtpunktzahl heraus kommen. Diese Auswertung soll dann gespeichert werden und jederzeit abgerufen werden. Also die Vorstellung zur ist für mich relative simple. Liege ich hier richtig (ist natürlich immer eine Sache des Betrachters)

Als Übungsprojekt zum Einstieg ins Programmieren einer Webanwendung wäre das ok, andernfalls würde ich sagen: Deine Beschreibung ist sehr dürftig und klingt für eine praktische Nutzbarkeit komplett sinnfrei.

Warum? Deine Beschreibung erwähnt nicht:

  • Wieviele Anwender sollen das tun?
  • Wenn mehr als einer: Wie kommt ein Login ins System? Brauchst Du außer Login auch noch die Funktion "Registrieren"?
  • Soll jeder Anwender seine eigenen Kriterien definieren und bewerten? Was für ein Ding wird da bewertet? Das musst Du uns jetzt nicht ausführlich beschreiben, aber Du musst Dir darüber klar sein. Der Anwender bewertet ja IRGENDWAS. Dieses Irgendwas wird entweder von der WebApplication vorgegeben, oder der Anwender muss selbst beschreiben können was da bewertet wird.
  • Wenn Kriterien für bewertbare Objekte (oder Subjekte) von der Application vorgegeben werden, dann willst Du das bestimmt nicht manuell in der Datenbank tun. Du hast Benutzer, die bewertbare Objekte (oder Subjekte) eingeben, und Kriterien dafür festlegen. Kann das jeder? Oder nur spezielle Anwender? Brauchst Du also ein Rollenkonzept? Eine Rechteverwaltung für den Admin?
  • Wenn es die Anwender selbst eingeben: Kann ein bewertetes Objekt (oder Subjekt) nur von einem Anwender bewertet werden oder von mehreren?
  • Wenn es mehrere bewertbare Objekte (oder Subjekte) gibt: Der Anwender muss auswählen können, was er da bewerten will.
  • Wer kann welche Bewertungen abrufen? Jeder alle? Ein Anwender nur seine eigenen? Anwender innerhalb einer Gruppe untereinander, aber keine Bewertungen anderer Gruppen?

Du siehst: Das Thema ist ÜBERHAUPT nicht simpel, sobald man Nutzungsmöglichkeiten überlegt. Eine Methode ist hier, sich so genannte User Stories zu überlegen. Welcher Arten von Anwendern gibt es, welche Interaktionen eines Anwenders mit der WebApplication sind denkbar, welche davon möchte man per Software unterstützen, wie muss man das tun - solche Überlegungen finden statt bevor man auch nur eine Zeile Code schreibt oder eine DB-Table anlegt.

Wenn Du dann loslegst, kannst Du das entweder als klassische Web-Application tun, die den Browser ausschließlich zur Präsentation verwendet und bei der Logik und Datenhaltung auf dem Server liegen. Du hast dann HTML und CSS auf dem Client, vielleicht eine Prise JavaScript (je weniger, desto besser). Serverseitig hast Du eine Serversprache und eine Datenbank. Die preiswerte Lösung ist hier PHP oder Perl zusammen mit MySql. Alternativen gibt's noch reichlich, aber die Lernkurve ist dann steiler und länger. Dieser Weg ist nicht ganz so schick, aber mit deutlich weniger Lernaufwand realisierbar. Vor allem hast Du hier weniger Security-Probleme. Ein „dummer“ Client kann auch weniger Unsinn anrichten - natürlich muss der Server immer noch aufpassen, dass er keine gefälschten Requests untergeschoben bekommt, die Dinge tun wollen, die für den User gar nicht erlaubt sind.

Die Alternative ist die Single Page Application (SPA), bei der einmal eine HTML Seite mit viel JavaScript geladen wird und die Logik zwischen Browser und Server aufgeteilt wird. Wenn es eine „Einzel-User“ Anwendung sein soll, brauchst Du gar keinen Server, sondern kannst neuere JavaScript Features wie LocalStorage verwenden und alles im Browser programmieren. In einer Multi-User Anwendung brauchst Du einen Server und eine Datenbank und musst dann den Code zwischen Client und Server geeignet verteilen. Der Client kümmert sich um die Präsentation und Eingabevalidierung, der Server immer noch um Logik und Datenhaltung, und er muss hier genauso aufpassen, dass der Client keine betrügerischen Services aufrufen will. Diese Technik ist deutlich aufwändiger und erfordert mehr Fachwissen. Ich würde sie Dir nicht empfehlen.

Rolf

--
sumpsi - posui - clusi
0 83

Einstieg in eine Webapp-Entwicklung

Struktur
  • datenbank
  • software
  1. -1
    pl
    1. 0
      dedlfix
      1. -1
        pl
        1. 0
          dedlfix
          1. 0
            pl
            1. 0
              dedlfix
              1. -1
                pl
                1. 0
                  dedlfix
                  1. -1
                    pl
                    1. 0
                      dedlfix
                      1. 0
                        pl
                        1. 0
                          dedlfix
                      2. 0
                        m.
                        1. 0
                          marctrix
                          1. 0
                            m.
  2. 0
    Regina Schaukrug
    1. 0
      pl
  3. 0
    JürgenB
    1. 0
      TS
      • datenbank
      • datenschutz
      • software
      1. 0
        JürgenB
        1. 0
          pl
          1. 0
            TS
            1. 0
              pl
              1. 0
                TS
                • datenbank
                • geschichte
                • software
                1. 0
                  pl
                  1. 0
                    TS
                    1. 0
                      pl
            2. 1
              marctrix
              1. 1
                TS
                • humor
                • menschelei
              2. 0
                marctrix
                • datenbank
                • menschelei
    2. 0
      pl
      1. 0
        JürgenB
        1. 0
          pl
      2. 0
        m.
  4. 3
    dedlfix
    1. -1
      pl
  5. 2
    Rolf B
    1. 0
      TS
      • meinung
      • projekt
      • sicherheit
    2. 0
      pl
      1. 0
        Rolf B
        1. 0
          pl
    3. 0
      Struktur
      1. 0
        dedlfix
      2. 0
        m.
        1. 0
          Rolf B
          1. 0
            m.
      3. 0
        pl
        1. 2

          Software für Schulen (war: Einstieg in eine Webapp-Entwicklung)

          Matthias Scharwies
          • bildung
          • datenbank
          • software
          1. 0
            pl
  6. 0
    Meowsalot
  7. 0
    m.
    1. 0
      Meowsalot
      1. 0
        m.
      2. 0
        Klaus Mennward
        1. 0
          m.
          1. 0
            Klaus Mennward
            1. 0
              Meowsalot
              1. 0
                marctrix
              2. 0
                Klaus Mennward
                1. 0
                  Christian Kruse
            2. 0
              m.
              1. 0
                marctrix
  8. 0
    marctrix
    1. 0
      Klaus Mennward
      1. 0
        Meowsalot
        1. 0
          marctrix
          1. 0
            Meowsalot
            1. 1
              marctrix
              1. 0
                JürgenB
                1. 0
                  marctrix
                2. 0
                  beatovich
              2. 0
                marctrix
              3. 0
                Meowsalot
                1. 1
                  marctrix
                  1. 0
                    marctrix
                    • software
                  2. 0
                    Rolf B
                    1. 0
                      marctrix
    2. 0
      m.
      1. 0
        Meowsalot
        1. 0
          m.
          1. 0
            marctrix
      2. 0
        marctrix