Modulbeschreibung

Grundlagen objektorientierte Programmierung

Kurzzeichen:
M_winf.OOPR
Unterrichtssprache:
Deutsch
ECTS-Credits:
6
Arbeitsaufwand (h):
180
Leitidee:

Die Absolventinnen und Absolventen sehen sich heute einem sehr komplexen technischen Umfeld des Software-Engineering ausgesetzt. Um in Projekten in der Rolle als Wirtschaftsinformatiker kompetent mitzuarbeiten, müssen sie einen vertieften Einblick in die heutige Software-Entwicklung erhalten.


Die objektorientierte Programmierung (OOP) ist weit verbreitet. Eine solide Basis anhand der Programmiersprache Java gibt den Absolventinnen und Absolventen die Kompetenz, die Konzepte und Prinzipien der Objektorientierung (OO) in unterschiedlichen Kontexten gewinnbringend anzuwenden oder sich als Software-Engineer weiterzuentwicklen.

Modulverantwortung:
Bekiri Valmir
Lehrpersonen:
Bekiri Valmir
Standort (angeboten):
Rapperswil-Jona, St. Gallen (Standard)
Zusätzliche Eingangskompetenzen:

Gute Mittelschulkenntnisse der theoretischen Informatik
Referenzliteratur: Steyer, R. (2018). ECDL Computing. Herdt Verlag

Modultyp:
Besuchspflichtmodul für Wirtschaftsinformatik BB STD_23(Empfohlenes Semester: 2 | Niveau B: Basic level course)Kategorie:Assessmentmodule (ASS_Mod_WI)
Besuchspflichtmodul für Wirtschaftsinformatik VZ STD_23(Empfohlenes Semester: 2 | Niveau B: Basic level course)Kategorie:Assessmentmodule (ASS_Mod_WI)
Bemerkungen:

Workload[h]

Kontaktstudium: 52

Begleitetes Selbststudium: 8

Unbegleitetes Selbststudium: 120

Modulbewertung:
Note von 1 - 6

Leistungsnachweise und deren Gewichtung

Modulschlussprüfung:
Schriftliche Prüfung, 120 Minuten
Während der Unterrichtsphase:
Bewertungsart:
Note von 1 - 6
Gewichtung:

Modulschlussprüfung von 120 Minuten entscheidet über die Zuteilung der 6 ECTS Punkte

Bemerkungen:

Modulschlussprüfung von 120 Minuten entscheidet über die Zuteilung der 6 ECTS Punkte
Erlaubte Hilfsmittel: Eigenes Notebook (gesteuert durch SafeExamBrowser, CAMPLA oder ähnliche Software) mit dem im Unterricht verwendeten IDE (z.B. Eclipse Java Entwicklungsumgebung) ohne zusätzliche Plugins oder Hilfsprogrammen, Open Book (nur schriftliche lokal vorhandene Literatur/Notizen, kein Internet!)

Inhalte

Angestrebte Lernergebnisse (Abschlusskompetenzen):

Fachkompetenzen:

Die Teilnehmenden können:

  • Grundlegende Begriffe der Algorithmen, Komplexität und Datenstrukturen darlegen.
  • kleinere Programmieraufgaben analysieren und eine Lösung entwerfen.
  • Lösungsentwürfe mit der OOP Java umsetzen.

 

Methodenkompetenzen:

Die Teilnehmenden können:

  • Prinzipien der OO verstehen und in unterschiedliche Anwendungskontexte übertragen.
  • OO-Modellierung mittels des UML (Unified Modeling Language) Klassendiagramm verstehen.
  • Programmieraufgabenstellungen in methodisch korrekten Schritten lösen.
  • Programmabläufe über Struktogramme und Ablaufdiagramme visualisieren.

 

Selbstkompetenzen:

Die Teilnehmenden können:

  • Problemstellungen systematisch angehen und beharrlich auf eine Lösung hinarbeiten.
  • Wissenslücken selbstständig mit den zur Verfügung stehenden Informationsressourcen schliessen.

 

Sozialkompetenzen:

Die Teilnehmenden können:

  • wird in diesem Modul nicht adressiert
Modul- und Lerninhalt:

Themen-/Lernblock I: Einführung in Informatik, Programmierung und die OOP

  • Algorithmische Grundkonzepte
  • Beispiele für Algorithmen und Bausteine für Algorithmen
  • Programmiersprache Java
  • Objekte und Klassen, UML-Modellierung
  • Klassendefinition, Instanzvariablen, Konstruktor, Methoden, Signatur, Schnittstelle
  • Primitive Typen, Objekttypen, Datenstrukturen
  • Kontrollstrukturen: Auswahlanweisungen, Aussagenlogik, Operatoren
  • Objektinteraktion, Methodenaufrufe

 

Themen-/Lernblock II: Objektsammlungen, Bibliotheken, Klassenentwurf

  • Objektsammlungen (Collections und Maps)
  • Kontrollstrukturen: Schleifen (Iteration)
  • Iterator-Objekt
  • Sammlungen fester Grösse (Array)
  • Java Bibliotheksklassen
  • Debugger
  • Aufzählungsklassen
  • OO-Entwurfsprinzipien
  • Klassenentwurf

 

Themen-/Lernblock III: Entwurf, Vererbung, Anwendung

  • Software testen
  • Vererbung, statische/dynamische Typen, Multiple Vererbung, Super-Typen
  • Abstrakte Klassen
  • Interface
  • Grundzüge von grafischen Benutzungsoberflächen
  • Fehlerbehandlung

 

Themen-/Lernblock IV: Anwendung Algorithmen und Datenstrukturen

  • Entwurf von Algorithmen und Algorithmenmuster
  • Komplexität
  • Ausgewählte Algorithmen
Lehr- und Lernmethoden:

Lehrvideos, Lehrgespräch, begleitete Übungs-/Programmierarbeiten

Lehrmittel/-materialien:

Weiterführende Literatur:

  • Riesen, K (2020): Java in 14 Wochen: Ein Lehrbuch für Studierende der Wirtschaftsinformatik(1. Auflage). Wiesbaden: Springer Vieweg
  • Saake, G.; Sattler, K-U. (2020): Algorithmen und Datenstrukturen, Eine Einführung mit Java (6.Auflage). dpunkt.verlag
  • Ullenboom, C. (2021): Java ist auch eine Insel. Einführung, Ausbildung, Praxis (16. Auflage). Bonn: Rheinwerk
  • Herold, Helmut et al (2017): Grundlagen der Informatik. 3., aktualisierte Auflage. Hallbergmoos: Pearson.
  • Riesen, K (2020): Java in 14 Wochen: Ein Lehrbuch für Studierende der Wirtschaftsinformatik (1. Auflage). Wiesbaden: Springer Vieweg
Bemerkungen:

Modulschlussprüfung von 120 Minuten entscheidet über die Zuteilung der 6 ECTS Punkte
Erlaubte Hilfsmittel: Eigenes Notebook (gesteuert durch SafeExamBrowser, CAMPLA oder ähnliche Software) mit dem im Unterricht verwendeten IDE (z.B. Eclipse Java Entwicklungsumgebung) ohne zusätzliche Plugins oder Hilfsprogrammen, Open Book (nur schriftliche lokal vorhandene Literatur/Notizen, kein Internet!)