Inhaltsverzeichnis

Hier erfährst du alle wichtigen Sachen rund um unsere Vorlesung, was du wissen musst, bevor es los geht.

Kompetenzziele der Vorlesung

Sachkompetenz

Welches neue Wissen eigne ich mir an?

Siehe nächste Folie 😏

Selbstkompetenz

Was kann ich damit wirklich machen?

Übergreifende Handlungskompetenz

Wie kann ich mich damit in die Gesellschaft integrieren?

Theorieinhalte der Vorlesung

3. Semester: Webprogrammierung

Von der Erstellung der ersten Webseite bis zur eigenen Browser App und Client/Server-Webanwendung mit asynchronem Datenaustausch

  • Grundlagen des Webs
  • Webdesign mit HTML und CSS
  • Responsive Webdesign
  • Entwicklung von Browser Apps mit JavaScript
  • Das HTTP-Übertragunsprotokoll im Detail
  • Webserver-Programmierung mit Java
4. Semester: Verteilte Systeme

Konzeptionelle Vertiefung der Netzwerkprogrammierung im weiteren Sinne: Von datenbankgestützten Webanwendungen bis Internet of Things und alles dazwischen

  • Architekturmuster für verteilte Anwendungen
  • Webbassierte Datenbankanwendungen mit Jakarta EE
  • Asynchrone Kommunikation zwischen Server und Browser mit AJAX
  • Entfernte Methodenaufrufe mit SOAP- und REST-Webservices
  • Asynchrone Message Broker am Beispiel von MQTT

Vorausgesetztes Wissen

Folgendes Wissen aus den bisherigen Semestern wird für diese Vorlesung als bekannt vorausgesetzt. Wenn du etwas nicht mehr genau wießt, wiederhole es möglichst bald!

Java-Grundlagen

Klasse, Attribut, Methode, Instanz Sichtbarkeit, Verdecken, Syntax, public, private, protected, static, package private, const, Vererbung, Polymorphie, Interface, Überladen, Überschreiben, Atomare Typen, Typkonvertierung, Zugriffsrechte, Implementierung, Innere Klassen, Anonyme Klassen, abstract, Referenz, Laufzeitfehler, Ausnahme, Throwable, Exception, Runtime Error, Syntaxfehler, Logische Fehler, Compiler, *.java vs. *.class-Datei, Paket inkl. Verzeichnisstruktur

Fortgeschrittene Themen

Datenstrom, Text, Binär, Zeichensatz, Reader/Writer, Input/Output- Stream, Runnable, Thread, Dämon-Thread, Thread-Erzeugung, Synchronisation, Nebenläufigkeit, Semaphor, Monitor, synchronized, Erzeuer/Verbraucher-Problem, Lost Update-Problem, Deadlock, Livelock, die speisenden Philosophen

Netzwerke und Internet

Kommunikation im Internet, OSI-Schichtenmodell, MAC-Adresse, IP-Adresse, IPv4, IPv6, TCP, UDP, Portnummer, Socket, DNS, Domain Name, Protokoll, Web Browser, E-Mail Client

Auf welcher Seite der Macht stehst du?

Die böse Seite der Macht: Die Betriebswirtschaft
Am Ende gewinnt zum Glück immer das Gute: Die Informatik

Benötigte Software

Clientseitige Webentwicklung

Github Atom, einer der besten Webeditoren
git für die Versionsverwaltung
node.js und npm als Buildwerkzeuge

Serverseitige Webentwicklung

Netbeans IDE für die Java-Entwicklung
Glassfish Applikationsserver

Didaktisches Modell der Vorlesung

Vorlesungsunterlagen in Moodle

Prüfungsform der Vorlesung

Zuerst die gute Nachricht: Es gibt keine Klausur. 😅
Dann die Ernüchterung: Trotzdem gibt es eine Note. 😰

Zusammensetzung des Portfolios

I/G P/S Artefakt Schwierigkeit Abgabefrist Gewichtung
I S Einleitungsbericht Beurteilen Ende der zweiten Vorlesungswoche 3
I S Lernkontrollen und Feedbacks Erinnern Vor der jeweiligen Vorlesung 4
G P Fachkonzept der Webanwendung Analysieren, Beurteilen Ende der ersten Realisierungswoche 3
G P Quellcode der Webanwendung Anwenden Eine Woche nach der letzten Vorlesung 5
I P Commit-Nachrichten aus git Verstehen Eine Woche nach der letzten Vorlesung 5
G P Testdokumentation der Webanwendung Analysieren Eine Woche nach der letzten Vorlesung 2
I S Onlinetest während der letzten Vorlesung Anwenden, Analysieren, Beurteilen Ende der Vorlesungsstunde 5
I S Reflexionsbericht Beurteilen Ende der letzten Klausurwoche 3

I/G: I = Individualleitung, G = Gruppenleistung
P/S: P = Programmierprojekt, S = Studieninhalte
Schwierigkeit: Erinnern < Verstehen < Anwenden < Analysieren < Beurteilen

Berechnung der Endnote

Σ (Einzelnote × Gewichtung)
Σ (Gewichtung)

Literaturhinweise

Rechtshinweise

Creative Commons Namensnennung 4.0 International

§