WEBT HSLU Theorie

Theorie Modul WEBT HSLU

Theorie Modul WEBT HSLU


C. L.
Diese Lernkarten decken fortgeschrittene Webtechnologien und -konzepte auf Universitätsniveau ab. Sie konzentrieren sich auf HTML, JavaScript, und XML, sowie auf Frameworks wie Bulma und jQuery. Die Karteikarten behandeln auch Themen wie AJAX, Geolocation API, und Web Storage, die für die Entwicklung mobiler und web-basierter Anwendungen essenziell sind. Diese Lernkarten sind ideal für Studierende und Entwickler, die ihre Fähigkeiten in der Webentwicklung vertiefen und moderne Technologien effektiv nutzen möchten.
Karten
82
Lernende
10
Sprache
Deutsch
Kategorie
Informatik
Stufe
Universität
Erstellt / Aktualisiert
24.01.2020 / 26.01.2020

Lernkarten

Vorteile Client-side scripting

- Usability (Webseite kann ohne Serverkommunikation modifiziert werden; schnelleres UI)
- Effizienz: Keine Serverkommunikation möglich
- Ereignis-gesteuert: Kann auf Useraktionen, wie Klicks, reagieren

JQuery Selektoren

  • $("p") wählt ALLE <p> Elemente aus
  • $(".intro") wählt Elemente mit class="intro“ aus
  • $("#demo") wählt Element mit id="demo

Serverseitige Dynamik BSP PHP

Typischerweise: Verarbeitung von Formulardaten
Ablauf der Kommunikation zwischen Client und Server:
 

Statische Webseiten

 

  • Einfache statische Webauftritte, z.B. Webseite einer Person.
  • Meist mit Applets programmiert.
  • Java Programm, dass sich auf einem Webserver befindet.
  • Wenn mit Applet; Applet wird herunter geladen und im Browser ausgeführt.

Fazit: Interessant bei sich selten ändernden Daten und vielen Zugriffen.

PHP Array

Beispiele für dynamische Webseiten

- Amazon.de (DB-orientierte Web-Applikation)
- Xignite.com (Webservices)

HTML Aufbau

<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<h1></h1>
<p></p>
</body>
</html>

Serverseitige vs. Clientseitige Dynamik

Ziel statische Webseiten

Anwendung die Benutzer-System-Interaktion auch über das Web ermöglicht.

CSS Box-Modell

margin = Rand {margin:10px}
padding = Polsterung {padding:10px}
border = Rahmen {border-width:10px; border-style:solid}

XML (EXtensible Markup Language)

 

  • Grundlegendes

  • XML dient der Strukturierung von Daten
  • XML Markups
    • sind frei definierbar
    • bestehen immer aus einem Start-Tag und einem End-Tag

<marke></marke>

  • dürfen verschachtelt werden, z.B.

<m1><m2></m2></m1> nicht jedoch über Kreuz

  • -> Wohlgeformtheit eines Dokuments
  • XML Element: Text von Starttag bis Endtag einschliesslich der Unterstrukturen
    • z.B. <m1>element</m1>
  • XML Attribut: XML Elemente können durch Attribute erweitert werden
    • z.B. <m1 attribute1=“wert“>element</m1>

Frameworks

 

  • Warum Frameworks?

  • Sollen die Entwicklung eine Software vereinfachen, d.h. weniger Programmieraufwand
    generieren
     

Aufbau XML Dokument

Attribut Class CSS

p.normal {text-align:justify}
in HTML: <p class="normal">Text</p>

Verkettungsoperator

CSS Syntax

selector{prop1:value1; prop2:value2...}
body{color:black}

Geolocation API

  • Möglichkeiten

 

  • Anzeige der aktuellen Position eines Benutzers
  • Anzeige weiterer Standorte (z.B. Sehenswürdigkeit)
  • Anzeigen einer Route (z.B. vom eigenen Standort zu einer Sehenswürdigkeit)
  • Anzeigen von Entfernungen
  • Auswahl Kartenanzeige (z.B. Satellitenkarte, Strassenkarte)
  • Unterschieden werden:
    • Statische Karten
    • Dynamische Karten

 

Referenz auf GUI-Elemente JavaScript

Javascript Rolle in Webprogrammierung?

  • Läuft auf Clientseite ab nachdem die Seite vom Server geladen wurde.
  • Reagiert auf User-Aktionen

Attribut id CSS

p#navi{color:red}
<p id="navi">Text</p>

Id Attribute sind einziartig.

CSS-Framework BULMA

  • 100% Responsive: Bulma ist mobil- & Desktop-freundlich.
  • Leicht zu erlernen: Gute dokumentierte Beispiele.
  • Einfache Syntax: Bulma stellt sicher, dass man den minimal erforderlichen HTML-Code verwendet, sodass der Code einfach zu lesen und zu schreiben ist.
  • Anpassbar: Man kann sein eigenes Branding auf Bulma anwenden.
  • Kein JavaScript: Da Bulma CSS-only ist, lässt es sich nahtlos in jedes Java-Script-Framework integrieren (Angular, VueJS, React, …)

XPath

  • XPath wird verwendet, um bestimmte Teile eines XMLDokumentes auszulesen
  • Es werden diejenigen XML-Knoten durch einen XPathAusdruck ausgewählt, die am Ende eines spezifizierten Pfades vom aktuellen Knoten liegen
  • Die Pfadelemente bestehen normalerweise aus Tagnamen
  • Pfadelemente werden separiert durch «/»
  • Ein Pfad kann entweder absolut
    • (Kennzeichnung durch vorangestelltes «/»): Aktueller Knoten ist Wurzelelement
  • oder relativ sein
    • aktueller Knoten muss explizit angegeben werden

Einsatzgebiete XML
 

  • Finanzdaten austauschen
  • Informationen zwischen Druckereien und ihren Kunden austauschen
  • Immobilieninformationen austauschen
  • Geographische Informationen speichern und austauschen
  • Stellenbeschreibungen und Bewerbungen austauschen

Navigation

  • Es werden Routingservices angeboten -> funktionieren wie die Positionsermittlung
  • Aufruf über DirectionService

XML-Schema und XML-Dokumente

Aktualisierung von Geodaten

  • Periodisch die aktuellen Geokoordinaten einholen, mit Funktion watchPosition() (Bei einer Navigation nützlich)
     

Nachteile statische Webseiten

- Begrenzte Suchfunktionalität
- Aktualisierungs- und Konsistenzprobleme
- Keine Anwendungsfunktionalität (z.B. Datenbanksuche)

CSS Modifikatoren

  • Modifikatoren sind zusätzliche CSS-Klassen, die man hinzufügen kann, um das Aussehen von HTML
    Elementen zu ändern.
    • Beispiel: <button> Element
  • Hinzufügen eines Modifikators --> Änderung der Darstellung

Knoten-Objekte

  • Attribut innerHTML
  • Methode setAttribute(name,wert)
  • Methode getAttribute(name)

Serverseitige Technologien PHP & AJAX

Verwendung von jQuery - Fall 1: HTML Tag mit Attribut
 

Verwendung von jQuery - Fall 2: Liste von HTML Tags
 

BULMA Helfer-Klassen

Grundlegende Adressierungskonzepte

  • Domain Name Service

 

  •  

BULMA Komponenten

  • Bulma wird mit Komponenten ausgeliefert, bei denen es sich um vorgestylte Codeabschnitte handelt, die einem bestimmten Zweck dienen.
  • Bei Komponenten muss man einer bestimmten HTML-Struktur folgen.
     

Formen von mobile Applikationen

  • Web-basierte mobile Applikationen

  • erstellt mit klassischen Web-Technologien: HTML, CSS, JavaScript
  • benötigen zur Ausführung einen Browser
  • verfügbar auf allen Plattformen

Anwendungsbereiche Javascript

- Interaktive HTML-Seiten
- Zugriff auf HTML-Dokument. Bsp. auf Inhalte von Formluar bei Validierung von Formularen (Eingabefehlern)
- Realisierung von Animationen. Bsp. Ein-/Ausblenden von Elementen

Formen von mobile Applikationen

  • Hybride mobile Applikationen

  • Kombination aus nativer und Web Applikation

Java vs. JavaScript Eigenschaften:
- Sprachart:
- Typisierung:
- Kompelierung durch:
- Ausführung:
- Main-Methode:
- Startup-Code:
- Client/Server:

Kartendarstellung

  • center
  • zoom (Werte 0...21; 21 grösster zoom)
  • size
  • Maptype (roadmap, satellite, hybrid)
  • Marker (mit eigenen Parameter, z.B. Bild für Icon)

Lernen